WebToolsPlanet
Developer Tools

JSON URL Decode

Paste a URL-encoded JSON string and get back the original JSON, optionally pretty-printed. Supports both standard percent encoding and form encoding.

Last updated: May 27, 2026

Client-Side Processing
Input Data Stays on Device
Instant Local Execution

Find this tool useful? Support the project to keep it free!

Buy me a coffee

What is JSON URL Decode?

Server logs, debug URLs, and form-encoded POST bodies often contain JSON wrapped in URL encoding. The encoded form is hard to read — `%7B%22name%22%3A%22Alice%22%7D` instead of `{"name":"Alice"}`. This tool reverses that, decoding percent-escapes back to their original characters and then parsing and pretty-printing the resulting JSON.

Two decoding modes are supported. The default (`decodeURIComponent`) is the inverse of standard URL encoding. Form mode additionally converts `+` characters back to spaces, matching the way HTML forms submit `application/x-www-form-urlencoded` payloads.

How to Use JSON URL Decode

1

Paste a URL-encoded JSON string into the input panel.

2

Enable "Form mode" if the source is form-encoded (uses + for spaces).

3

Toggle "Pretty print" and pick an indent.

4

Copy the decoded JSON.

Common Use Cases

  • Decoding JSON from a URL query parameter for inspection.
  • Reading JSON pasted from a server log where the URL was logged verbatim.
  • Inspecting form-POST bodies that contain JSON values.
  • Round-tripping with JSON URL Encode for testing or debugging.

Example Input and Output

A percent-encoded JSON string is decoded and pretty-printed.

URL-encoded input
%7B%22name%22%3A%22Alice%22%2C%22age%22%3A30%7D
Decoded JSON
{
  "name": "Alice",
  "age": 30
}

Privacy

All decoding happens in your browser. No URLs or JSON are sent to a server.

Double-encoding

If your URL was encoded twice (e.g., a service that wraps an already-encoded value), you will see literal % sequences in the first decode. Run the output through this tool again to fully decode.

Frequently Asked Questions

What if the decoded content is not valid JSON?
The tool shows the JSON parse error so you can see what went wrong. If the URL was double-encoded, you may need to decode twice.
When do I need form mode?
Enable form mode when the input came from an HTML form submission or application/x-www-form-urlencoded body, where spaces are encoded as + instead of %20.
Does this send my data anywhere?
No. All decoding happens locally in your browser.