TSV to JSON Converter
This TSV to JSON converter takes tab-separated text — the format your clipboard holds after copying cells out of a spreadsheet — and turns it into an array of JSON objects. The first line supplies the property names and every line after it becomes one record, so a range copied out of Excel becomes usable API-shaped data without an export step. Numbers and booleans are detected and written as real JSON types rather than strings, while values with leading zeros are deliberately left as strings so postcodes, phone numbers and IDs are not damaged. Everything runs in your browser.
How it works
The first line supplies the property names and every line after it becomes one object, so a sheet copied straight out of Excel turns into an array of records.
Type detection turns 42 into a number and true into a boolean. It deliberately leaves values with leading zeros alone, so postcodes, phone numbers and IDs survive intact.
The conversion runs entirely in your browser — nothing you paste or upload is sent to a server.
How to convert TSV to JSON
- Paste tab-separated text into the input on the left, or upload a
.tsvfile. - Leave the header option ticked if your first line holds the column names.
- Copy the array of objects on the right, or download it as a
.jsonfile.
From a spreadsheet to API-shaped data
Copying a block of cells out of Excel, Numbers or Google Sheets puts tab-separated text on the clipboard. Pasting it here gives you an array of objects keyed by the header row — the shape most APIs, fixtures and seed scripts expect — without saving a file or running an export.
What gets typed and what does not
Values that look like numbers become JSON numbers, and true and false become booleans,
so the output is usable data rather than a wall of strings. There is one deliberate exception: a value with a
leading zero stays a string. Converting 01234 to 1234 would quietly destroy postcodes,
phone numbers, account references and any other identifier where the zero is part of the value.
If you would rather every field stayed a string — because a downstream consumer does its own coercion, or because one column mixes types — switch type detection off.
Data with no header row
Untick the header option and the columns are named col1, col2 and so on, with every line
treated as data. That keeps positional data usable without inventing names you would have to correct later.
Common use cases
- Turning a spreadsheet export into fixture or seed data.
- Feeding a copied report into a script that expects JSON records.
- Building a request body from a table someone sent you.
Frequently asked questions
How do I convert TSV to JSON?
Paste your tab-separated text into the left panel or upload a .tsv file. An array of JSON objects appears on the right, keyed by your header row.
Can I paste straight from Excel or Google Sheets?
Yes. Copying a range of cells puts tab-separated text on your clipboard, so pasting it here works directly without saving or exporting a file first.
Are numbers converted to real JSON numbers?
Yes, along with true and false. Type detection is on by default and can be switched off if you would rather every value stayed a string.
What happens to values with leading zeros?
They stay strings. Turning 01234 into the number 1234 would destroy postcodes, phone numbers and account IDs, so the tool leaves them alone deliberately.
What if my data has no header row?
Untick the header option and columns are named col1, col2 and so on, with every line treated as data.
Is my data uploaded anywhere?
No. The conversion runs entirely in your browser and nothing you paste is transmitted.
Related tools
TSV to CSV Converter
This TSV to CSV converter splits on tabs and adds only the quoting the result actually needs.
JSON to TSV Converter
This JSON to TSV converter produces tab-separated rows you can paste straight into a spreadsheet.
CSV to JSON Converter
This CSV to JSON converter turns CSV rows into a JSON array, keyed automatically by the header row.