PDF to JSON
Turn a PDF into structured JSON with its tables intact. Runs in your browser, no upload.
Drop in a PDF and get back structured data: the text of every page in reading order, any tables reconstructed as real rows and columns, and the document metadata. Export it as JSON for a pipeline, CSV for a spreadsheet, Markdown for a document, or plain text for search indexing and RAG chunking. Tables are found by clustering the text layer on its own coordinates, so a column stays a column instead of collapsing into a run of words. Parsing happens entirely in this tab, which means confidential invoices, contracts, and statements never leave your machine. The same extraction is available as a REST endpoint at POST /v1/tools/pdf-extract when you want it in a pipeline.
Runs on your device. This tool processes your file inside this browser tab. Nothing is uploaded, so it also works offline once the page has loaded, and closing the tab discards the file from memory.
Loading tool
How it works
- 01
Drop in a PDF, or pick one from your computer.
- 02
Optionally limit it to a page range such as 1,3,5-7.
- 03
Choose the JSON, tables, text, or Markdown view.
- 04
Download the result in the format you need.
Details
- Category
- Documents & PDF
- Formats
- Runs
- In your browser
- Files uploaded
- No
- Cost per run
- Free
- Sign-in
- Not required
- Works offline
- Yes, once loaded
Last updated 2026-08-12
Common questions
Does this work on scanned PDFs?
No - it reads the PDF's text layer, which a scan does not have. When every page comes back empty the tool tells you the file needs OCR instead of returning a silent blank result. Run OCR PDF first, then extract.
How are tables detected?
Text is grouped into visual lines by its vertical position, then split into cells wherever the horizontal gap is much wider than the average character. A run of two or more consecutive lines with the same number of columns is treated as a table.
Why did a table come out as plain text?
Detection is deliberately strict and requires a consistent column count, because a wrongly-guessed table is worse than none. Ragged layouts and single-column lists stay as text, which you will still find in the text and JSON views.
Can I use this from code?
Yes - POST /v1/tools/pdf-extract returns the same structure, and pdf-to-text, pdf-to-md, pdf-to-excel and pdf-to-word return the other formats directly. See the API docs.
Is my PDF uploaded?
No - the file is parsed in your browser and never sent to a server.
Use this from your code
This tool is also a REST endpoint, so you can run it in a pipeline instead of by hand. Each call costs 5 credits and needs an API key. See the API reference for every parameter.
curl -X POST https://fileoven.com/api/v1/tools/pdf-extract \ -H "Authorization: Bearer sk_live_..." \ -F "file=@input.pdf"