Convert JSON to clean YAML with 2-space indentation and sensible line wrapping. Runs in your browser, nothing uploaded. No upload — runs 100% in your browser
JSON is what APIs return and what tools export; YAML is what people actually enjoy editing. Paste a JSON document and get back clean YAML: 2-space indentation, lists written with dashes, long lines wrapped near 120 characters, and strings quoted only when YAML requires it (a value like 0755 or yes would be misread as a number or boolean, so it gets quotes).
The serializer avoids YAML's foot-guns: keys containing colons or special characters are quoted, nested arrays are indented under their key rather than at column zero, and duplicate object references (possible in parsed JSON via $ref patterns) are written out in full instead of being silently aliased. The result is a document you can hand-edit without breaking the parse.
Convert the same data YAML → JSON → YAML and you get an equivalent document back — that symmetry is the fastest check that nothing was lost. Everything runs locally; your config never leaves the tab.
No. Everything on this page runs inside your browser using JavaScript and WebAssembly. Your file never leaves your device — you can even disconnect from the internet after the page loads and the tool still works.
YAML would misread values like 'true', 'no', '0755' or '2026-01-01' as booleans, numbers or dates. Quoting forces them to stay strings — the converter only quotes when necessary.
Yes, key order in the YAML matches the JSON, which keeps diffs readable when files are version-controlled.
No — strict JSON only. Strip comments first, or use a tool that accepts them.