Convert a CSV file to a PDF table
Turn a CSV export into a tidy, printable PDF table with a repeated header row and automatic column widths. No upload, no size cap, no signup.
- Runs in your browser
- Files are never uploaded
- Free, no account
Turning a data file into something printable
A CSV opened in a text editor is unreadable past about four columns. Opened in a spreadsheet, it is readable but not portable — the columns are whatever width that machine decided. This page draws it as a real table with measured column widths, a repeated header row and page numbers' worth of consistent layout, so it looks the same for everyone who opens it.
Typical reasons people need it: attaching a data export to a ticket or an email, printing a stock list or a delivery manifest, submitting a schedule as a PDF because that is the only format a portal accepts, or archiving a query result in a form that will still open in ten years.
Delimiters are detected, not assumed
"CSV" is a family of formats. The parser sniffs the content and handles all of the usual ones without a setting:
| Separator | Where it comes from |
|---|---|
| Comma | The default in English-locale exports and almost every API |
| Semicolon | Excel in German, French, Spanish, Italian and Dutch locales, where the comma is the decimal separator |
| Tab | Copy-and-paste out of a spreadsheet, and .tsv exports |
| Pipe | Legacy mainframe and telecoms exports |
Quoted fields containing the separator, embedded newlines and doubled quotes are all handled properly, so a free-text column with commas in it will not shift your table sideways.
Pagination and the repeated header
Rows flow onto as many pages as they need. With the header option on, the first row of the file is drawn in bold with a shaded background at the top of every page — which is what makes a fifty-page export usable rather than a wall of unlabelled numbers.
Row heights are computed from the content, so a row with a long note wraps to up to four lines and the row grows to fit. Anything longer than four lines is trimmed with an ellipsis and counted, and the count is shown with the result rather than left for you to discover.
Layout recipes
| Your file | Suggested setup |
|---|---|
| 3–5 narrow columns, many rows | A4 portrait, 10 pt, zebra on, grid off |
| 8–15 columns | A4 landscape, 7–8 pt, fit-to-width on |
| 20+ columns | A3 landscape, 5–6 pt — or split the file |
| A column of long free text | Portrait, grid on, so the wrapped lines stay visually contained |
| A file for a printer's tray | US Letter if you are in North America, A4 everywhere else |
Encoding notes
Files are decoded as UTF-8, which is what modern exports use. Two things to know:
- A byte-order mark at the start of the file — which Excel adds when you "Save as CSV UTF-8" — is handled and does not appear in the first cell.
- Legacy Windows-1252 files will show replacement characters on accented letters. Re-save as UTF-8 first; every spreadsheet application offers it.
Beyond decoding, the drawing step can only render characters that exist in PDF's built-in fonts, which cover Western European alphabets. Cyrillic, Greek, Hebrew, Arabic and CJK text becomes a question mark, and the number of substitutions is reported with the result — we will not embed a font, because obtaining one would mean a network request.
Large exports
There is no row limit and no file size cap, because there is no upload. A 50,000-row CSV renders to a few hundred pages in well under a minute on a laptop, with per-row progress and a working Cancel button. The only real constraint is memory, and the drawing is streamed row by row rather than held as one enormous layout.
If the resulting PDF is larger than you want to email, compress it to 2 MB — though for a text-only table the lossless clean-up in Compress PDF is usually the better choice, since it keeps the text selectable.
Related
- Excel to PDF — the same renderer for .xlsx workbooks.
- PDF to CSV — the reverse direction.
- CSV to Excel — if a workbook is what you actually needed.
- CSV to JSON — for feeding an API or a script.
Questions
Does it detect the delimiter automatically?
Yes. Commas, semicolons, tabs and pipes are all detected from the content, so European CSVs that use semicolons and tab-separated exports both work without a setting to change.
What happens to a very long CSV?
It paginates. Rows flow onto as many pages as needed and the header row is redrawn at the top of each one, so a 5,000-row export stays readable rather than becoming one unlabelled wall of numbers.
Can I control how the table looks?
You can set the paper size, orientation and font size, and toggle grid lines, zebra striping, the repeated header and fit-to-width column scaling. Long cells wrap to at most four lines and are marked as trimmed if they overflow.
Is a CSV containing personal data safe here?
It is parsed and drawn by JavaScript in this tab and never transmitted. That is a structural property of the page, not a policy: there is no server endpoint for it to be sent to.