CSV to TOML converter

Convert CSV to TOML: a table becomes a TOML array of tables, one [[table]] per row.

CSV

TOML

Waiting for input

What you get

How each result is checked

  1. Step 1: The CSV is parsed with a strict parser that reports broken quotes.
  2. Step 1: Every cell in the JSON is compared with the original cell text; nothing may change.
  3. Step 2: Your input is parsed with a strict, standards-compliant parser.
  4. Step 2: The TOML output is parsed back with an independent TOML parser.
  5. Step 2: The parsed-back data is compared with your original, value by value. Any difference is reported with its exact path.

What can't convert exactly

  • Number detection only converts values whose text stays identical, so 007, 1.50 and very long IDs stay text.
  • Duplicate or empty header names are renamed, with a warning.
  • TOML has no null, so null values are left out (with a warning).
  • A TOML file must be a table, so a top-level array is placed under a key you choose.
  • Numbers are written by value: 1.0 becomes 1 (a TOML integer) and -0.0 becomes 0. The result names any number whose written form changes.

Questions

How is a two-step conversion checked?

Your input is converted to JSON first, then to the target format. Each step has its own independent check, and both must pass. The checks of both steps are listed under every result.

Is my data uploaded?

No. Everything runs in your browser, in a background worker. Nothing is sent to a server.

How do I convert CSV to TOML online?

Paste your CSV or open a file on the left (or click Example). The TOML appears on the right as you type, already checked. Copy it, or download it as a file. Nothing is uploaded.

Can the TOML output be wrong?

Every result is checked before it is shown (the checks are listed on this page). If a check fails, the page says "Review needed" and why, instead of presenting the output as correct, and anything that cannot convert exactly is named in the notes.