For readers who save papers, reports and scans
Read the PDF, not a guess at it.
Paste a link to a scanned paper or report and read it as text that reflows on a phone. Language models tidy up what the scanner read, and every number is checked against the raw read afterwards — a pass that alters one is thrown away rather than shown to you.
Paste a PDF link and read the result. No account, no download.
How a PDF becomes text
Three stages, and each one can be thrown away.
-
1
Every page is rasterised
Each page is rendered to a 300 DPI image and read by Tesseract. This happens whether or not the PDF claims to have a text layer, so a scan with no text layer is the ordinary case rather than a special one.
-
2
Three passes clean it up
One language-model pass fixes OCR noise, a second reviews a word-level diff of those edits, and a third turns the result into structured HTML.
-
3
Each pass has to survive a check
The two passes that touch the words are checked against the raw Tesseract text; the pass that turns it into HTML is checked for text it dropped. Fail either and that pass is discarded and the stage below it is kept, so a rejected rewrite never reaches you.
Where an extracted PDF ends up
Built by one person. I wrote js-cookie, which browsers download about 22 billion times a year, and ran my own reading pipeline for ten years before turning it into this. Why I built it.
What the checks actually check
This is the part worth being precise about, because a language model in a pipeline usually means the opposite.
Three deterministic checks run against the raw Tesseract output after each of the two passes that touch the words: the same runs of digits must all come back, the total length must stay within 30 percent, and the line and blank-line structure must be unchanged. The third pass only turns text into HTML, so it is checked for how much text it dropped rather than for what it said.
The digit check is the one that earns its place. Dates, page numbers, citations, figures and table values are what a language model is most likely to quietly alter, and what a reader is least likely to catch. If they change, the pass is dropped.
This is not a guarantee that no word ever changes. A same-length substitution of one non-numeric word for another passes all three checks. The narrower claim is the true one: altered numbers are caught, and a rejected rewrite is discarded rather than shipped.
What this does not do
- Tesseract is configured with the Latin script pack only. Scans in Chinese, Arabic, Cyrillic or other non-Latin scripts will not extract.
- PDFs up to 300 pages and 500 MB. Past either limit the file is rejected rather than partly processed.
- If more than 20 percent of pages fail OCR the whole extraction is rejected. Below that, failed pages appear as OCR-unavailable markers.
- Non-numeric words can still change within the length and structure bounds. The checks catch altered numbers, not every altered word.
- Every page is re-rasterised even when the PDF has a clean text layer, which costs time that reading the text layer would have saved.
- Extraction runs after the page opens, so a long PDF takes a few minutes to fill in.
Questions
- Does this work on scanned PDFs?
- Yes, and that is the ordinary case. Extraction never reads the PDF's text layer — every page is read from its pixels — so a scan without a text layer works the same way as anything else.
- Can the language model make things up?
- It can change words, and the checks are built around that. On the two passes that touch the words, the same runs of digits must all come back, the total length must stay within 30 percent, and the line structure must match. A pass that fails any of those is discarded and the rawer text underneath is kept.
- What languages work?
- Latin scripts. Tesseract is installed with the Latin script pack only, so Chinese, Arabic, Cyrillic and other non-Latin scans will not extract.
- How big a PDF can I save?
- Up to 300 pages and 500 MB. Past either limit the file is rejected outright.
- Do I need an account to try it?
- No. Paste a PDF link into the reader and read the result.
- What does it cost to keep using it?
- Making an account starts a 14-day trial of the full product with no card asked for. After that it is $4.08 a month, billed once a year at $49.
- What happens to PDFs I already saved if I stop paying?
- You keep reading them. The account goes read-only: the queue, the reader view, the extracted text and export all keep working. Saving new links and importing are what stop.
What it costs after the first one
Reading a link you paste here costs nothing. Keeping a library of them is a subscription: 14 days free, no card. After that $4.08 a month, billed once a year at $49.
$4.08 a month is what pays for the extraction — rasterising every page and running Tesseract over it is the expensive part of this product, and it is charged to me per document whether or not you subscribe.
If you never subscribe, nothing is charged and the account goes read-only, not dark — you keep reading every article you saved, and you can still export.
Google, Apple, or an email address. No card at any point in the trial.
Try it on a PDF you already have
Paste a link and read the extraction. No account required.