Paste a JSON array or a CSV table. The other side updates as you type, and nothing is sent to a server.
1
1
CSV is a text table: one record per line, columns separated by a comma, a semicolon or a tab. JSON here must be an array. An array of objects becomes one row per object. An array of arrays is written as-is.
Quoting follows RFC 4180. A field that contains the separator, a quote or a line break is wrapped in double quotes, and a quote inside that field is doubled. Cells coming back from CSV are strings: a JSON number does not stay a number.
[{"name": "Ada", "lang": "en"}]name,lang Ada,en
name,note Ada,"hello, world"
[
{
"name": "Ada",
"note": "hello, world"
}
]{ "name": "Ada" }[{ "name": "Ada" }]Numbers, booleans and null become text on the way to CSV. On the way back every cell is a string, so 1 comes back as "1". A nested object is written with JSON.stringify and comes back as that text, not as an object.
With the header switch on, the first CSV row becomes the keys. Duplicate names: the later column wins. A short row leaves the missing keys as an empty string. Extra cells past the header are dropped.
Rows may end with a line break or with a carriage return. A final line break does not add an empty row. A leading UTF-8 BOM is ignored. An unclosed quote is an error, and the previous result stays on screen.
Each side is limited to 100,000 characters and 5,000 rows. Turning the header off on an array of objects writes the values only, so the keys are not in the CSV.
The share link stores the source side, the separator and the header switch. The other side is computed again when the link is opened.
RFC 4180, “Common Format and MIME Type for Comma-Separated Values (CSV) Files”, was published in October 2005 by Y. Shafranovich. It registers the media type text/csv and describes doubled quotes.
When a locale uses a comma as the decimal mark, spreadsheet programs often split columns on a semicolon instead. The separator switch is there for that file.