Vendor table PDF
- Input
- One-page PDF with title, paragraph, and a five-column invoice table containing three rows.
- Output
- CSV began with Text, then title, paragraph, invoice, INV-1001, INV-1002, INV-1003, Page, 1. Most table columns were lost.
PDF to CSV uses AI Deep Read first, then our table engine converts the model's Markdown table response into delimited text.
From real runs
| Element | Result | What happens |
|---|---|---|
| Page title | Changed | The PDF heading became a row under a generic Text column instead of CSV metadata. |
| Paragraph text | Changed | The explanatory sentence was included as a quoted CSV row before the detected table content. |
| Table columns | Lost | The tested CSV did not preserve customer, qty, amount, and note as separate columns after Deep Read materialization. |
| Invoice IDs | Kept | INV-1001, INV-1002, and INV-1003 appeared as rows in the CSV output. |
| Numeric amounts | Lost | The CSV output from the table PDF omitted visible amount values such as 1234.50 and (19.95). |
| Page marker | Changed | A Page column and value 1 were appended, which is useful for traceability but not a source table field. |
| PDF layout | Lost | Column widths, fonts, page breaks, and table rules have no place in plain CSV output. |
The PDF heading became a row under a generic Text column instead of CSV metadata.
The explanatory sentence was included as a quoted CSV row before the detected table content.
The tested CSV did not preserve customer, qty, amount, and note as separate columns after Deep Read materialization.
INV-1001, INV-1002, and INV-1003 appeared as rows in the CSV output.
The CSV output from the table PDF omitted visible amount values such as 1234.50 and (19.95).
A Page column and value 1 were appended, which is useful for traceability but not a source table field.
Column widths, fonts, page breaks, and table rules have no place in plain CSV output.
We converted our PDF sample (91 KB) with AI Deep Read under AI Deep Read on 2026-09-11. It took 13 s and produced a 380 B CSV file, 100% smaller than the input. The engine raised 1 warning, listed below.
Input · sample.pdf · 91 KB
PDF 1.4, 1 page, no text layer, 1 image object
Output · sample.csv · 380 B
15 data rows × 1 column; header: Content
First lines of the output
Content
Feedback Atlas — Q3 activity trail
Prepared for: Board of Directors · 12 Sep 2026
Headline numbers
Metric
ARR
Net revenue retention
Support CSAT
Refunds
Content
What went well
• Enterprise pipeline doubled after the SOC 2 report shipped.
• Support CSAT held at 94% while ticket volume rose 31%.
• Two renewals slipped into October. Owner: VP Sales.
Signed
Signed:A scanned PDF will not have selectable table text and usually has one image-heavy object per page. AI Deep Read spends vision credits by page, reads the page image, and then asks our table engine to materialize detected pipe tables. Review totals, merged labels, and accounting negatives against the original.
pdftotext
pdftotext -layout statement.pdf statement.txtThis gives layout text for digital PDFs, but you still need a table parser and it will not OCR image-only pages.
The HTTP API and the MCP server run the exact engine this page uses (AI Deep Read); the response carries the same warnings the web converter shows. Check support first with GET /api/v1/pairs?from=pdf&to=csv.
curl -X POST https://filetypeconverters.com/api/v1/convert \
-H "Authorization: Bearer $FTC_API_KEY" \
-F "file=@input.pdf" -F "from=pdf" -F "to=csv" \
-F "deepRead=true" \
--output output.csv/convert/pdf-to-xlsx when you need typed numeric cells and a workbook you can inspect in Excel./convert/pdf-to-json when you need to keep paragraphs and table Markdown rather than flattening directly to CSV.The current route converts Deep Read Markdown through our table engine. In our tested PDF, that path flattened much of the table into a Text column instead of preserving all five columns.
Only after review. The tested output kept invoice IDs but dropped amounts, so it is not safe to import without checking each column against the source.
Deep Read included page traceability in the structured response. The CSV materializer wrote Page and 1 as rows rather than metadata.