The parser preserves document hierarchy across most sections of the long report, keeping headings and supporting text structurally aligned through the majority of the output.
What was measured
Reading Order & Structure
Maintains headings, sections, column order, document hierarchy, and overall flow.
decisive for this rankingtransformation
Clean Markdown requires the original reading order, headings, sections, and hierarchy to be maintained correctly. (3 of 3 judges)
What was given, what came back
Test input: Hybrid Earnings Report · pdf · group: hybrid-earnings-report
Input — what we sent

Hybrid Earnings Report
A long, real-world hybrid annual report used to benchmark end-to-end PDF-to-markdown conversion. It combines native text, financial tables, charts/graphics, and scanned signature/stamp regions, stressing preservation of document structure, reading order, and embedded visual content across a multi-section report.
Why this input is hard
- · Native digital text extraction
- · Complex financial table preservation
- · Chart and graphic retention
- · Image-based signatures and stamps
- · Reading order across a long multi-section report
- · Markdown quality and consistency
Output — unretouched

Also checked on this input — same tool, 4 other criteria
Complex Document Handling✓ WorkedThe tool handles an 84-page mixed-content annual report end-to-end, including tables, charts, and scanned signature/stamp regions, and returns usable markdown output without manual correction.Markdown Quality✓ WorkedThe export is usable markdown rather than a flat text dump: it includes an overall markdown file plus page-wise markdown files delivered in a downloadable ZIP.Table Preservation✓ WorkedThe financial table is reconstructed into a usable structured layout without losing the relationships between headers, rows, and corresponding values.Visual Content Retention✓ WorkedVisual assets are extracted into page-specific folders, keeping charts, signatures, and other document elements tied to their source pages instead of collapsing them into one consolidated output.
Provenance
- Observation
- d89c69f3-025a-4dd1-9d85-6524482d5b29
- Evidence run
- 6e3160de-fe46-4b45-b071-72560b5c5d0e
- Study
- Convert a Complex PDF into Clean Markdown with an API
- Research task
- 86b9h7t37
- Tested at
- not recorded
- Source
- first-party
- Evidence state
- verified
- Proof shown
- input + output shown
- Cost / latency
- not captured
- Repeat run
- not captured
- Tester
- not captured
The last three rows are honest blanks, not placeholders — our capture has no field for them yet.
Query this
get_evidence({
tool: "mistral-ai",
scenario: "hybrid-earnings-report"
})MCP · mcp.aidemos.com/api/mcp
Free with attribution.
Same input, same check — 7 other tools
measured on Reading Order & Structure
Extend AI✓ WorkedMaintains report hierarchy and reading flow in an 84-page annual report, keeping section text, bullets, and business narrative aligned instead of flattening them.Landing AI✗ FailedFlattens a top-level page heading into plain text, losing heading semantics on a page that should read as a structured annual-report story page.LlamaParse✓ WorkedKeeps the report's heading-and-paragraph sequence intact instead of flattening the page into disconnected text blocks.Nutrient.io✓ WorkedPreserves the section hierarchy and bullet-point reading order on the sample page, keeping the 'A Growth Story Again' heading tied to its paragraph and 4 bullets in sequence.Reducto✓ WorkedLinearizes a two-column page correctly, reading the full left column, including all four bullets, before the right-column continuation appears, with no interleaving or sequence inversion.Tensorlake✓ WorkedPreserves heading order and section relationships in an 84-page hybrid annual report, keeping the narrative, bullets, and figure placement aligned with the source flow.Upstage AI✗ FailedBreaks the two-column reading order on the annual-report page, so headings and body text no longer follow the source navigation cleanly.
This evidence is published in
Real inputs and real outputs, no retouching · every cell queryable via API & MCP · aidemos.com