All free tools

Free URL Encoder & Decoder

Make any text safe to put in a web address, or turn an encoded URL back into readable characters. Useful for query strings, tracking links and debugging redirects.

What is the URL encoder & decoder?

URL encoding, also called percent encoding, replaces characters that aren't safe in a web address with a percent sign and a code — a space becomes %20, an ampersand becomes %26. It's necessary because characters like spaces, ampersands and question marks have structural meaning in a URL, so leaving them raw breaks the link or truncates a query string. You'll need it whenever you put text into a query parameter, build a tracking link, or try to read what an already-encoded URL actually says. This tool converts both directions and runs entirely in your browser.

How our free URL encoder & decoder works

1

Choose a direction

Encode plain text for use in a URL, or decode an encoded URL back to readable text.

2

Paste your input

Drop in the text or link — the result appears instantly.

3

Copy the result

Copy the encoded or decoded string straight into your link or code.

Who uses our free URL encoder & decoder?

Marketers

Build tracking links with campaign parameters that contain spaces or symbols.

Developers

Encode query parameters correctly and debug malformed request URLs.

SEO specialists

Read encoded URLs in analytics reports and server logs.

Anyone sharing a long link

Work out why a pasted link breaks partway through.

Why use the URL encoder & decoder?

Both directions

Encode and decode with a single toggle.

Unicode-aware

Non-Latin characters and emoji encode to valid percent sequences.

Private

Runs in your browser, so internal URLs and parameters aren't sent anywhere.

Characters you'll see encoded most often

The reserved characters below have structural meaning in a URL, so a raw one changes what the address means rather than being read as text. This is the quickest way to work out what an encoded link is actually saying.

Character Encoded as Why it has to be encoded
space %20 Ends the URL in some parsers and breaks it in email clients
& %26 Starts a new query parameter, silently truncating your value
? %3F Marks the start of the query string
# %23 Marks a page anchor — everything after it never reaches the server
/ %2F Separates path segments
= %3D Separates a parameter name from its value
+ %2B Means a space inside a query string, so a literal plus is lost
% %25 Starts an encoded sequence — leave it raw and the next two characters get eaten
é (any non-ASCII) %C3%A9 Encoded as its UTF-8 bytes, so one letter can become several codes

Tips for getting the best results

Encode the value, not the whole URL

Encoding an entire address turns its slashes and colons into codes and breaks it. Encode only the parameter value you're inserting.

Spaces become %20 or +

Both appear in the wild. %20 is correct in a path; + is only valid in a query string.

Ampersands are the usual culprit

An unencoded & inside a parameter value starts a new parameter, which silently truncates your data.

Don't double-encode

Encoding an already-encoded string turns % into %25 and breaks it. Decode first if you're unsure.

Common problems and how to fix them

My decoded text is full of à and  characters

The string was encoded as UTF-8 but decoded as Latin-1 somewhere along the way. Re-encode the original text rather than trying to repair the output — the damage happens on decode, not encode.

The link works for me but breaks when I paste it in chat

Chat apps stop the clickable link at the first space or bracket. Encode those characters and the whole address stays one link.

My tracking parameters are missing in analytics

Check for an unencoded ampersand inside a value — for example a campaign name like "spring & summer". Everything after it is read as a separate parameter.

I decoded a URL and got %2520

That's a double-encoded space: %20 was itself encoded, turning the % into %25. Decode a second time to get back to the original.

Frequently asked questions

What is URL encoding?

Replacing characters that aren't safe in a web address with a percent sign and hex code — a space becomes %20 — so the URL stays valid and complete.

When do I need to encode a URL?

Whenever you put user text, a search term, or another URL inside a query parameter — anything containing spaces, ampersands, question marks or non-Latin characters.

Why does my link break at a certain character?

Almost always an unencoded ampersand or hash. Both have structural meaning, so everything after them is treated as a new parameter or a page anchor.

What's the difference between %20 and +?

Both represent a space. %20 works anywhere in a URL; + only means a space inside a query string, and means a literal plus elsewhere.

Is my URL sent to a server?

No. Encoding and decoding happen entirely in your browser.

Explore more free tools

Like this tool?
Slashit puts text like this a keystroke away.