CSV to PDF

Lay a flat CSV table out as a PDF with the column names repeated on every page.

Files stay on your device No sign-up Free to use
How this works

The tool runs in this browser. Your file or text is not uploaded to UseFreeTools. Check this tool's limits for anything it may save on your device.

Privacy details

Create the PDF controls

Showing an example. Edit to see your own.

Paste a flat table with a header row. Leave this empty when you add a file instead.

Optional. Printed once at the top of the first page in a larger bold size.

Drop your CSV file here

or choose one from your device

One UTF-8 file up to 20 MiB. Use either this file or the pasted text, not both.

    Without a header row the columns are named column_1, column_2 and so on.

    Smaller text fits more columns and more rows on a page.

    Processed in your browser. Your inputs stay on this device.

    How to use CSV to PDF

    1. Paste the table into the CSV text box, or add one UTF-8 .csv or .tsv file instead.
    2. Check the example first: the first line holds the column names, and each following line is one row.
    3. Choose the page size and orientation, and set a text size that fits your widest column.
    4. Add a title line if the first page needs one, then select Create the PDF.
    5. Download the file and check that the column names repeat at the top of each page.

    Example: CSV to PDF

    Lay a three-row staff table out on one landscape page.

    You add
    CSV text with the header name,role,city and three rows. Page size: A4. Orientation: Landscape. First row holds the column names: on. Text size: 9 points. Document title line: empty.
    You get
    The result reports one page built from three rows and three columns and downloads a .pdf file. The header band shows name, role and city once, each row sits under the matching column, and the footer reads Page 1 of 1.

    Options

    Page size and orientation
    Landscape is the default because a table usually has more columns than rows of text. Portrait suits a narrow table with a few columns and many rows.
    Text size in points
    Smaller text fits more columns and more rows on a page, down to 6 points. The column widths follow the content, so a wide table is scaled to the page and then wraps inside its columns.
    The first row holds the column names
    When the first line is a header, those names are printed at the top of every page. Turn it off for a table that starts with data, and the columns are numbered column_1, column_2 and so on.
    Document title line
    Prints once above the table on the first page in a larger bold size. Leave it empty when the table is going into a report that already has a heading.

    Supported inputs and limits

    Up to 10,000 data rows, 30 columns, 20 MiB of CSV text and 1,000 PDF pages in one run, with a cell capped at 200 characters and five wrapped lines. Quoted commas and quoted line breaks stay inside their cell, and every value is drawn as text, so an identifier such as 0012 keeps its leading zeroes. Wide tables whose columns cannot fit the selected page at a readable width are refused; choose landscape or remove columns. The first row is a header unless you turn that option off. Text uses the PDF standard fonts, so Latin letters, digits and common accents work and other writing systems are refused with a message. A cell that needs more than five lines is trimmed with a marker, and a row taller than one page is refused rather than split. The delimiter is detected from the first rows; a comma, semicolon, tab or pipe all work.

    Where your input is processed

    This tool processes your input in this browser. Your text and files are not uploaded to UseFreeTools. Check this tool's limits for anything it may save on your device.

    Why the header row is repeated, and why cells wrap

    A printed table loses its context as soon as the page turns. Repeating the column names at the top of each page means a reader never has to look back to know what a number means, which is why the header band is drawn again on every page rather than once. Wrapping follows the same logic at a smaller scale: a column narrow enough to fit the page is narrower than its longest value, so a cell is broken into lines inside its own rectangle instead of running over the neighboring column. A cap on those lines keeps one unusually long value from taking a whole page away from the rows around it.

    Questions about CSV to PDF

    Why did my table come out narrower than the page?

    Column widths follow the content, so a short table does not stretch to fill the sheet. A wide table is scaled down and wraps inside each column. If the columns cannot fit at a readable width, the tool asks you to choose landscape or remove columns instead of cutting them off.

    What happens to a very long cell?

    It wraps to five lines and then stops with a marker. The cap keeps one long note from pushing a single row past a whole page, and the report says when a value was shortened.

    Are numbers and dates reformatted?

    No. Each cell is printed as the text you supplied, so a date keeps the layout it had and a leading zero is not dropped. The tool never reads a cell as a number. Only a cell that needs more than five lines is shortened, and the report says when that happened.

    Can I use a semicolon or tab separated file?

    Yes. The delimiter is detected from the first rows, and a comma, semicolon, tab or pipe all work. Values that contain the delimiter still need the usual quotes around them.

    Project manager: Tony Hines · Content updated 4 October 2026 · Report a problem