Tool in benchmark · Version 1

Nutrient.io in Converting a complex PDF into clean Markdown with a hosted API

Scenario-level performance from current published Results.

1Passed
5Failed
6No published Result yet

6 of 12 scenarios published

CapabilityScenariosResult
Code Extraction0 pass · 1 fail · 1 of 1 published
Heading & Section Structure1 pass · 0 fail · 1 of 2 published
Reading Order & Layout0 pass · 1 fail · 1 of 1 published
Scanned Document OCR0 pass · 1 fail · 1 of 2 published
Table Extraction0 pass · 1 fail · 1 of 2 published
Text Fidelity0 pass · 1 fail · 1 of 1 published
Figures & Charts0 of 2 published
PassedFailedPublished, different test setNo published Result yet

Where Nutrient.io failed

5 of 6 graded scenarios. Open a Result to see the conversation and the evidence.

Code Extraction

A document containing a code block

Nutrient.io did not preserve the code block in its default PDF-to-Markdown conversion. It returned the Python snippet as a table without a code fence or its original indentation.

View Result →
Reading Order & Layout

A page laid out in multiple columns

Nutrient.io did not consistently preserve natural reading order for a two-column PDF in its default Build pipeline. It placed a masthead line in the middle of a body sentence, although the body columns themselves were read in order on all three pages.

View Result →
Scanned Document OCR

A cleanly scanned document

Nutrient.io did not recover the text from a clean scan using its default conversion. Although the API returned a successful response, the Markdown contained only two newline characters.

View Result →
Table Extraction

A simple, clearly formatted table

Nutrient.io failed to keep the simple table intact in the default Build API run. The output kept all values, row count, and row order, but merged the method and turnaround headers and cells.

View Result →
Text Fidelity

An ordinary digital text document

Nutrient.io failed on ordinary digital text. The returned Markdown kept the words, but four page breaks merged the running header into body text, while two breaks stayed clean.

View Result →

How Nutrient.io performed

Open a capability to explore its scenarios. Each row reports the test set in its published Result.

Code Extraction1 fail
ScenarioPublished outcomesTest coverageResult
A document containing a code block
0 Pass1 Fail0 Not gradable
1 of 1 test case failed
What happened

Nutrient.io did not preserve the code block in its default PDF-to-Markdown conversion. It returned the Python snippet as a table without a code fence or its original indentation.

1/1 assessed1/1 gradablePublished test setView Result →
Heading & Section Structure1 pass1 no Result yet
ScenarioPublished outcomesTest coverageResult
Footnotes at the bottom of the page
1 Pass0 Fail0 Not gradable
1 of 1 test case passed
What happened

Nutrient.io passed this footnote-handling case. The Markdown kept all thirteen notes separate from body paragraphs across all four pages, with matching digits still in the body. The free-tier run returned 10,842 characters of Markdown.

1/1 assessed1/1 gradablePublished test setView Result →
A document with styled headings and subheadingsNo published result
Reading Order & Layout1 fail
ScenarioPublished outcomesTest coverageResult
A page laid out in multiple columns
0 Pass1 Fail0 Not gradable
1 of 1 test case failed
What happened

Nutrient.io did not consistently preserve natural reading order for a two-column PDF in its default Build pipeline. It placed a masthead line in the middle of a body sentence, although the body columns themselves were read in order on all three pages.

1/1 assessed1/1 gradablePublished test setView Result →
Scanned Document OCR1 fail1 no Result yet
ScenarioPublished outcomesTest coverageResult
A cleanly scanned document
0 Pass1 Fail0 Not gradable
1 of 1 test case failed
What happened

Nutrient.io did not recover the text from a clean scan using its default conversion. Although the API returned a successful response, the Markdown contained only two newline characters.

1/1 assessed1/1 gradablePublished test setView Result →
A document mixing digital and scanned pagesNo published result
Table Extraction1 fail1 no Result yet
ScenarioPublished outcomesTest coverageResult
A simple, clearly formatted table
0 Pass1 Fail0 Not gradable
1 of 1 test case failed
What happened

Nutrient.io failed to keep the simple table intact in the default Build API run. The output kept all values, row count, and row order, but merged the method and turnaround headers and cells.

1/1 assessed1/1 gradablePublished test setView Result →
A table that continues across a page breakNo published result
Text Fidelity1 fail
ScenarioPublished outcomesTest coverageResult
An ordinary digital text document
0 Pass1 Fail0 Not gradable
1 of 1 test case failed
What happened

Nutrient.io failed on ordinary digital text. The returned Markdown kept the words, but four page breaks merged the running header into body text, while two breaks stayed clean.

1/1 assessed1/1 gradablePublished test setView Result →
Equations & Mathematical Notation1 no Result yet
ScenarioPublished outcomesTest coverageResult
A document containing mathematical equationsNo published result
Figures & Charts2 no Result yet
ScenarioPublished outcomesTest coverageResult
A document with a data chartNo published result
A document with figures and captionsNo published result

Reading these Results

Published evidence and test coverage answer different questions.

Publication availability

Which scenarios have a Result?

A published Result is public evidence for this tool on one scenario. “No published result” does not say whether testing has taken place.

Test coverage

What does each Result cover?

Assessed includes Pass, Fail and Not gradable. Gradable includes Pass and Fail. Both use the pinned test count in that published Result.

Scenario scope

Out of 12 scenarios

The summary counts each of the 12 scenarios once. A scenario fails when any of its published test cases failed. “No published Result yet” means nothing is public for that scenario; it does not say whether Nutrient.io was tested on it.