Percent-encode text for safe use in URLs, or decode URL-encoded strings back into readable text, right in your browser.
URL Encoder and Decoder converts text to and from percent-encoding, the format used to make text safe inside URLs. Switch to Encode to turn spaces, accents and special characters into percent codes like %20, or switch to Decode to turn an encoded string back into readable text. By default it encodes reserved characters such as slashes, question marks and ampersands, which is what you want for a single query value. Turn that option off to encode a whole URL while keeping its structure intact. Everything runs locally in your browser, so your data stays private.
Percent-encoding (also called URL encoding) exists because a URL can only safely contain a limited set of characters. Spaces, accented letters, emoji and reserved symbols like &, ?, / and # either have special meaning or are not allowed, so they are replaced with a % followed by the character's byte value in hexadecimal — a space becomes %20 and an ampersand becomes %26. Because the tool encodes text as UTF-8 first, any language or emoji round-trips correctly, and the two modes let you either escape a single query value completely or encode a whole link while keeping its structure readable.
Reviewed by the ToolBrainy Team · Runs entirely in your browser · Last updated July 2026
Choose Encode to turn plain text into a URL-safe string, or Decode to turn a percent-encoded string back into readable text. Preparing a value to drop into a link? Encode. Trying to read what a messy link actually says? Decode.
Type or paste your input — a search term, a full URL, a single query-string value, or an encoded string copied straight from a browser's address bar. The output updates as you type, so there is nothing to click.
When the output looks right, use Copy to grab it for your link, code or API call, or Download to save it as a text file. If a decode shows an error, check for a stray % that is not followed by two hex digits.
Encoding runs locally, your text is never uploaded.
Handles emoji and accents correctly with UTF-8.
Encode a single value or a whole URL.
No signup, no limits and no watermarks, ever.
Encode values for safe URL parameters.
Read what an encoded URL actually contains.
Fix broken parameters in API requests.
Encode names and search terms in links.
Encode campaign values for analytics links.
See how characters map to percent codes.
Yes. This tool is completely free with no signup, no limits and no watermarks.
With "Encode reserved characters" on, the tool uses component encoding, so characters like / ? & = and : are all percent-encoded. This is what you want for a single query value. Turn it off to encode a whole URL while keeping its structure, so those reserved characters stay readable.
Decoding expects valid percent-encoding. A stray % that is not followed by two hex digits, like a literal percent sign, will produce an error. Encode the text first, or fix the malformed sequence, and it will decode cleanly.
Yes. All encoding and decoding happens in your browser. Your text is never sent to or stored on any server.
Reserved characters (: / ? # [ ] @ ! $ & ' ( ) * + , ; =), spaces, and any non-ASCII character such as accented letters or emoji need encoding. Unreserved characters — letters, digits and - _ . ~ — are left as they are.
URL encoding only escapes the specific characters that are unsafe in a URL and leaves everything else readable. Base64 rewrites all data into a 64-character alphabet, which is more compact for binary but unreadable. Use URL encoding for links and query values; use Base64 for embedding binary data.
No. The URL Encoder runs entirely in your web browser, so there is nothing to download or install — just open the page and paste your text.
Yes to both. Once the page has loaded, encoding and decoding run in your browser, so it keeps working if your connection drops and behaves the same on a phone as on a desktop.