Developer Tools

URL Encoder / Decoder

Encode and decode URLs and query parameters online for free — instantly, entirely inside your browser.

Private by default Instant results No signup
URL Encoder / DecoderLive
Component mode escapes / ? : @ & = + $ # too — use it for a single query value or path segment.
Overview

What is URL encoding?

URL encoding (also called percent-encoding) converts characters that aren't safe to use directly in a URL — spaces, ampersands, question marks, and non-ASCII characters — into a `%XX` format that browsers and servers can parse unambiguously. It's what turns a space into `%20` or `+`, and what lets a query parameter safely contain characters like `&` or `=` without breaking the URL's structure. Decoding reverses the process, turning percent-encoded text back into its original, readable form.

This tool encodes and decodes both individual URL components — like a single query parameter value — and full URLs, which need a different set of characters left untouched so the URL's own structure (`:`, `/`, `?`, `&`) stays intact.

Guide

How to use it

1Choose Encode or Decode
2Choose Component or Full URL scope
3Paste your text or URL
4Copy or download the result

Component vs. Full URL scope

"Component" encoding (`encodeURIComponent`) escapes every character that isn't safe inside a single URL component, including `&`, `=`, `?`, and `/` — the right choice for encoding an individual query parameter value that might itself contain those characters. "Full URL" encoding (`encodeURI`) leaves characters that give a URL its structure — like `:`, `/`, `?`, `&`, and `#` — untouched, and only escapes spaces and other genuinely unsafe characters, which is the right choice when encoding an entire URL rather than a single value that will be inserted into one.

Why it helps

Features & benefits

Encode or decode individual query parameters or full URLs
Clear error message for malformed percent-encoded input
Copy or download the result instantly
100% private — nothing leaves the device

Why this runs entirely in your browser

URLs can contain session tokens, API keys, or other sensitive query parameters, so nothing is uploaded. Encoding and decoding run in JavaScript locally in the tab, which means it keeps working offline once the page has loaded and nothing typed or pasted into it persists after the tab is closed.

Common uses

Encoding a search term or user input before adding it to a query string, decoding a URL copied from a browser address bar or server log to read it clearly, building a redirect URL with an encoded return path, or debugging why a URL with special characters is breaking a request.

Frequently asked questions

A few things people usually want to know before trusting the numbers.

Component encoding escapes every unsafe character, including `&`, `=`, and `/` — right for a single value. Full URL encoding leaves the URL's structural characters untouched — right for encoding an entire URL.

This happens when the input contains a `%` not followed by two valid hex digits, which makes it impossible to decode unambiguously.

Yes. Both encoding modes correctly handle Unicode text, encoding it as UTF-8 percent-encoded sequences.

Yes, using Full URL scope — but if the query string contains parameter values with their own special characters, encode those values individually with Component scope first.

No. All encoding and decoding happens locally in your browser. Nothing typed or pasted here is sent to a server, stored, or shared.