TOML to Table ConverterTOML to Table
Nothing to show yet
Paste TOML on the left. A repeated [[section]] becomes the rows.
Reading a config as a table
TOML is easy to write and awkward to survey. A file with thirty repeated [[section]] blocks is perfectly clear one block at a time and almost impossible to compare across — which is exactly when you want the whole thing as a grid with sortable columns.
The repeated block is what becomes the rows. In the spec it is called an array of tables, and it is the shape behind [[bin]] targets in a Cargo manifest, environment blocks in a deploy config, and a list of records someone chose to keep in TOML because it was easier to hand-edit than CSV.
A word on numbers, because this page is unusual here. The TOML spec requires 64-bit integers to survive, and the JavaScript parser everything in a browser is built on refuses anything past about 15 digits rather than rounding it — so a config holding a 19-digit SIM or account identifier simply will not open in most online TOML tools. It opens here, with every digit, because the value is protected before it reaches the parser.
Using it
- Paste your TOML – Or press <strong>Sample</strong> for a realistic file. Nothing is uploaded, which is the point when the config carries credentials.
- Look for the repeated section – A <code>[[double-bracketed]]</code> header repeated several times is what becomes the rows. A file with no repeated section still renders — you get one row describing the whole document.
- Sort and filter – Click a column to sort, or use the filter box to narrow the rows. Both act on what is shown, so a filtered view exports as what you can see.
- Take it further – Use <a href="/toml-to-json">TOML to JSON</a> if you want the whole document rather than the rows, or drag the divider to give the grid more room.
If the table comes out with one row and a column per section, the file has no repeated block — that is a config, not a record list, and TOML to JSON will show its shape more usefully than a grid can.
Three blocks, three rows
The <code>[[subscribers]]</code> header appears three times, so the table has three rows and one column per key. Note <code>iccid</code>: 19 digits, intact.
# HSS export - active subscribers on the London core subscribers: - msisdn: "447700900142" imsi: "234150999912345" plan: Unlimited 5G roaming: true rsrp: -92 - msisdn: "447700900458" imsi: "234150999967810" plan: Pay As You Go roaming: false rsrp: -104 - msisdn: "447700900773" imsi: "234150999934562" plan: Business 200GB roaming: true rsrp: -78
| msisdn | imsi | plan | roaming | rsrp |
|---|---|---|---|---|
| 447700900142 | 234150999912345 | Unlimited 5G | true | -92 |
| 447700900458 | 234150999967810 | Pay As You Go | false | -104 |
| 447700900773 | 234150999934562 | Business 200GB | true | -78 |
When this is the tool you want
Auditing a long config
Thirty deploy targets in one file, and you need to know which three have the wrong region. Sorting a column answers that in a second; scrolling does not.
Comparing repeated blocks
Repeated sections are hard to compare vertically because the keys are separated by everything between them. Side by side in columns, an odd one out is obvious.
Checking a config that will not open elsewhere
If another TOML tool refused your file with a complaint about an integer, it was almost certainly a long identifier. This page opens it.
Getting the rows out
Convert with TOML to JSON and then JSON to CSV for a spreadsheet.
Questions people actually ask
My file renders as a single row.
Then it has no repeated [[section]]. A plain config is a tree rather than a list of records, and one row is the honest way to show a tree with a grid. TOML to JSON is the better view for that shape.
Another TOML tool says my file is invalid and this one opens it.
Almost always a long integer. The spec requires 64-bit integers to be handled losslessly; the parser most browser tools use refuses anything past 2^53 rather than silently rounding it. Your file is valid — the other tool is being honest about a limitation this page works around.
What happens to comments?
They are ignored, because a table has no place to show them. The TOML on the left is untouched — nothing here rewrites your input.
Are dates handled properly?
Yes. TOML has genuine date and time types, and they render in ISO order so a date column sorts correctly rather than alphabetically, which is what happens when dates are treated as text.