JSON Unstringifier
You pulled a payload out of a log line, a webhook body, or a message queue, and instead of
readable JSON you got a wall of \" and \n. This tool undoes
that: paste the escaped string and get the real JSON back, pretty-printed and readable.
Whether you need to unstringify JSON from a log dump or simply unescape a JSON string by
hand, it runs entirely in your browser, so log output and API payloads never leave your
machine.
What is stringified JSON?
Stringified JSON is a JSON document that has been packed inside a JSON string
value. Because a JSON string cannot contain a raw quotation mark or line break, every
quote in the original becomes \" and every newline becomes \n.
The result is still valid JSON — it is just one long string rather than the
structure you wanted:
"{\"user\": {\"id\": 1, \"name\": \"Alice\"}}"
Unstringifying it gives back the document it was hiding:
{
"user": {
"id": 1,
"name": "Alice"
}
}
What about double-stringified JSON?
Handled automatically. Double-stringified JSON — where something has been passed
through JSON.stringify() twice and arrives buried under two layers of
escaping, with \\\" sequences everywhere — is the single most common
reason people need this tool. It usually happens when a logging pipeline, a webhook
relay, or a message queue serialises a payload that was already serialised.
Many unstringifiers parse only one layer and hand you back a string that is still escaped. This one keeps unwrapping while the result is itself valid JSON, so a double- or triple-wrapped payload comes out fully readable in a single step. A payload wrapped twice arrives looking like this:
"\"{\\\"id\\\": 1}\""
Parsing that once still leaves you with an escaped string. Unwrapping fully gives:
{
"id": 1
}
Why does my input come back unchanged?
Because it is not valid JSON yet. Rather than flashing an error while you are still pasting, the tool leaves the text exactly as you typed it until it can be parsed. If your output looks identical to your input, check for a missing opening or closing quote, a truncated copy, or a trailing comma. Once the input parses, the result appears immediately.
What if I paste ordinary JSON instead of a string?
It gets pretty-printed. Pasting a raw JSON object or array that was never stringified simply reformats it with two-space indentation, so the tool is safe to reach for even when you are not sure which of the two you are holding. For heavier formatting work — validating, minifying, or collapsing JSON — use the JSON Formatter & Minifier.
How do I go the other way?
Use JSON Stringify Text, the exact inverse of this tool: it takes ordinary text and escapes it into a JSON string literal, which is what you need when embedding content into a JSON file. That page also carries a full escape-sequence reference table if you want to know precisely which characters get rewritten. To convert JSON into a different format entirely, try the JSON to YAML Converter.
Last reviewed: August 2026