TL;DR — paste, pick a mode, copy the encoded or decoded result
This free URL encoder/decoder supports URI, URIComponent, Query Value (+), and RFC 3986 modes. Use Batch lines for lists, preserve slashes when needed, normalize percent case, inspect UTF‑8 bytes, and view a quick URL breakdown with query parameters. Everything runs locally in your browser.
URL Encoder / Decoder — multi‑mode (URI, URIComponent, + for spaces, RFC 3986) with byte inspector & query table
Need to decode a URL full of %20
, %2F
, and %26
? Or make a value safe for a query string without breaking the link? This tool gives you accurate, standards‑compliant percent‑encoding and decoding with four practical modes. Choose URI for whole links, URIComponent for individual parts, Query Value (+) for HTML form style spaces, or RFC 3986 for strict, predictable component encoding. As you type, the opposite pane updates instantly (you can turn auto‑sync off if you prefer manual control).
Beyond the basics, there’s power when you need it: a Batch lines switch to process lists line‑by‑line, a Keep “/” option to preserve slashes in component encodes, and Normalized output that uppercases hex digits in %XX
sequences for cleaner diffs and reviews. The Byte / UTF‑8 inspector reveals raw bytes and percent forms—a quick way to verify multibyte characters. If you paste a full link into the Decoded pane, the app shows a URL breakdown (protocol, host, path, query, hash) and a query parameter table so you can see decoded values alongside their encoded forms.
It’s all client‑side for speed and privacy—no uploads, no accounts. One‑click Copy sits on both panes, and handy Swap/Clear buttons streamline repetitive tasks. Whether you’re building query strings, debugging redirects, preparing HTTP links, or cleaning web‑form input, this is the compact utility you’ll keep pinned in your toolbox.
How to use the URL Encoder / Decoder
- Pick a mode: URI for whole URLs; URIComponent for parts; Query Value (+) for form values; RFC 3986 for strict component encoding.
- Paste or type: Use the Decoded pane to encode, or the Encoded pane to decode. With Auto‑sync on, the opposite side updates instantly.
- Adjust options: Turn on Batch lines for lists, enable Keep “/” to preserve slashes, and check the Normalized result for uppercase percent sequences.
- Inspect details (optional): Expand the Byte / UTF‑8 inspector to see raw bytes and percent forms. If a full URL is present, review its breakdown and the query parameter table.
- Copy or swap: Copy with one click, Swap sides to invert direction, or Clear both panes to start fresh.
Key features
- Encode/decode with four modes: URI, URIComponent, Query Value (+), RFC 3986
- Batch lines to process each line separately
- Keep “/” unencoded for readable paths when needed
- Percent normalization (uppercase %XX) for consistent diffs
- UTF‑8 byte inspector with percent‑form preview
- Automatic URL breakdown: protocol, host, port, path, query, hash
- Query parameter table with decoded and encoded views
- Swap & Clear utilities plus one‑click Copy on both panes
- Instant, client‑side operation — private and fast
Tips
- Use URI for entire links; use URIComponent for parts like query values or path segments.
- Choose Query Value (+) when working with HTML form data (spaces as +).
- Turn on Batch lines to convert a list without touching formatting.
- “Keep /” is useful when encoding path segments but you still want slash separators.
- If decoding fails, look at the error index and the Normalized output to spot stray % or mixed encodings.
- Use the byte inspector to verify UTF‑8 boundaries for non‑ASCII characters.
Frequently asked questions
encodeURI vs encodeURIComponent — which should I pick?
/ ? & =
) intact. encodeURIComponent is for individual parts such as a query value or a path segment; it encodes separators so they cannot break the URL structure.When do spaces become + instead of %20?
+
. Standard percent‑encoding encodes spaces as %20
. Use Query Value (+) mode when you need the form behavior.What does RFC 3986 mode change?
~
unencoded and percent‑encodes characters like ! * ' ( )
. Many APIs prefer this predictable output.How does the Normalized output help?
%2f
→ %2F
), which makes diffs consistent and helps spot mixed or duplicated encodings.Can I inspect bytes for non‑ASCII characters?
Is any data uploaded?
Related tools
Base64 Encoder / Decoder · JSON Formatter · URL Parser
Last updated: Aug 25, 2025