The short version

Drop the file. The delimiter and the encoding are worked out and the first rows appear as they were read, so you can see the parse before you commit to it.

If the columns look wrong, set the delimiter by hand. That single control fixes almost every bad CSV conversion there is.

The format has no specification worth the name. RFC 4180 describes one dialect, written down in 2005, and real files disagree with it constantly and with each other. What follows is what actually varies.

The delimiter is not always a comma

What files really useDelimiters in the wild
  • Comma, the English-language defaultmost files
  • Semicolon, wherever 3,14 is a numbermost of Europe
  • Tab, from spreadsheets and databasesoften named .csv
  • Pipe, from older data exportsrare but real

The semicolon case is not an edge case. In any locale that uses a comma for the decimal point, a comma cannot also separate fields, so Excel exports semicolons and still calls the file .csv. A converter that assumes commas turns every one of those files into a single column of text.

How the delimiter is chosenConsistency, not frequency
A file of prose with commasSmith;"one, two, three"Jones;"four, five"comma appears 5 times, but 3 then 2semicolon appears once per row, every rowsemicolon winsthe consistent one, not the common oneand commas inside quotesare never counted at all
Counting which character appears most would pick the comma here and produce one column. Counting which appears the same number of times in every row picks the delimiter.

Quotes, and the three things they carry

A field wrapped in double quotes can contain things that would otherwise be structure. There are exactly three, and a parser that misses any of them corrupts data silently rather than failing.

1

A delimiter inside the field

Nottingham, Notts sits in one cell when it is written as "Nottingham, Notts". Splitting on commas turns one address into two columns and shifts every column after it.

2

A line break inside the field

A postal address or a note can contain a newline and still be one field. A parser that reads line by line sees a new record and produces a ragged file from a clean one.

3

A quote inside the field

A doubled quote is one literal quote, so "say ""hi""" is the text say "hi". Read naively it terminates the field early and everything after it lands in the wrong place.

All three are handled here, which is why the parse is a character-by-character state machine rather than a split. It is also why the preview exists: these failures produce a table that looks plausible and is wrong, and the only cheap way to catch that is to look at it.

Tables that are too wide for paper

A spreadsheet scrolls and a page does not. A CSV with twenty columns has no good rendering on A4 portrait, and no tool can invent one.

Landscape buys about forty per cent more width and is the right first move for anything past six columns. Dropping from 10 pt to 8 pt buys a similar amount again and stays readable in print. A3 is the honest answer beyond that. Past roughly twelve columns the useful question stops being how to fit the table and starts being whether the document should be a table at all, or a set of records one per block.

Ragged rows are padded, not dropped
When rows have different widths the file is flagged and short rows are filled out with empty cells. A short row is nearly always a real record whose trailing fields were empty, so dropping it would lose data to make a tidier grid. The flag is there so you know the file is uneven rather than the tool.

When a spreadsheet is the better source

A CSV has lost things before you get to it. There are no types, so a leading zero on a postcode is gone and a date is whatever text the exporter chose. There is no formatting, no column width, no second sheet, and no formulas, only their results.

If the original was a spreadsheet, converting that instead keeps most of it: Excel to PDF reads the workbook, its sheets and its number formats. Use CSV when a CSV is genuinely what you were given.

Why this runs in your browser

CSV is the format data leaves a system in. Customer exports, transaction lists, member registers, payroll. It is rarely one person's own information and often several thousand people's, which makes uploading one to a converter a different category of decision from uploading a holiday photo.

So the rows are parsed, laid out and checked entirely on your machine, and nothing is transmitted at any point.

The tool is right above

Delimiter worked out, parse shown before you commit, nothing uploaded.

Jump to the tool

Common questions

What can go wrong between a file of commas and a table on a page.

01My columns are all wrong. What happened?

The delimiter was guessed wrong, almost certainly because the file uses semicolons. Set it explicitly in the Delimiter control and the preview will correct itself before you convert.

02Why would a CSV use semicolons?

Because in every locale that writes 3,14 for three and a bit, a comma cannot also separate fields. Excel in those locales exports semicolons by default, and the file is still called .csv.

03Does it handle commas inside a field?

Yes. A field wrapped in quotes can contain commas, line breaks and quotes of its own, and all three are read as data rather than structure. That is what separates a real parser from splitting on commas.

04My table is too wide for the page.

Use landscape, drop the type size, or move to A3. A table past about twelve columns is genuinely hard to print at a readable size, and that is a property of the data rather than of the tool.

05Some rows have fewer fields than others.

They are padded with empty cells rather than dropped, and the file is flagged as ragged. A short row is usually a real record with empty trailing fields, so losing it would be worse than showing blanks.

06Can I turn the header off?

Yes. Clear the first-row checkbox and every row is treated as data, which is what you want for a file that is a fragment of a bigger export.

07Are my files uploaded anywhere?

No. The rows are read and the PDF built in your browser. Nothing leaves the device.

08Is it free?

Free. Every tool, unlimited use, no signup.