networkutils.org

Home / Developer Tools / URL Encode / Decode

URL Encode / Decode

Developer Tools

Percent-encode query strings and paths safely.

Run this tool: the interactive URL Encode / Decode loads here (requires JavaScript). Input: Text or URL — e.g. a b&c=1.

Description

URL Encode / Decode percent-encodes text so it can be safely embedded in a URL query string or path, and decodes percent-encoded strings back to plaintext.

Features

✓ Percent-encoding of reserved and unsafe characters
✓ Decoding of percent-encoded strings
✓ UTF-8 multibyte support
✓ Query-string safe output

How to Use

Enter the text or URL you want to encode (or a percent-encoded string you want to decode) and run the tool. The probe detects the direction from the input and returns the converted result.

Input: Text or URL — e.g. a b&c=1.

Understanding the Results

The output shows the percent-encoded string (when encoding) or the decoded plaintext (when decoding). Spaces become %20 (or + in form data), and reserved characters like &, =, ? and # are encoded so they are treated as literal data rather than URL structure.

Common Use Cases & Examples

→ Encode a query-string parameter value containing spaces or symbols.

→ Decode a percent-encoded value from a URL or log entry.

→ Safely embed arbitrary text in a URL path.

→ Convert between %20 and + space encodings for form data.

Frequently Asked Questions

What is the difference between %20 and + for spaces?

Both encode a space. %20 is valid anywhere in a URL; + means space only in the application/x-www-form-urlencoded body (form data). In a URL path or query string, prefer %20; use + only when producing form-encoded bodies.

Which characters must be percent-encoded?

Reserved characters that have structural meaning (& = ? # / :) and unsafe characters (space, <, >, ", {, }, |, \, ^, ~, [ ], `) should be encoded when used as literal data. Unreserved characters (A–Z a–z 0–9 - _ . ~) never need encoding.

Why did decoding my URL break it?

You likely decoded the whole URL, including its structural characters (& = ?), turning them into literal data. Decode only the individual parameter values, not the full URL, to preserve its structure.

About this tool

Maintained by
networkutils.org editorial team
Last updated
September 2026
Testing methodology
Developer tools run on the NetworkUtils.org server using Node.js standard libraries — crypto for hashes, Buffer for Base64, url for percent-encoding, and JSON.parse for validation. No third-party API is called and no input leaves the diagnostic pipeline.
Technical references
RFC 3986 — Uniform Resource Identifier (URI)