Input
Waiting for input
1
Output
1
Replace illegal single quotes, smart quotes, and backticks with the double quotes JSON.parse expects — without breaking the strings inside.
Runs entirely in your browser — no upload, no wait.
Your JSON never leaves the tab. Nothing is logged.
Free, unlimited, no account required.
JSON only allows double quotes for strings and keys. Single quotes are JavaScript syntax. Smart quotes look identical at a glance but are different Unicode codepoints. The fixer normalizes all of them to ASCII double quotes while leaving quotes that legitimately appear inside string contents untouched.
A naive find-and-replace would corrupt any string that contains an apostrophe. The fixer tokenizes the document first, so quotes inside string contents are left alone — only the structural quotes around keys and string values are converted.
Code copied from Python or JavaScript REPLs, AI-generated JSON, JSON pasted from Slack/Discord/email, JSONC config files, and CSVs converted to JSON with naive scripts.
For batch fixes, jq and a small Node script are usually faster.
# Node — safe single→double quote conversion via JSON5
node -e "const j=require('json5'); const fs=require('fs'); const f=process.argv[1]; fs.writeFileSync(f, JSON.stringify(j.parse(fs.readFileSync(f,'utf8')), null, 2));" file.jsonBrowser-only — your JSON is never uploaded.