Data
TSV to YAML Converter
Convert tab-separated data into YAML for configuration files or human review.
Written by Jay Sudha · Published · Last updated
Press ⌘ Enter to run
4 lines · 69 chars
Ready; press Run or ⌘ Enter
How this tool handles files
- Processing
- In your browser, on-device
- Storage
- Nothing stored
- Output
- A file you download
- Your responsibility
- Review before official use
- Runs in your browser. Your file is processed on your own device and, on this site, is not uploaded to our servers.
- Nothing is stored. Your file and its output are gone the moment you close or reload the page.
- Review sensitive files (bank, ID, medical) and check the output before sharing it.
Every tool on FormatOS runs in your browser. Read our Privacy Policy and File Handling Policy.
Common uses
- Produce YAML fixtures from spreadsheet exports
- Review TSV data in a friendlier syntax
Limitations
- First row is treated as the header
Where TSV-to-YAML fits
This tool takes tab-separated rows, the format you get when you copy a block of cells from Excel, Google Sheets, or Numbers, and rewrites them as a YAML list of records. It treats the first row as field names and turns every following row into a mapping under those keys, so a flat export becomes a readable sequence of entries rather than a wall of tabs.
It is most useful for developers and data prep work: turning a quick spreadsheet of seed data, lookup tables, or environment values into YAML fixtures, sample payloads, or config-shaped snippets that read well in a pull request or a docs page. Because tabs survive copy-paste from sheets without the comma-escaping headaches of CSV, it is a low-friction way to move a small table from a spreadsheet into a YAML-friendly context.
It also helps non-developers and admins who have been handed a TSV and simply want to read it. YAML's indented key-value layout is easier to scan line by line than raw columns, which makes it handy for reviewing a short dataset, sharing a tidy excerpt, or eyeballing what a sheet actually contains before passing it on.
The conversion flow and what it covers
The flow is direct: paste your TSV or load a .tsv file, and the tool converts in your browser, then lets you copy the result or download it. Everything runs locally on the page, so nothing is uploaded and nothing is retained once you close the tab. Parsing is quote-aware and handles Windows, Mac, and Unix line endings, and double-quoted fields that contain tabs or newlines are kept intact.
Output is a YAML sequence where each data row is a mapping, with header names as keys. If a header cell is blank, that column is named column_1, column_2, and so on by position, and rows with fewer cells than the header simply get empty values for the missing fields, so ragged rows still produce valid structure.
Be aware of what it does and does not do with types. A plain number such as 42 or 9.99 becomes a YAML number and true or false becomes a boolean; dates, codes with leading zeros and everything else stay text, quoted wherever a YAML reader could misread them. It produces a flat list of single-level records only, with no nested objects, anchors, comments, or multi-document output, and it does not validate against any schema.
Pitfalls worth knowing
The most common surprise is that the first row is always treated as headers. If your TSV has no header line, the real first record is consumed as field names and every other row inherits them, so add a header row first if your data does not have one.
The second is expectations about quoting. Cells containing a colon followed by a space, a leading dash or hash, or a leading or trailing space are quoted automatically, and so are values such as 01234 or yes that another reader might turn into a number or boolean. The quotes are there to keep the text exactly as it was in your sheet.
Also watch your delimiter and your copy source. Data that is actually comma-separated, or a spreadsheet selection where some cells were turned into tabs but others were not, will misalign columns. Spaces used for alignment are not tabs, and a stray blank line or trailing tab can shift fields, so confirm the input is genuinely tab-delimited before trusting the result.
Watch for a column that landed under a placeholder name
Skim the output top to bottom: confirm the keys match your intended headers, that the number of records equals your data rows minus the header, and that no column landed under a placeholder name like column_2, which signals a blank header cell. Spot-check a few rows against the source to make sure values sit under the right keys and that no field spilled because of an unexpected tab or line break.
Check the columns where typing matters: a plain number is now a YAML number, so an ID column of plain digits without leading zeros comes out as numbers; quote those values by hand if your system expects text. If you plan to feed the YAML into another tool, run it through that tool's loader or a YAML linter once to catch anything the bare formatting left ambiguous.
For anything official, financial, or legal, treat this as a formatting step, not a source of truth. Verify the converted content by hand against the original TSV before using it in records or filings, since the tool reproduces what you paste without checking correctness or meaning.
Frequently asked questions
A list of mappings, one entry per tab-separated row, keyed by the header columns. It's flat, readable YAML ready for fixtures or review.
Only plain numbers (42, 9.99) and true/false. Codes with leading zeros, values like 9.90, and words such as yes stay text and are quoted, so their meaning cannot change.
No. The conversion runs in your browser; your text or file is processed on your own device and, on this site, is not uploaded to a server, and we do not intentionally store it.
Related data tools
Tool last reviewed: September 27, 2026 · Report a problem