{ }jsonkit
Tools/Convert/URL Encode / Decode
Search tools…⌘K
Format
{ }JSON Formatter
≡→JSON Minifier
\"JSON Escape / Unescape
a→zJSON Sorter
⇄{}JSON Flattener
Validate
JSON Validator
±JSON Diff / Compare
§JSON Schema Generator
JWT Decoder
ΔJSON Patch / Merge Patch
kbJSON Size Analyzer
Convert
→csvJSON to CSV
csv→CSV to JSON
⇄ymlJSON ⇄ YAML
⇄xmlJSON ⇄ XML
→tsJSON to TypeScript
b64Base64 Encode / Decode
%2FURL Encode / Decode
clkTimestamp Converter
→zJSON to Zod
→pyJSON to Pydantic
→goJSON to Go
→javaJSON to Java
⇄jsonlJSON ⇄ JSONL
5→JSON5 / JSONC to JSON
Query
$.JSONPath / JQ Tester
.*Regex Tester
Generate
Mock JSON Data Generator
idUUID / NanoID Generator
#Hash Generator
%2F

URL Encode / Decode

Percent-encode query values or whole URLs — RFC 3986.
processes as you type · client-side
Sample
Upload
⇄ Encode
Scope
ComponentFull URL
⧉ Copy output ⌘C
Download
Share
Clear
Text63 B · paste or drop a file
1
Encoded
1
https%3A%2F%2Fjsonkit.com%2Fsearch%3Fq%3Djson%20formatter%20%26%20validator%26lang%3Den
✓ valid (RFC 8259)63 B → 87 B0.0 msLn 1, Col 1UTF-8

About URL Encode / Decode

The URL encoder and decoder converts text to percent-encoding and back, following RFC 3986. Characters that would break a URL — spaces, ampersands, question marks, non-ASCII letters — become %XX escape sequences, so any value can travel safely inside a query string or path.

Everything runs client-side in your browser. URLs often carry tokens, session ids and personal data, so the fact that nothing you paste is uploaded matters — it is private by default, free and requires no account.

Use it to build query strings by hand, debug a mangled or double-encoded URL from a log, decode a redirect target, or check exactly what a browser sends when a form value contains special characters.

How it works

Component vs full-URL encoding

Component mode (encodeURIComponent) escapes every reserved character including /, ?, & and = — the right choice for a single value going into a query string. Full URL mode (encodeURI) keeps the structural characters intact so an entire URL stays navigable while spaces and non-ASCII characters are escaped. Encoding a full URL with component mode is the classic mistake that breaks links.

How percent-encoding works

Each unsafe character is converted to UTF-8 bytes, and every byte becomes a % followed by two hex digits — a space becomes %20, an ampersand %26, and é becomes the two-byte sequence %C3%A9. Decoding reverses this exactly.

Decoding and the + sign

Decode mode resolves %XX sequences back to characters and also treats + as a space, matching the application/x-www-form-urlencoded convention browsers use in query strings — the most common source of confusion when reading real-world URLs.

Malformed input is caught

A % that is not followed by two hex digits is invalid percent-encoding. Rather than silently producing wrong text, the decoder reports the problem so you can spot truncated or double-encoded input.

Frequently asked questions

What is the difference between encodeURIComponent and encodeURI?

encodeURIComponent escapes everything including /, ?, & and =, making it right for individual query-string values. encodeURI preserves those structural characters so a whole URL remains valid. Use Component mode for values, Full URL mode for complete addresses.

Why does my decoded URL show + instead of spaces?

In query strings, browsers encode spaces as + (the form-urlencoded convention). This tool's decode mode converts + to a space automatically, matching what servers actually receive.

What does %20 mean?

It is the percent-encoded form of a space: % followed by the byte value in hexadecimal. Every unsafe character is encoded this way — %26 is &, %3F is ?, and multi-byte UTF-8 characters become several %XX sequences.

My URL was encoded twice — can I fix it?

Yes. Signs of double encoding are sequences like %2520 (an encoded %20). Run decode once to peel off the outer layer, then again to recover the original text.

Is the URL I paste sent anywhere?

No. Encoding and decoding run locally in your browser, so URLs containing tokens or personal data never leave your machine.