Convert PDF tables to Excel

Find the tables in a text PDF from the position of the words, preview them, and save an .xlsx or a CSV.

How it works

  1. Add your PDF
  2. Choose pages and how the sheets are laid out
  3. Check the preview, then download the .xlsx or a .csv

How the tables are found

This tool converts a PDF to Excel by finding tables from the position of the text on each page and writing them to an .xlsx file, one sheet per table. A PDF does not store tables. It stores small pieces of text with a position, so the tool rebuilds the grid. It groups the pieces into lines by their vertical position. Pieces on a line that sit closer than 1.2 text heights apart are one cell, so a phrase such as Standard desk stays together, and a wider gap starts a new cell. A line with two or more cells is table-like, and a run of table-like lines with at least 2 rows is a table. The columns are the bands of the page that the cells of the most common row shape cover, and each cell goes in the band it sits in. A row of 4 cells that reads South, Bookshelf, 007 and $1,540.25 therefore becomes 4 columns. Plain paragraphs have no wide gaps, so they are left out. Text that wraps onto a second line inside a cell is joined into the row above when its first column is empty, only one other column has text and it sits close under the row above.

Numbers, text and the workbook

Cells are read in the US style: a comma between groups of three digits, a point for decimals, a minus sign or brackets for a negative, and an optional currency sign. $1,540.25 is written as the number 1540.25 and (1,200.00) as -1200. The sign is dropped, so format the column as currency in Excel if you want it back. A number with a leading zero such as 007 stays text, so codes and ZIP codes keep their zeros. Percentages such as 12 percent, European numbers such as 1.200,50 and cells with other words stay text. A cell that starts with an equals sign stays text and is never run as a formula. Turn the option off to keep every cell as text. The first row of each table is bold and frozen when the header option is on. You can have one sheet per table, one per page, or everything on one sheet. More than 20 tables share sheets, and the result says so. The CSV download is the sheet you are looking at, saved as UTF-8 with a byte order mark so Excel reads accents correctly.

What it does not do

Only the text layer is read. A scanned PDF holds a picture of each page and has nothing to read, so the tool names those pages and points you to PDF to JPG followed by Image to Text. Tables drawn without gaps between columns, merged cells that span several columns and tables inside a picture cannot be rebuilt reliably, and a header that spans two columns is placed in one of them. A table with a single column is not a table to this tool. A table that continues on the next page comes out as a second table, with its header row repeated if the PDF repeats it. Read the cells once before you rely on them. Pages with more than 60000 pieces of text or more than 1,000,000 characters are skipped, the tool keeps at most 500 tables, 2,000,000 cells and 20,000,000 characters (it stops before the first table that would pass a limit), cells are cut to Excel's 32,767-character limit and the notice says how many, and a PDF over 200 MB or over 1000 pages asks you to confirm before it loads. A PDF protected with a password cannot be opened until the password is removed.

Your file stays on your device

The PDF is opened and its text read by code running in this tab, with the PDF reader running in its own background worker. The workbook is written here too. There is no upload step and no server that receives your file or the cells. The page counts visits with Google Analytics, using rough groups such as 1 to 10 MB, never a file name or any text from the document. The cells are kept in memory while the page is open and are not stored or put in the address bar. Your choices for sheets, header and numbers are remembered in this browser.

Frequently asked questions

How do I convert a PDF to Excel?

Add the PDF, optionally type the pages you want such as 1-3, 5, and press Find tables. Each table appears in a preview, and Download .xlsx saves the workbook with one sheet per table. A 2 page report with a sales table and an expense table gives 2 sheets, Table 1 (page 1) and Table 2 (page 2).

Why are two columns merged, or one column split in two?

Columns come from gaps in the text. Two columns closer than 1.2 text heights read as one cell, and a cell with a very wide gap inside it reads as two. A header that spans two columns lands in one of them. Fix the few cells in Excel.

Why do some numbers come out as text?

Only US-style numbers are converted: 1,200.50, $48 or (12.00). A European 1.200,50, a percentage such as 12 percent, a code with a leading zero such as 007 and any cell with words stay as text on purpose. Turn the numbers option off to keep every cell as text.

Does it work on a scanned PDF?

No. A scan is a picture of each page with no text to read, so the tool finds nothing and names the pages. Convert the pages to images with PDF to JPG, read them with Image to Text, and paste the result into a spreadsheet. A PDF made from a word processor, a spreadsheet or a web page has real text and works.

What happens to a table that runs over several pages?

Each page's part is found as its own table. Choose One sheet per page or Everything on one sheet to put them together. If the PDF repeats the header on every page, the header row repeats in the sheet too, and you can delete those rows in Excel.

Is my PDF uploaded?

No. The PDF is read and the workbook is written in your browser, and nothing is uploaded. The page counts visits with Google Analytics using rough size groups such as 1 to 10 MB, never a file name or any text from the document. Your sheet, header and number choices are remembered in this browser.