URL Encoder/Decoder
Encode and decode URLs with multiple modes and comprehensive analysis
Input & Settings
Output
Processed URL will appear here
Analysis & Info
Processing statistics will appear here
Common Use Cases
Basic URL Encoding
Encode spaces and special characters in URLs.
Original: https://site.com/search?q=hello world
Encoded: https://site.com/search?q=hello%20worldPath Parameters
Safely encode path segments with special characters.
Original: /users/john doe/profile
Encoded: /users/john%20doe/profileDetails
This tool helps you convert special characters into URL-safe format and vice versa. It's particularly useful when working with URLs containing special characters, spaces, or non-ASCII characters like Turkish letters (ğ, ş, ı, etc.). URL encoding replaces unsafe ASCII characters with a '%' followed by two hexadecimal digits.
More Examples
Encoding Special Characters in URLs
Original: https://example.com/search?q=mavi kalem&category=kırtasiye
Encoded: https://example.com/search?q=mavi%20kalem&category=k%C4%B1rtasiyeSpaces are converted to %20, and Turkish characters like 'ı' are encoded to their UTF-8 representation.
Encoding Turkish Domain Names
Original: https://örnek.com/ürünler
Encoded: https://%C3%B6rnek.com/%C3%BCr%C3%BCnlerTurkish characters in domain names and paths are encoded: 'ö' becomes %C3%B6, 'ü' becomes %C3%BC
Encoding Email Addresses
Original: örnek@şirket.com
Encoded: %C3%B6rnek@%C5%9Firket.comEmail addresses with special characters can be encoded for use in URLs or HTML attributes.
Encoding Query Parameters
Original: product=Beyaz Eşya&price=1000₺&filter=çamaşır makinesi
Encoded: product=Beyaz%20E%C5%9Fya&price=1000%E2%82%BA&filter=%C3%A7ama%C5%9F%C4%B1r%20makinesiQuery parameters often need encoding to handle spaces, currency symbols, and special characters correctly.
Examples
Component-encode a query value
name=Ada Lovelace&role=admin!name%3DAda%20Lovelace%26role%3Dadmin!`encodeURIComponent` percent-encodes reserved characters like `=` and `&`, and spaces become `%20`, so the value is safe to drop into a query string. A few characters — `!`, `'`, `(`, `)`, `*` — are left as-is by the spec.
Full-URL encode — preserves the URL's structure
https://example.com/path with spaces?q=çhttps://example.com/path%20with%20spaces?q=%C3%A7`encodeURI` leaves reserved delimiters (`:`, `/`, `?`, `=`, `&`) intact so the URL still parses, while encoding spaces and non-ASCII bytes.
Decode percent-encoded text — including non-ASCII
%E4%B8%AD%E6%96%87%20%2B%20signs中文 + signsEach `%XX` triple is one byte of UTF-8; reassembled, the percent-encoded bytes decode back to the original characters.
About this tool
URLs may only contain a limited set of ASCII characters, so anything else — spaces, punctuation with special meaning, or non-ASCII letters like ğ, ş and ı — must be percent-encoded, replacing each unsafe byte with a % followed by two hexadecimal digits. Getting this right matters for query strings, path segments, redirect targets and form submissions, where an unencoded & or = can silently corrupt the request.
This tool encodes text into URL-safe form and decodes percent-encoded strings back to readable text, with modes for full-component vs. whole-URL encoding, auto-detection of which operation you need, and file support for bulk work. All conversion is client-side, so sensitive URLs and tokens never leave your browser.
How to use
Enter your text or URL
Paste the string to encode, or a percent-encoded string to decode.
Choose the mode
Pick component encoding (for a single query value) or full-URL encoding, or let auto-detect choose.
Convert
The tool encodes or decodes instantly, handling special characters and non-ASCII text correctly.
Copy the result
Copy the URL-safe or decoded output for use in your request or code.
Use cases
Building safe query strings
Concatenate `?` + `encodeURIComponent(key) + "=" + encodeURIComponent(value)` and you'll never have an unescaped `&` or `=` quietly add a second parameter.
Passing non-ASCII text in URLs
Email subjects, slugs with diacritics, or any UTF-8 string can ride in a URL if you percent-encode the bytes first.
Decoding captured URLs
When a tap or redirect gives you a `%`-heavy URL, decode the parameters to read what was actually sent — useful for debugging redirect chains and webhook URLs.
Sending form payloads in `application/x-www-form-urlencoded`
Both keys and values go through `encodeURIComponent` before joining with `=` and `&`, exactly as a browser serializes an HTML form submission.
Encoding modes
| Mode | When to use |
|---|---|
| Component (encodeURIComponent) | Encoding a single query value or path segment — encodes & = ? / # |
| Full URL (encodeURI) | Encoding a whole URL while preserving its structural characters |
| Decode | Turning %XX sequences back into readable characters |
| Auto-detect | Guesses encode vs. decode from the input |
All conversion runs locally — nothing is uploaded.
Common mistakes
Mistake:Using `encodeURI` on a query value.
Fix:`encodeURI` is designed for whole URLs and leaves `&`, `=`, `?`, `+`, and `#` untouched — using it on a value lets those characters break your query string. Use `encodeURIComponent` for values.
Mistake:Double-encoding
Fix:Encoding an already-encoded string turns `%20` into `%2520`. Encode once, as close to the wire as possible, and never touch the value in between.
Mistake:Treating `+` as a space.
Fix:`+` only means space in the `application/x-www-form-urlencoded` body. In a path or query string it is literal, and decoding it as space corrupts the value.
Mistake:Forgetting to encode `#` and `?` in dynamic URL fragments.
Fix:An unescaped `#` or `?` inside a path segment is interpreted as the start of a fragment or query — percent-encode them (or use `encodeURIComponent`) when the value isn't actually one.
Frequently asked questions
Related guides
URL Encoding Explained: A Practical Guide to Percent-Encoding
Why URLs can't contain spaces or special characters, how percent-encoding works, and how to avoid the classic pitfalls — double-encoding, + vs %20, and encodeURI vs encodeURIComponent.
Database Connection Strings, Demystified
The anatomy of PostgreSQL, MySQL, MongoDB, Redis and SQLite connection strings — and the URL-encoding gotcha that breaks them.
References & standards
Related tools
Base64 Toolbox
Professional Base64 workspace for text, files and images with Base64URL, MIME, Data URI, strict validation, image preview and ready-to-use snippets.
CSV to Chart
Paste or upload CSV data and generate bar, line, pie, or doughnut charts. Export as PNG.
CSV to JSON Converter
Paste CSV data and convert it to pretty-printed JSON instantly — supports custom delimiters, header row toggling, and value trimming.
cURL to Code Converter
Convert cURL commands to code snippets in multiple languages. Parse cURL and generate JavaScript, Python, PHP, and more.
Diff Checker
Compare two text blocks and highlight differences side-by-side
GraphQL Formatter & Validator
Format, validate and beautify GraphQL queries with syntax highlighting