How it works
What Pagorin repairs, and what it cannot do
AI proposes the structure of each page. Fixed rules decide what gets written into the file. An independent open-source checker tests the result. You get the repaired file and a report that says what still needs a person.
The steps, in order
- Check the original. veraPDF (open source, PDF/UA-1 profile) runs on your file as it is, so the report can show before and after.
- Read the page content. Text, images and form fields are read from the file in the order they are drawn. Scanned pages get an invisible recognised-text layer (OCR with Tesseract) in the page's own stream.
- Group text into lines and blocks. Fixed rules do this, with list markers, indents, bold labels, form rows and columns taken into account.
- AI proposes. For each page, a model (Claude, through the Anthropic API) looks at the page image and the blocks and proposes roles (heading levels, paragraphs, lists, tables and cells), the reading order, alternative text for figures and labels for form fields. This is the only AI step.
- Fixed rules decide. Every proposal is checked against deterministic rules: placement, heading levels, table grids, and that every form field is tagged as a field (including hidden ones, and any the model called decoration). The rules also collect the items a person should confirm.
- Write the tags. The tag tree, language, title, metadata and PDF/UA identifier are written into your original file. Page content and appearance are not changed. If a font needed for tagging is missing, a metric-compatible substitute is embedded; glyph shapes can differ slightly, and each case is listed in the report.
- Check again, and report. veraPDF runs on the output. The report says "passes automated checks" or "does not pass" with the failed rules, and lists the items for a person.
What it repairs
- Missing or wrong tags: headings, paragraphs, lists, tables with rows and cells, figures, artifacts for decoration and page furniture.
- Reading order, as proposed by the model and placed by the rules.
- Alternative text for figures, as a proposal for a person to confirm.
- Form fields: tagged as fields with a proposed label (tooltip).
- Document language, title and the "display document title" setting.
- Scanned pages: recognised text so a screen reader has something to read.
- Metadata details that checkers fail on, such as unnamed optional-content configurations.
What it cannot do
Read this before you decide. These are the limits we know about from our own test; the pilot is the way to find out how your documents behave.
- A checker pass is not accessibility, and not legal conformance. veraPDF tests what a machine can test: that required structures exist and are well formed. It cannot tell whether a heading is really a heading, whether the alt text describes the picture, or whether a table's headers are the right ones. No checker can certify a document against a law.
- Text-grouping mistakes can pass the checker. In our blind test a reviewer found grouping errors in 7 of 20 documents (list items split at the wrong line, a word attached to the wrong block, two form questions merged), and six of those documents had passed the checker. We changed the grouping rules afterwards, on those same files; new documents are the real test. The report points you at the pages to look at.
- Forms are the weakest. In the blind test, 2 of 5 forms passed with no edits, against 8 of 8 text documents and 3 of 3 scanned ones. Field labels are proposals; complex layouts with many checkboxes need the closest look.
- Alt text is proposed, not known. The model describes what it sees. It does not know what the picture is for in your document. Treat every proposal as a draft.
- No person checks every page. Pagorin's review is a second AI pass against fixed rules. The report tells you plainly which items a person should confirm; you, or a reviewer you choose, make the final call.
- Existing tags are replaced, not merged. If your file already has good tags, they are rebuilt from the page content. Most of the files in our test were already tagged, badly; untagged born-digital files are less tested.
- It does not edit your content. It will not fix colour contrast, rewrite text, replace an image of text with real text, or add captions to media. If the page content itself is the barrier, tagging does not remove it.
- Tested on short English documents. Our test used files of 30 pages or fewer, in English, with one checker (veraPDF). Longer files, other languages and other checkers (PAC, Acrobat) are untested.
- Password-protected files cannot be processed. Remove the password first.
What our test showed
October 2026, 20 real PDFs from municipal, school-board, college and provincial or state sites in the US and Canada (8 text documents, 5 forms, 4 with tables, 3 scanned), run once with the code frozen.
| Measure | Result |
|---|---|
| Passed the checker before repair | 0 of 20 |
| Passed with a metadata-only fix (no retagging) | 2 of 20 |
| Passed after Pagorin, no human edits | 16 of 20 (text 8/8, scanned 3/3, tables 3/4, forms 2/5) |
| Median time for a reviewer to check and note corrections on the four that failed | 3.4 minutes per document |
| Documents where the reviewer found grouping errors | 7 of 20, six of which had passed the checker |
| Processing time | median 0.8 minutes per document |
After the test, the four failure causes and the grouping rules were fixed and the same files re-run: 20 of 20 pass. Because the fixes were made against those files, that second number is not evidence for documents we have not seen. The pilot exists so you can see your own numbers.
About the checker
veraPDF is an open-source PDF/A and PDF/UA validator developed with the PDF Association. Pagorin uses its PDF/UA-1 profile and reports its result as it comes: no failed rules, or a list of failed rules. We chose an independent checker so the thing that decides "passes" is not the thing that did the repair.
See it on your own documents
Up to 5 PDFs, 25 pages in total, US$99 one time. Repaired files, checker results and a per-document list of what still needs a person, within 5 business days.