Convert JSON to CSV, YAML, XML, TOML, or Python online

One click turns JSON into CSV, YAML, XML, TOML, NDJSON, or Python — and back. Yellorn flags lossy conversions before they happen, so you're never surprised.

Open a file in any text format — JSON, JSON Lines (NDJSON), XML, YAML, TOML, CSV, or ASCII Table — and the editor toolbar's Convert to… menu lists every other format you can switch to. Pick one and the text is rewritten and the active format switches, all at once.

It's fast because the hard part is already done: your document is parsed once into a shared shape, and converting just re-serializes that shape into the target format.

  • Text formats (JSON, NDJSON, XML, YAML, TOML, CSV, ASCII Table) convert both ways — any one to any other.
  • Python is a conversion target: get a ready-to-run dict/list literal (or an idiomatic loader snippet for XML/YAML/CSV).
  • Binary & AI files (Parquet, Arrow, Excel, MessagePack, CBOR, Protobuf, BSON, gzip, Safetensors, GGUF, ComfyUI) are sources only — drop one in and convert its decoded contents out to any text format.

Conversions between the hierarchical formats (JSON ↔ YAML ↔ XML ↔ TOML) keep your data intact. Some target formats have a stricter shape, so if your data doesn't fit, Yellorn shows a “Convert anyway?” warning that explains exactly what would change:

  • → CSV / ASCII Table want a flat list of rows. Nested values get JSON-stringified into the cell.
  • → XML needs a single root, so a top-level list or multiple keys get wrapped under <root>.
  • → TOML has no null type and no top-level array, so nulls are dropped and arrays are wrapped under a root key.

Clean, fitting data converts with no warning at all.

A conversion is a single step on the undo stack. One Ctrl/Cmd+Z restores both the previous text and the previous format together — so it's always safe to try a conversion and step back.

Try a fix in the editor or browse more articles.