JSON Escape & Unescape
Escape quotes, backslashes, tabs and newlines so text can be pasted inside a JSON string, or turn an escaped string (like a stringified payload in a log) back into readable text.
How it works
Inside a JSON string, " and \ must be escaped, and control characters below U+0020 must be written as \n, \t or \u00XX. Everything else, including emoji, may appear as-is.
Unescape accepts the string with or without its surrounding quotes. A doubly-escaped payload (JSON stored as a string inside JSON) can be unescaped twice.
Everything above runs in JavaScript inside this tab. Your data is not uploaded. Inputs are remembered in this browser only so they survive a reload; you can switch that off on the privacy page.
Questions
Do I need to escape forward slashes?
No. \/ is allowed but optional. Some serialisers emit it so that "</script>" cannot appear inside HTML.
Should non-ASCII characters be escaped?
Not required; JSON text is UTF-8. Turn on "escape non-ASCII" if a downstream system only accepts ASCII.