Best SEO & Analytics Tools for No-Code Websites
Essential tools for tracking and improving your website search performance.
Encode or decode URLs instantly. Full-component mode, recursive decode, each-line batch, uppercase hex, smart paste, and a live URL breakdown panel with editable query params.
Encode or decode URLs instantly. Full-component mode, recursive decode, each-line batch, uppercase hex, smart paste, and a live URL breakdown panel with editable query params.
| Key | Value (decoded) |
|---|
URL encoding converts characters that are not allowed in a URL into a percent-encoded form - spaces become %20, ampersands become %26, and Unicode characters become their UTF-8 byte sequences prefixed with percent signs. This URL Encoder and Decoder handles both directions, covering query string encoding, component encoding, and full URL encoding.
Paste any string and the encoder outputs the percent-encoded form compliant with RFC 3986. Three encoding modes cover the most common scenarios: query string encoding replaces spaces with + signs (the format used in HTML form submissions and most search query parameters); component encoding replaces spaces and all reserved characters with percent sequences (for encoding individual URL segments); and full URL encoding leaves the URL structure intact while encoding only the characters that are illegal in any URL position.
The decoder accepts any percent-encoded string and converts it back to readable text. Useful when reading encoded URLs from server logs, debugging API requests where query parameters contain special characters, decoding OAuth redirect URIs, or inspecting encoded webhook payloads.
Common encoding scenarios: building query strings that include user-supplied search terms with spaces or punctuation; encoding file names or paths for use in URLs; encoding redirect_uri parameters for OAuth flows; and preparing API endpoints that include special characters like brackets (arrays in query strings) or colons (namespaced parameters).
Works with both ASCII and Unicode input - emoji, accented characters, Chinese, Arabic, and other non-Latin characters are encoded to their correct UTF-8 percent-encoded byte sequences.
Everything you need in one amazing tool
Switch between modes instantly. Smart paste auto-detects encoded text and switches mode.
Toggle between encodeURI (keeps URL structure intact) and encodeURIComponent (encodes everything).
Encode/decode every line independently, or recursively decode double-encoded strings (%2520 → space).
Auto-parses valid URLs into color-coded segments: Protocol, Host, Path, Query, Hash. Click any to copy.
View, add, edit, and delete individual key=value query params. Apply changes to rebuild the full URL.
Output %2F or %2f - toggle uppercase hex to match your codebase or API spec.
Get started in 4 easy steps
Paste a plain URL or encoded string. Smart paste auto-detects encoded input and switches to Decode mode.
Choose Full Component vs standard mode, toggle Each Line, Recursive, Uppercase Hex as needed.
If input is a valid URL, the breakdown panel appears - segments, query params table, copy buttons.
Copy the encoded/decoded output, edit query params and apply to rebuild the URL, or download as a file.
Stand out from the competition
Detects %XX patterns on paste and auto-switches to Decode mode. No manual mode guessing.
Color-coded anatomy shows exactly what each URL segment is. Click any part to copy instantly.
Edit query params in a table, then apply to rebuild the full URL. No manual string manipulation.
Handles double and triple-encoded URLs. Decodes %2520 all the way to a readable space.
Choose between encodeURI and encodeURIComponent - both RFC 3986 compliant encoding modes.
All encoding and decoding runs locally in your browser. Your URLs never leave your device.
See how others are using this tool
Encode query parameters before appending them to API endpoints. Safely handle spaces, ampersands, and non-ASCII characters in request URLs without breaking the structure.
Paste a percent-encoded URL from browser DevTools, Postman, or server logs and instantly decode it to a readable form. Understand exactly what data is being transmitted.
Use the Query Params Editor to add, edit, or remove individual key=value pairs visually, then apply to rebuild the full URL. No manual string construction needed.
Enable Recursive Decode to unwrap URLs encoded multiple times (e.g. %2520 → %20 → space). Handles up to 16 rounds - perfect for CDN or proxy-generated URLs.
Turn on Each-Line mode to encode or decode a list of values simultaneously - one per line. Ideal for bulk-encoding query values, slugs, or redirect targets.
Encode full URLs containing special characters or emojis before embedding them in emails, social posts, or HTML href attributes to ensure they open correctly everywhere.
Everything you need to know about URL Encoder/Decoder
URL encoding, also called percent encoding, converts characters that are not allowed or have special meaning in a URL into a safe format. Each unsafe character is replaced by a percent sign (%) followed by its two-digit hexadecimal ASCII code - for example, a space becomes %20, an ampersand becomes %26, and a euro sign becomes %E2%82%AC. This is required because URLs can only contain a defined set of ASCII characters. Without encoding, special characters like &, =, and ? would be misinterpreted as URL syntax rather than data.
encodeURI() is designed for encoding a complete URL. It leaves structural characters such as :, /, ?, &, =, @, and # untouched so the URL remains valid. Use it when you have a full URL and only want to clean up unsafe characters. encodeURIComponent() encodes everything except A-Z, a-z, 0-9, -, _, ., ~, and * - including structural characters. Use it for individual query parameter keys and values, path segments, or any user-supplied string being inserted into a URL. Our "Full Component" toggle switches between these two modes.
Double encoding happens when a URL-encoded string is encoded a second time. For example, a space first becomes %20, then encoding that again turns %20 into %2520. This can occur when URLs pass through proxies, CDNs, redirect handlers, or frameworks that encode values without checking whether they are already encoded. Recursive Decode unrolls each layer one round at a time - up to 16 rounds - until no further %XX sequences can be decoded. Enable it whenever you see patterns like %2520, %253A, or %2526 in your encoded strings.
When the input (in Encode mode) or the output (in Decode mode) is a valid, parseable URL, the Breakdown panel appears automatically below the text areas. It color-codes the URL into five segments: Protocol (blue), Host (green), Path (slate), Query string (orange), and Hash (purple). Clicking any segment copies its value to the clipboard. The Query Parameters table below lists every key=value pair in the query string as editable inputs. You can modify values, add new parameters with the Add Param button, or delete rows. Pressing Apply to Input rebuilds the complete URL and places it in the input field ready to encode.
Each-Line mode processes your input line by line instead of as a single string. This is useful when you have a list of values that each need to be independently encoded or decoded - for example, a list of search keywords, a list of paths, or a batch of redirect targets. Without this mode, newline characters themselves would be encoded, turning your multi-line input into a single mangled string. With it, the structure of your list is preserved and each line gets its own clean result.
By default, JavaScript's encodeURIComponent produces lowercase hex digits - for example %2f, %3a, %20. The Uppercase Hex toggle converts all hex pairs to uppercase: %2F, %3A, %20. Both forms are functionally identical according to RFC 3986, but some APIs, code style guides, or security scanners require uppercase. Toggle it on to match your codebase or API specification.
No data is sent anywhere. All encoding, decoding, and URL parsing runs entirely in your browser using the built-in JavaScript functions encodeURI, encodeURIComponent, decodeURIComponent, and the WHATWG URL API. Nothing leaves your device. This means it is completely safe to use with sensitive URLs, API keys in query strings, authentication tokens, or any confidential data that requires URL encoding. The tool also works fully offline once the page has loaded.
Use our free tools to perfect your content and design, then build your full website yourself. No code needed, no developers to hire, no waiting.