JSON Parser
Convert a string into real JSON — including strings that were accidentally stringified twice — or go the other way and stringify JSON into an escaped string literal.
How to parse a string to JSON
- Choose "Parse string → JSON" (default) or "Stringify JSON → string."
- Paste your input — a string variable's contents, or a real JSON value.
- The result appears instantly on the right, with double-encoded strings automatically unwrapped.
- Copy or download the result.
Parsing vs. stringifying
"Parsing" and "stringifying" are opposite operations. Parsing takes text — a JSON-encoded string — and turns it into an actual JSON value your code can work with directly: access its keys, loop over its arrays, and so on. Stringifying does the reverse: it takes a real JSON value and converts it into a single, escaped line of text that can be embedded inside another string, a log line, or a URL parameter.
A common real-world snag is double-encoded JSON: an API or script calls its stringify function on data that was already a JSON string, producing a string that itself contains an escaped JSON string inside it. Parsing that once just gives you back another string, not the object you wanted — you have to parse it again. This parser detects that automatically and keeps unwrapping (up to a few levels) until it reaches the real value, rather than making you manually parse it twice.
Frequently asked questions
What does it mean to parse a string to JSON?
Parsing converts text that represents JSON — such as a string variable in your code, or an API response that was accidentally stringified twice — into an actual JSON value you can read, format, or use directly.
Why would a JSON string be "double-encoded"?
This happens when an API or script calls JSON.stringify() on already-stringified data, often by mistake, wrapping the real JSON in an extra layer of escaped quotes. This tool detects and unwraps that automatically.
What does JSON.stringify actually do?
It converts a JSON value into a single-line text string, escaping any special characters, so it can be embedded inside another string, log line, or piece of code. The stringify mode here shows exactly what that output looks like.