JSON Unescape
Decode an escaped JSON string back into readable text, whether or not it is wrapped in quotes.
Processed locally in your browser· Your data stays in your browser.
What is JSON Unescape?
Logs, API responses and databases often contain JSON that was serialised twice, so you see {\"id\":1,\"msg\":\"line1\\nline2\"} instead of readable text. Unescaping reverses the backslash sequences so you can read or reuse the original content.
This tool decodes the standard JSON escapes: \", \\, \/, \b, \f, \n, \r, \t and \uXXXX (including surrogate pairs for emoji). You may paste the string with its surrounding double quotes or without them. An invalid sequence such as \q or a truncated \u12 is reported with its offset instead of being guessed.
How does it work?
- Paste the escaped string, with or without the outer quotes.
- The decoded text appears immediately: line breaks become real line breaks and \uXXXX becomes the character.
- If a sequence is invalid the tool tells you which one and where.
- Copy the result, or Swap to escape it again, or send it to the JSON Formatter if it is a JSON document.
Common use cases
- Reading a double-encoded JSON payload found in a log line or database column.
- Recovering the original multi-line text from a JSON string value.
- Decoding \uXXXX sequences in an API response to see the real characters.
- Undoing the JSON Escape tool to check a round trip.
Examples
Try this input in the tool above:
"{\"user\":\"Ada\",\"note\":\"line1\\nline2\",\"smile\":\"\u263a\"}"{"user":"Ada","note":"line1\nline2","smile":"☺"}Privacy
JSON Unescape runs entirely in your browser. The text or files you provide are processed on your device and are not uploaded, logged or stored on our servers.
Limitations
Only JSON escapes are decoded. HTML entities (&), URL encoding (%20) or Base64 need their own decoders. A bare quote inside unquoted text is kept as is.
Frequently asked questions
Do I need to include the surrounding quotes?
No. Both "…" and … are accepted. If the input starts and ends with an unescaped double quote, those quotes are treated as the string delimiters and removed.
What if the result is itself JSON?
Copy it into the JSON Formatter to pretty-print it. This is the usual way to read JSON that was stringified twice.
Why does the tool reject some backslashes?
JSON only defines a fixed list of escapes. A sequence such as \x41 or \q is not valid JSON, so it is reported rather than silently altered.
Related tools
JSON Escape
Turn any text, even a whole JSON document, into a safe string you can embed inside another JSON value.
JSON & Data
JSON Formatter & Beautifier
Turn a minified or messy JSON document into readable, consistently indented text, with a precise error message if the JSON is invalid.
JSON & Data
JSON Repair
Paste almost-JSON from a log, a chat answer or a JavaScript snippet and get valid JSON back, with a clear report of every change.
JSON & Data
Unicode Unescape Converter
Paste text full of \u00e9, U+1F600 or ☺ and read the real characters.
Encoding & Decoding
XML Unescape
Convert XML entities and numeric character references back into the characters they stand for.
JSON & Data
HTML Entities Decoder
Turn <, é, € and 😀 back into the characters they stand for.
Encoding & Decoding