Skip to content

How to extract tables from a PDF to Excel for free

If you have Excel in Microsoft 365 on Windows, use Data, Get Data, From File, From PDF: it reads every table and joins tables that run across pages. On a Mac or older Excel, use Tabula, a free app that runs on your computer and exports CSV. Neither reads scanned pages. Split out only the pages you need first.

Runs in your browser. Your files are never uploaded. Free, no sign-up.

01Methods

Which free method fits your setup

Pick by the Excel you have and by whether the file may leave your computer.
Free ways to extract a PDF table to Excel
MethodWhen it fitsCost and versionsWhere the file goes
Excel: Get Data from PDF (Power Query)Excel in Microsoft 365 on Windows. Best for statements and reports with many pages.Included in Microsoft 365. Not in Office 2016 or 2019, and not in Excel for Mac.The file is read on your computer.
TabulaMac, Linux, or any Excel version. Best when you want to draw the table area by hand.Free and open source desktop app.Runs on your computer; the PDF does not go online.
Copy and pasteOne small table with clear columns.Free.Nothing leaves your computer.
Online convertersWhen none of the above is available and the file holds nothing private.Often free for a few files, then paid.The whole file is uploaded to someone else's server.

02Steps

Step by step

  1. 01Check it is a text PDF

    Open the PDF and try to select a word in the table. If you can highlight single words, it is a text PDF and these methods work. If the whole page selects as one picture, it is a scan: see the scanned PDF question below.

  2. 02Keep only the pages with the table

    Open the free PDF toolkit, choose Split, and type the page range that holds the table, for example 3-5. It runs in your browser and nothing is uploaded. A smaller file gives Excel fewer wrong guesses to sort through, and the other pages never reach any converter.

  3. 03Load it into Excel

    In Excel go to Data, Get Data, From File, From PDF, and pick the split file. The Navigator lists every page and every table it found, with a preview. Pick the table that matches your rows, then press the button beside Load that opens the Power Query editor, so you can clean it before it lands on a sheet.

  4. 04Join a table that runs across pages

    Power Query joins similar tables on consecutive pages by itself (the MultiPageTables option is on by default). If the pages still arrive as separate tables, select them in the Navigator, load them, and use Append Queries to stack them, then remove the header rows that repeat.

  5. 05Clean the columns

    In the Power Query editor: Use First Row as Headers, remove blank rows, set each column's data type (Date, Decimal Number, Text), and use Replace Values to drop currency symbols. Then Close and Load. Next month, drop in the new file and press Refresh.

  6. 06No Get Data from PDF? Use Tabula

    Install Tabula from tabula.technology, open it (it opens in your web browser, but the file stays on your computer), import the split PDF, drag a box around the table on each page, choose Lattice for tables with ruled lines or Stream for tables without, preview, and export as CSV. Open the CSV in Excel.

03Worked example

Example: a 6-page bank statement where the transactions run from page 2 to page 5

  1. Check: the dates and amounts highlight word by word, so it is a text PDF.
  2. Split in the PDF toolkit with the range 2-5. The new file holds only the transaction pages; the page with your address and account summary stays out.
  3. Excel, Get Data, From PDF: the Navigator shows one table per page and one joined table. Pick the joined table and open it in the Power Query editor.
  4. Use First Row as Headers, filter out the rows where the Date column is blank (page subtotals), set Date to Date and Amount to Decimal Number.
  5. Close and Load. The transactions are one table on one sheet. Next month: split the new statement the same way, save it over the old file and press Refresh.
  6. This is an illustration of the steps, not a measured result: how well the table is read depends on how the bank's PDF is built.

04Mistakes

Common problems and their fixes

Numbers land as text and will not add up.

Set the column type to Decimal Number in Power Query. Remove currency symbols and thousands separators first. Amounts in brackets, like (120.00), need Replace Values to turn them into minus signs.

Columns shift or merge on some rows.

In Tabula, switch between Lattice and Stream. In Power Query, try a different table in the Navigator; the page view often splits columns better than the detected table.

The header row repeats in the middle of the data.

Each PDF page repeats it. Filter that column to remove rows that equal the header text.

Dates come in as the wrong month and day.

Change the column type with Using Locale and pick the country the PDF was written for, so 03/11 reads the right way round.

05FAQ

Questions people ask

Can I convert a PDF table to Excel without uploading it?

Yes. Excel's Get Data from PDF and Tabula both read the file on your computer, and the PDF toolkit splits pages inside your browser. Only online converters upload the file.

Why is there no From PDF option in my Excel?

Microsoft lists the PDF source for Excel in Microsoft 365 on Windows only. Office 2016, Office 2019 and Excel for Mac do not have it. Use Tabula instead.

What about a scanned PDF?

Get Data from PDF and Tabula read only text, so a scan comes back empty. On Microsoft's own Q&A forum, the suggested route for an image of a table is Excel's Data from Picture; check every number it returns.

How do I get a table that spans several pages into one sheet?

In Power Query, similar tables on consecutive pages are joined by default. If they are not, load each page's table and use Append Queries, then remove the repeated header rows.

Can I do this every month without repeating the steps?

Yes, with Power Query. Save the new PDF under the same name and press Refresh; the cleaning steps run again on the new file.

06Sources

Sources, with the date we checked them

What changed

  1. Published

    First version: three free methods, exact steps, a worked example and cleanup fixes.

07Next

Every free tool in one place: Free tools that run in your browser