Most small businesses in the UK have a folder they avoid opening. Supplier invoices, utility bills, bank statements, delivery notes and quotes, all saved as PDFs, all holding numbers someone has to type into a spreadsheet by hand. Claude can read those PDFs and return the figures as a clean table. It does this well when you set the job up properly and badly when you don't. This guide covers the practical setup: what Claude can read, where its limits are, the prompts that work, and the checks that keep bad data out of your books.
Can Claude AI actually extract data from a PDF?
According to Anthropic's PDF support documentation, Claude turns each page of a PDF into an image and also extracts the page text, then analyses both together. That matters for real business documents. A supplier invoice laid out as a grid, a bank statement with running balances, or a quote with a stamped signature all depend on layout as much as on words. Older text-only extraction tools often jumble table columns. Seeing the page as an image lets Claude keep rows and columns together.
The same documentation lists uses such as analysing financial reports, pulling key information from legal documents and converting document content into structured formats. For a small business that means turning a month of PDFs into rows you can filter, total and import.
What are the file and page limits?
These limits decide how you batch your documents, so check them before you start.
The Claude Help Centre says that for PDFs over 100 pages, Claude reads the text only and ignores visual elements. That is a trap for extraction work. If you merge a year of invoices into one 300-page file, Claude loses the layout information that keeps tables readable. Keep each upload under 100 pages.
On the developer side, Anthropic's documentation sets a page cap per request that depends on the model's context window; at the time of writing it is up to 600 pages on models with a 1M-token context window and 100 pages on others. It also warns that dense PDFs with small fonts, complex tables or heavy graphics can fill the context window before they reach the page limit. Password-protected or encrypted PDFs are not supported, so remove the password before you upload.
How do I extract data from a PDF with Claude step by step?
Here is a routine that works for a monthly batch of supplier invoices:
- Collect the batch. Put 10 to 20 invoices in one folder. Mixed suppliers are fine.
- Remove passwords and delete any pages you don't need, such as terms and conditions pages.
- Upload to a new chat so earlier conversations cannot confuse the output.
- Paste a fixed prompt (below) that sets out the columns.
- Ask for a totals row and compare it with the sum of the original invoices.
- Spot-check three rows against the PDFs before pasting the CSV into your spreadsheet.
A prompt that gives consistent results:
"From each attached invoice, extract one row per invoice with these columns in this order: supplier_name, supplier_vat_number, invoice_number, invoice_date (DD/MM/YYYY), net_amount, vat_amount, gross_amount, vat_rate. Numbers only, no £ signs. If a field is missing or unreadable, write UNCLEAR. Do not estimate. Return CSV only, then a final line confirming net plus VAT equals gross for each row."
The phrase "do not estimate" matters. Without it, a language model may fill a gap with a plausible guess, which is worse than a blank.
Which UK documents is this most useful for?
Invoices are the obvious starting point, and UK rules make them a good fit. HMRC's VAT Notice 700/21 sets out what a full VAT invoice must show, including a unique sequential number, the time of supply, date of issue, supplier details, a description of the goods or services, the VAT rate and the total VAT in sterling. Because those fields are required by law, they appear on almost every compliant invoice, which gives you a dependable extraction schema.
HMRC also allows simplified invoices for supplies of £250 or less including VAT, which carry fewer fields. Expect those rows to show UNCLEAR for net amount or customer details, and handle them as a separate category rather than treating the gaps as errors.
Other good uses:
- Bank statements: date, description, money in, money out, balance, ready to reconcile. Pairs well with the workflow in our guide to AI bookkeeping for UK small businesses.
- Utility and telecoms bills: account number, billing period, usage and cost, useful for tracking energy spend across sites.
- Quotes from trades suppliers: item, quantity, unit price, lead time, so you can compare three quotes side by side.
- Client documents for accountants and solicitors, covered in more detail in AI for accountants and solicitors in the UK.
Should I use the Claude app or the API?
On cost, Anthropic's documentation says each PDF page typically uses 1,500 to 3,000 text tokens depending on how dense it is, and image token costs apply on top because each page is processed as an image. There is no separate PDF fee. The documentation recommends its token counting tool to estimate costs for your own documents, and that is the honest answer: a two-page supplier invoice and a 40-page lease cost very different amounts to process.
How do I check the extracted data is right?
Useful checks:
- Arithmetic: in the spreadsheet, a column that flags any row where net plus VAT does not equal gross, allowing a penny for rounding.
- VAT rate sanity: flag any rate that is not one of the UK rates you expect to see on that supplier's invoices.
- Duplicates: sort by supplier and invoice number. A repeated number usually means the same PDF was uploaded twice.
- Dates: watch for American MM/DD dates slipping in on invoices from US software vendors.
What goes wrong most often?
The problems you will see most often:
- Thermal till receipts fade, and phone photos of them are often skewed. Rescan them flat, or type them in.
- Multi-page invoices where the totals sit on page three. Tell Claude that one invoice can span several pages and that the totals are on the last page.
- Oversized bundles. Past 100 pages in the chat app, Claude reads text only, so table layouts fall apart.
- Loose prompts such as "pull out the important numbers". Name every column, every time.
- Protected files. Anthropic's documentation states that encrypted or password-protected PDFs are not supported.
What about data protection and record keeping?
Extraction does not replace the source document. HMRC's VAT record-keeping guidance says you must keep business records for VAT purposes for at least 6 years, so the PDFs stay in your archive even after the data is in your spreadsheet or accounting software.
On personal data, supplier invoices from limited companies carry little risk. Payslips, customer lists and sole traders' bank statements are a different matter. Remove what the task does not need, record the purpose, and check whether your plan uses uploads for model training. The AI data protection checklist for UK businesses sets out these checks in order.
Is it worth setting up for a small business?
The best first project is narrow: one document type, one fixed prompt, one spreadsheet. Supplier invoices are the usual choice because their fields are predictable and the arithmetic checks are easy. Once that runs smoothly for a month, add bank statements or quotes. More background on setting Claude up across a business is on the Claude hub.
How to Extract Data from PDFs with Claude AI — FAQ
Can Claude AI extract tables from a scanned PDF?
Usually, yes. Anthropic's PDF documentation says Claude turns each page into an image and also pulls out the page text, so it can read a table even when the PDF has no usable text layer, as with a scan or a phone photo saved as PDF. How well it works depends on the scan. Faint thermal till receipts, skewed pages and handwritten figures cause most of the errors. For scans, ask Claude to write UNCLEAR in any cell it cannot read confidently rather than guess, then check those cells yourself against the paper copy. A clean, flat scan from an office printer gives far better results than a photo taken in a van.
How many pages can Claude read from one PDF?
In the Claude chat app, the Claude Help Centre says you can attach up to 20 files per chat, and that Claude only analyses visual elements such as charts, stamps and table layouts in PDFs of 100 pages or fewer. Longer PDFs are read as text only, which breaks table layouts. Through the developer API, Anthropic's documentation lists a 32 MB maximum request size and a page cap per request that depends on the model's context window. Anthropic updates these limits from time to time, so check the current Help Centre page before a big job. For extraction work, smaller batches are more accurate anyway, so split long bundles by month or by supplier.
Is it safe to upload invoices and bank statements to Claude under UK GDPR?
It can be, but that is a decision you make as the data controller, not something the tool settles for you. Supplier invoices from limited companies hold little personal data. Customer lists, payslips and bank statements from sole traders are personal data. Before uploading, check your plan's data retention and training settings, record the purpose in your processing records, and remove anything the extraction does not need. The ICO publishes guidance on AI and data protection that is worth reading before you make this a routine. If a document holds sensitive data such as health information, redact it first or leave it out.
How accurate is Claude at pulling numbers out of invoices?
On clean, digitally generated invoices it is generally reliable for fields like supplier name, invoice number, date, net, VAT and gross totals. Errors show up on long line-item tables, multi-page invoices where the totals sit on the last page, and poor scans. Do not trust accuracy you have not measured. Run a test batch of 20 invoices you have already keyed in by hand, compare field by field, and add arithmetic checks such as net plus VAT equals gross. Those checks catch most misreads before they reach your books.
What format should I ask Claude to return extracted PDF data in?
Ask for CSV if the data is going into Excel, Google Sheets or an accounting import, and JSON if a developer or automation tool will use it. Give the exact column names in the order you want, the date format (DD/MM/YYYY for UK work), and tell Claude to leave currency symbols out of number columns. Give one sample row as an example. A fixed schema means every batch lands in the same shape, so your spreadsheet formulas and imports keep working from one month to the next.



