Can LlamaParse process a PDF that mixes digital and scanned pages?
LlamaParse processed the scanned page in a PDF that also contained digital pages. Its Markdown included the scanned worksheet’s text, readings, identifiers and times.
1 of 1 test case passed
Every test case in this scenario has a result.
The test case
Each test case is judged on its own: Pass, Fail, Not gradable, or Untested. The scenario result above is based on this test case.
Mixed pages — scanned page not skippedPassEvidence
[ { "page_number": 1, "markdown": "# Equipment service report\n\nCLIENT\n\nBraithe Estuary Partnership\nEstuary House, Vardenne Quay\nBraithe BR3 4LN\n\n<table>\n <tr>\n <td>Job reference</td>\n <td><strong>KAL-ESR-4471</strong></td>\n </tr>\n <tr>\n <td>Date … [1,391 characters in the file]", "header": "Kirkhollow Analytical Laboratories Ltd Job KAL-ESR-4471", "footer": "KAL-ESR-4471 Page 1 of 3", "success": true }, { "page_number": 2, "markdown": "## Kirkhollow Analytical Laboratories Ltd FIELD SERVICE\n\n## Service worksheet\n\n**Job reference**: KAL-ESR-4471\n\n**Instrument serial**: GK-2214-77\n\n**Engineer**: **R. Tarbert**\n\n**Date**: **29 January 2026**\n\n### CHECKS AND READINGS\n\n**Flow … [985 characters in the file]", "footer": "Service worksheet · KAL-ESR-4471 Page 2 of 3", "success": true }, { "page_number": 3, "markdown": "## Parts fitted\n\n<table>\n <thead>\n <tr>\n <th>Part</th>\n <th>Code</th>\n <th>Quantity</th>\n </tr>\n </thead>\n <tbody>\n <tr>\n <td>Pump tubing set</td>\n <td>PT-114</td>\n <td>1</td>\n </tr> … [993 characters in the file]", "header": "Kirkhollow Analytical Laboratories Ltd Job KAL-ESR-4471", "footer": "KAL-ESR-4471 Page 3 of 3", "success": true } ]
API response: the job and its three page results
Copied from Output file (JSON), markdown › pages · an excerpt
Open the whole JSON file ↗Kirkhollow Analytical Laboratories Ltd Job KAL-ESR-4471 # Equipment service report CLIENT Braithe Estuary Partnership Estuary House, Vardenne Quay Braithe BR3 4LN <table> <tr> <td>Job reference</td> <td><strong>KAL-ESR-4471</strong></td> </tr> <tr> <td>Date of visit</td> <td><strong>29 January 2026</strong></td> </tr> <tr> <td>Engineer</td> <td><strong>R. Tarbert</strong></td> </tr> <tr> <td>Instrument</td> <td><strong>Kestrel 400 turbidity analyser</strong></td> </tr> <tr> <td>Location</td> <td><strong>Vardenne Quay pumping station</strong></td> </tr> <tr> <td>Service interval</td> <td><strong>Twelve months</strong></td> </tr> </table> ### Reported fault Intermittent baseline noise on channel 2, reported by the Partnership on 21 January. The analyser had been running without attention since the annual service in January 2025. ### Work carried out The flow cell was removed, stripped and cleaned, and the pump tubing set replaced. The optical window was found to be lightly fouled on the inner face; it was cleaned rather than replaced, and should be inspected again at the next visit. The analyser was recalibrated against the two-point standards and left running on channel 2 for an hour before the site was handed back. The completed worksheet is bound in as page 2 of this report. KAL-ESR-4471 Page 1 of 3 --- ## Kirkhollow Analytical Laboratories Ltd FIELD SERVICE ## Service worksheet **Job reference**: KAL-ESR-4471 **Instrument serial**: GK-2214-77 **Engineer**: **R. Tarbert** **Date**: **29 January 2026** ### CHECKS AND READINGS **Flow cell condition on arrival**: **Fouled, inner face** **Flow cell pressure after service**: **2.4 bar** **Zero drift over 30 minutes**: **0.003 mg/l** **Span recovery against standard**: **99.4 per cent** **Lamp hours at service**: **8,140** **Result**: **Pass** ### Calibration certificate SR-4471/2 Analyser left in service on channel 2. Optical window to be inspected at the next visit. ### TIME ON SITE **Arrived**: **29 January 2026, 09:15** **Left**: **29 January 2026, 13:40** **Chargeable time**: **4 hours 25 minutes** **Next service due**: **January 2027** ### RECEIVED BY **Name**: **M. Cairney** **Position**: **Duty operator, Vardenne Quay** **Date**: **29 January 2026** [signature: R. Tarbert] Engineer's signature Service worksheet · KAL-ESR-4471 Page 2 of 3 --- Kirkhollow Analytical Laboratories Ltd Job KAL-ESR-4471 ## Parts fitted <table> <thead> <tr> <th>Part</th> <th>Code</th> <th>Quantity</th> </tr> </thead> <tbody> <tr> <td>Pump tubing set</td> <td>PT-114</td> <td>1</td> </tr> <tr> <td>Flow cell O-ring, 12 mm</td> <td>OR-0912</td> <td>2</td> </tr> <tr> <td>Inlet filter, 40 micron</td> <td>IF-4004</td> <td>1</td> </tr> </tbody> </table> ## Declaration The work described in this report was carried out to the standard set out in the service agreement. The analyser was left in service and calibrated. The next annual service falls due in January 2027. <table> <tr> <td>Engineer</td> <td><strong>R. Tarbert</strong></td> </tr> <tr> <td>Countersigned</td> <td><strong>Dr A. J. Prosser</strong></td> </tr> <tr> <td>Report issued</td> <td><strong>2 February 2026</strong></td> </tr> </table> KAL-ESR-4471 Page 3 of 3
| ✓ | Expected: The scanned page’s text appears in the output alongside the digital pages, rather than being silently skipped.Found: The scanned page’s text, including all six readings, identifiers and times, appeared in Markdown. Both source and output show 2.4 bar and 8,140 lamp hours. |
The scanned page had no text layer, yet its contents appeared in the Markdown. The test passes because the page was processed; differences in table formatting do not change whether it was skipped.
Different page structures. The scanned worksheet’s label-and-value rows became bold text lines, while the digital pages’ rows appeared in tables. A table parser would find tables on two of the three pages.
Signature annotation. For the engineer’s signature, LlamaParse added a named signature annotation, although no letters are legible in the handwritten mark itself.
Configuration and setup
How this tool was set up for the run and what the test needed in place. Each row is a fact from the run's records; a fact the records do not hold is left out, not guessed.
How this scenario is graded
How we decide Pass, Fail and Not gradable. The same rules apply to every tool tested on this scenario.
Each test case gets one result per tool: Pass, Fail or Not gradable. A test case we haven't run yet shows Untested. There are no partial results.
- Pass: the tool did everything the test expected, and nothing it said contradicts the correct answer.
- Fail: at least one expected behaviour clearly didn't happen; the test case's result says which one and quotes the tool.
- Not gradable: our evidence couldn't settle the outcome (for example a record we needed is missing). It is never counted as a fail, and the test case's result says what's missing.
Where this sits in the benchmark
This page is one cell of a larger study: one tool, one scenario. Only this benchmark's frame appears here.
| Level | Name | Scope |
|---|---|---|
| Benchmark | Converting a complex PDF into clean Markdown with a hosted API → | 12 scenarios · 13 tools |
| Capability | Scanned Document OCR → | |
| Scenario | A document mixing digital and scanned pages → | |
| Tool | LlamaParse → |
Global scenario definition → · Global capability definition → · LlamaParse product page →
History of this result
What has happened to this result since it was first published. Runs and grades are never overwritten: a retest or a re-grade publishes a new result and keeps the earlier one readable.
Act on this result
Nothing filed here edits the run or the grade. A challenge opens a review, and a review can produce a new run or a re-grade — which becomes the current result and leaves this one in the history.
You run the same kind of test against your own setup and get the same behaviour.
Agree →Yours behaves differently. Tell us what you got, with a screenshot if you have one.
Disagree →Something here is wrong — a reference value, a transcription, a grade.
Report an issue →Tell us what changed and we schedule a rerun of the failing test case. The old result stays as history.
Vendor notice →The same record is available as structured data through the AI Demos MCP server, with the counts, the coverage and every per-test-case reason carried as fields.
Verify the proof files
These files support this result. Open a file to inspect the original evidence.
File fingerprints (SHA-256)
A fingerprint identifies the exact file used for this result.