FlipMyFormat

URL Encode & Decode

Percent-encode text for safe use in URLs, or decode it back to readable form — with a choice of component or full-URL encoding, and Unicode handled correctly. Instant and private. Copy or download.

100% Free Component or full URL Unicode-safe Encode & decode Data never sent

Your data is processed on your device and never sent to any server.

People Also Use

Everything This Tool Does

Correct percent-encoding, both directions.

Encode & decode

Switch between percent-encoding text and decoding it back in one click.

Component mode

Encodes every reserved character — ideal for a single query value or path segment.

Full-URL mode

Leaves structural characters like : / ? & intact, for encoding a whole URL.

Unicode-safe

Accents, emoji and non-Latin scripts are encoded as correct UTF-8 percent sequences.

Plus-as-space

Optionally treat + as a space, matching how form data encodes spaces.

One-click swap

Send the output back to the input and flip the mode to reverse a conversion.

Clear errors

Malformed percent-encoding gets a helpful message instead of a silent failure.

Instant results

Output updates live as you type — no button press needed.

Copy or save

Copy the result to your clipboard or download it as a text file.

Fully private

Everything runs in your browser — your text is never uploaded to any server.

Examples

Component vs full-URL encoding.

Component mode (encodes everything)

Text in

a=1 & b=2

Encoded out

a%3D1%20%26%20b%3D2

Full-URL mode (keeps structure)

URL in

https://x.com/a b?q=café

Encoded out

https://x.com/a%20b?q=caf%C3%A9

Modes

Encode/decode

Scope

Component/full

Unicode

UTF-8 safe

Spaces

+ or %20

Export

Copy & save

Privacy

Never sent

FlipMyFormat vs Other URL Encoders

An honest look at how this free tool compares.

FeatureFlipMyFormatOthers
Data never sent to a serverSometimes
Component and full-URL modesRare
Unicode / UTF-8 safeLimited
Plus-as-space optionRare
Encode and decode
One-click swapRare
No signup / ads-free

How to URL Encode or Decode

URLs may only contain a limited set of characters, so anything else — spaces, ampersands, accented letters, emoji — has to be percent-encoded, turning each byte into a %XX sequence. This tool does that and reverses it, correctly and with full Unicode support. Choose Encode to make text URL-safe or Decode to turn percent-encoding back into readable text. The important choice is scope: component mode encodes every reserved character, which is what you want for a single query value or path segment; full-URL mode leaves structural characters like : / ? & intact so you can encode an entire address without breaking it. If your data comes from an HTML form, turn on treat + as space so pluses are handled the way form submissions expect. Malformed input gets a clear error rather than a silent failure, and Swap lets you reverse a conversion instantly. Everything runs in your browser, so nothing is uploaded.

1

Choose a mode

Pick Encode or Decode, and component or full-URL scope.

2

Type or paste

Enter your text or encoded string; the result appears instantly.

3

Copy or save

Copy the output or download it as a text file.

Component vs Full-URL Encoding

Component mode

Encodes every character that has special meaning in a URL, including : / ? & = and space. Use it for a single piece of data — one query parameter value, one path segment — so those characters can't be misread as structure.

Full-URL mode

Leaves the characters that build a URL's structure alone and only encodes the rest, like spaces and accents. Use it when you have a whole address and just need to make it valid without breaking its parts.

Common Use Cases

Build query strings

Encode a value so it's safe to drop into a URL parameter.

Decode a link

Turn a percent-encoded URL back into readable text to see what it contains.

API requests

Encode path and query values for correct, unambiguous requests.

Form data

Handle application/x-www-form-urlencoded values, including + for spaces.

Debugging redirects

Decode nested, double-encoded redirect URLs to inspect them.

Analytics links

Encode UTM parameters and campaign values safely.

Non-Latin text

Encode accented or non-Latin characters into valid UTF-8 sequences.

Quick fixes

A fast, no-install way to make a URL valid or readable.

Tips & Best Practices

Component for values

Use component mode for a single query value or path segment so reserved characters are fully escaped.

Full-URL for whole links

Use full-URL mode when encoding an entire address you don't want to break apart.

Watch double-encoding

Encoding an already-encoded string produces %25XX. Decode once per layer to undo it.

Know your + character

In form data + means space; in a path it's literal. Use the plus-as-space option to match.

Unicode is UTF-8

Non-Latin characters become multi-byte %XX sequences — that's correct and interoperable.

Decode to inspect

Decoding a suspicious link reveals its true destination before you follow it.

Troubleshooting

It says the encoding is invalid

Decoding needs well-formed %XX sequences. Check for a lone % or an incomplete pair, then try again.

My & and = got encoded

You're in component mode, which escapes them. Switch to full-URL mode to keep URL structure intact.

Spaces became + not %20

The plus-as-space option is on. Turn it off to output %20 for spaces instead.

Decoding left %25 behind

The text was double-encoded. Decode again to remove the second layer.

Frequently Asked Questions

How do I URL encode or decode for free?

Pick Encode or Decode, type or paste your text, and the result appears instantly. Copy or download it — free, no signup.

What's the difference between the two modes?

Component mode escapes every reserved character for a single value; full-URL mode keeps structural characters so a whole address stays valid.

Which mode should I use for a query value?

Component mode, so characters like &, = and space in the value can't be mistaken for URL structure.

Is it Unicode-safe?

Yes. Accented, emoji and non-Latin characters are encoded as correct UTF-8 percent sequences.

Why did my spaces become +?

The plus-as-space option is enabled, matching form-data encoding. Turn it off for %20 instead.

What is double-encoding?

Encoding an already-encoded string, which turns % into %25. Decode once per layer to reverse it.

Can I decode a whole URL?

Yes. Decode mode turns percent-encoding anywhere in the string back into readable characters.

What if the encoding is malformed?

You get a clear error rather than silent, wrong output. Check for stray % characters.

Does it handle + as space on decode?

Only if you enable the plus-as-space option, since + means space in form data but is literal elsewhere.

Can I reverse a conversion quickly?

Yes. The Swap button moves the result to the input and flips the mode.

Is my data sent to a server?

No. Everything happens inside your browser, so your data never leaves your device.

Can I download the result?

Yes. Save the output as a text file, or copy it to your clipboard.

How much text can it handle?

It comfortably handles large strings, all within your browser.

Does it work offline?

Once the page has loaded it runs entirely in your browser, so it keeps working without a connection.

Does encoding change reserved characters in full-URL mode?

No. Full-URL mode leaves : / ? & = and similar intact, encoding only spaces and non-URL characters.

Is this the same as HTML encoding?

No. URL encoding uses %XX for URLs; HTML encoding uses entities like & for markup. They're different.

Does it work on phones?

Yes, in any modern browser on Windows, Mac, Android or iPhone with nothing to install.

Is this tool really free?

Completely free, forever — no account, no ads and no premium wall.

100% free · No signup · Processed in your browser · Data never sent

Last updated: August 2026 · FlipMyFormat URL Encode & Decode
Written and maintained by the FlipMyFormat team · Runs entirely in your browser