URL Encoder / Decoder

Percent-encode or decode URLs and query strings — component or full-URL mode. Free, in your browser.

Runs entirely in your browser — nothing is sent to a server.

How to use the URL Encoder / Decoder

  1. Choose mode. Pick encode or decode, and component vs full-URL scope.
  2. Paste your text. Enter the URL or query value.
  3. Copy the result. One-click copy the encoded or decoded output.

Free to use — premium coming soon

FREE
  • Encode & decode
  • Component & full-URL modes
  • 100% private
PREMIUM
  • Remove ads
  • Bulk encode/decode

About the URL Encoder / Decoder

The URL Encoder / Decoder converts text to and from percent-encoding, the format that lets arbitrary characters travel safely inside a web address. When a URL contains a space, an ampersand, a question mark, or a non-English letter, that character is replaced with a percent sign followed by its hexadecimal byte value (a space becomes %20, an ampersand becomes %26). Decoding reverses the process, turning %20 back into a space so you can read the original value. Paste a raw link or a single query value, choose encode or decode, and copy the clean result without hunting through documentation or writing a one-off script.

Reach for this tool whenever a value has to be placed inside a URL but might contain characters that the address bar treats as structure. Common cases include building a query string by hand, sharing a search link that contains spaces or symbols, embedding a redirect target as a parameter, debugging an API request that returns 400 errors, or reading a logged URL where everything has been escaped into %xx codes. It is equally handy for decoding a link someone sent you so you can see the real destination, and for confirming that a special character such as + or # was encoded the way the receiving server expects.

Under the hood the tool offers the two encoding modes JavaScript provides. The component mode (encodeURIComponent) escapes everything except letters, digits and the characters - _ . ! ~ * ' ( ), so it safely encodes the reserved characters / ? : @ & = + $ # that have structural meaning. Use it for individual query values and path segments. The full-URI mode (encodeURI) leaves those reserved characters intact so an already-complete address keeps its slashes and colons. Per RFC 3986 the only always-safe unencoded characters are A-Z, a-z, 0-9 and - . _ ~; both modes encode a space as %20.

Everything runs locally in your browser using the native encoding functions, so the text you paste is never uploaded to a server, stored, or logged. That makes the tool safe for links that contain access tokens, session IDs, internal hostnames, or personal data in query parameters. One accuracy note worth remembering: encoding a string that is already encoded double-escapes it (a % becomes %25), so decode first if you are unsure of the current state, and only encode raw, human-readable text once.

Frequently asked questions

What is the difference between encodeURIComponent and encodeURI?

encodeURIComponent encodes the reserved characters / ? : @ & = + $ #, making it correct for a single query value or path segment. encodeURI leaves those characters alone because it assumes you are encoding a complete, already-structured URL. Use component mode for pieces, full-URI mode for whole links.

Why is a space sometimes %20 and sometimes a plus sign?

Percent-encoding from the URI standard (RFC 3986) turns a space into %20, which works everywhere. The plus sign comes from HTML form encoding (application/x-www-form-urlencoded), where a space becomes +. Most servers accept both in a query string, but %20 is the more universally correct choice.

Which characters do I actually need to encode?

Only A-Z, a-z, 0-9 and the four characters - . _ ~ are always safe unencoded. Everything else, including spaces, accented letters, and reserved symbols like &, =, ?, # and /, should be percent-encoded when it appears inside a value rather than as URL structure.

My encoded text looks wrong with %25 everywhere. What happened?

That is double-encoding: a string that was already encoded got encoded again, so each existing % turned into %25. Run it through the decoder once (or twice if needed) to recover the original, then encode the raw text only a single time.

Is it safe to paste a URL with a token or private data?

Yes. Encoding and decoding happen entirely in your browser with native JavaScript functions, so nothing is sent to a server or stored. You can safely process links that contain access tokens, IDs, or personal information.

From our blog

Lorem Ipsum Explained: When Placeholder Text Helps and When It Hurts

By the Super Simple Digital Tools Team · Updated June 2026

Lorem ipsum is the most widely used filler text in the world, yet almost no one knows it is a 2,000-year-old accident. The passage comes from Cicero's 45 BC treatise De Finibus Bonorum et Malorum, a discussion of pleasure and pain. An unknown typesetter in the 1500s is believed to have scrambled it into a type specimen, and it has served as standard dummy text ever since. The opening "lorem" is actually the back half of "dolorem," meaning pain, which is why the first word is not even complete.

The reason it endures is practical. Good placeholder text should imitate the texture of real language, its mix of short and long words, its spacing, and its letter frequencies, without forming sentences anyone wants to read. Lorem ipsum hits that balance. A reviewer glancing at a mockup sees believable body copy and judges the font, line height, and column width, instead of stopping to rewrite a headline. Repeating a single word or pasting an article would both break that spell in different ways.

The convenience is also the trap. Designers tend to size text boxes neatly around a tidy block of Latin, but real copy is messy: headlines run two lines instead of one, product descriptions vary wildly in length, and a paragraph that fit perfectly suddenly overflows. Layouts tuned to lorem ipsum can crack the moment genuine content arrives. Filler also hides meaning, so stakeholders cannot react to the actual message and user testing tells you little about whether people understand the page.

A sensible rule is to use lorem ipsum early and abandon it fast. It is well suited to the first rough wireframe, a typography experiment, a quick template demo, or stress-testing how a field behaves when stuffed full. As soon as the structure is agreed, switch to real or draft copy, even rough notes from the writer. Designing against approximate-but-real words exposes length and tone problems while they are still cheap to fix, rather than during launch week.

Whatever you generate, treat it as scaffolding, not as a finished surface. The single biggest lorem ipsum failure is forgetting to remove it: dummy Latin has slipped into printed brochures, shipped apps, and live web pages more than once. Generate exactly the amount you need, label placeholder regions clearly, and do a final search for the word "lorem" before anything goes out. Used with that discipline, it is one of the most efficient tools in a designer's kit.

  • Generate only the volume you need, paragraphs, sentences, or an exact word count, so your sample matches the space the real copy will actually occupy.
  • Test layouts with both short and long blocks of filler to reveal where headings wrap or columns overflow before real content arrives.
  • Keep the traditional "Lorem ipsum dolor sit amet" opener only for demos; turn it off when you want output that does not telegraph that the text is placeholder.
  • Before publishing or printing, run a find for "lorem" across the project to catch any dummy text that was never swapped out.

Read the full guide →

Tool by the Super Simple Digital Tools Team. Reviewed by our editorial team. Free to use, no signup required.

Related tools