markitdown icon
developer-tools

markitdown

Fast native-PDF text extraction for markdown, but structure, charts, images, and scans are unreliable.

Visit markitdown
Native PDFsInconsistent tablesScanned OCR fallbackFast runtime
TL;DR — our verdictUpdated July 2026 · 15 test artifacts

Fast text extraction, weak structural fidelity

Where it wins
  • You only need fast plain-text extraction from native-digital PDFs.
  • You can tolerate flat headings and inconsistent table parsing.
  • You can supply an external OpenAI llm_client for scanned PDFs.
Main limitation
  • You need reliable tables, charts, or figure retention.
Pricing (verified plans)
Open source $0
Strongest test artifacts

Our take

MarkItDown is a good fit when you only need quick plain-text extraction from native PDFs. In this benchmark it kept prose intact and processed long files quickly, but tables were inconsistent, headings flattened, charts became unusable strings, images disappeared, and scanned PDFs produced nothing unless an external OpenAI client was configured.

Walkthrough of MarkItDown converting the table-heavy financial report.

In-Depth Review

Our detailed analysis of markitdown — features, performance, and real-world testing.

AD
AI Demos Team
Expert Reviewer
Verified Review

Feature-by-Feature Breakdown

Native PDF Text Extraction
Preserved
Test Summary
Feature tested: Native PDF Text Extraction
Result: Partial — Preserved

Feature tested: Native PDF Text Extraction

Result: Partial

Verdict: Preserved

Expected behavior: Extracts running prose from native-digital PDFs into readable text/Markdown, as exercised on the hybrid earnings report, the 18-page financial report, the Target.com/mobile paragraph, and the Additional Notes section. The evidence shows strong capture of plain prose, including long reports, though document structure can leak through or be flattened.

Test case: Image → Image

Input type: Image

Input used: Input artifact (Image): Source paragraph crop from the Target annual report. — markitdown_input1_hybridearnings_target_paragraph.png

Observed output: Output artifact (Image): The Target.com & mobile paragraph was extracted cleanly, preserving the full sentence across line breaks. — markitdown_input1_hybridearnings_target_para_parsed_success.png

Input artifact: Input artifact (Image): Source paragraph crop from the Target annual report. — markitdown_input1_hybridearnings_target_paragraph.png

Output artifact: Output artifact (Image): The Target.com & mobile paragraph was extracted cleanly, preserving the full sentence across line breaks. — markitdown_input1_hybridearnings_target_para_parsed_success.png

What changed: Image transformed into Image

Test case: Image → Image

Input type: Image

Input used: Input artifact (Image): Additional Notes section from the quarterly financial report. — markitdown_input2_financialpdf_additional_notes.png

Observed output: Output artifact (Image): The Additional Notes text was extracted with high character accuracy, including the disclosure text and share counts. — markitdown_input2_financialpdf_additional_notes_parsed_success.png

Input artifact: Input artifact (Image): Additional Notes section from the quarterly financial report. — markitdown_input2_financialpdf_additional_notes.png

Output artifact: Output artifact (Image): The Additional Notes text was extracted with high character accuracy, including the disclosure text and share counts. — markitdown_input2_financialpdf_additional_notes_parsed_success.png

What changed: Image transformed into Image

Why it matters / Conclusion: Strong for plain prose on native PDFs, including long ones, but it does not preserve document structure.

Extracts running prose from native-digital PDFs into readable text/Markdown, as exercised on the hybrid earnings report, the 18-page financial report, the Target.com/mobile paragraph, and the Additional Notes section. The evidence shows strong capture of plain prose, including long reports, though document structure can leak through or be flattened.

image
Input artifact for "Native PDF Text Extraction" test: Source paragraph crop from the Target annual report., markitdown_input1_hybridearnings_target_paragraph.png
Source paragraph crop from the Target annual report.
image
Output artifact for "Native PDF Text Extraction" test: The Target.com & mobile paragraph was extracted cleanly, preserving the full sentence across line breaks., markitdown_input1_hybridearnings_target_para_parsed_success.png
The Target.com & mobile paragraph was extracted cleanly, preserving the full sentence across line breaks.
image
Input artifact for "Native PDF Text Extraction" test: Additional Notes section from the quarterly financial report., markitdown_input2_financialpdf_additional_notes.png
Additional Notes section from the quarterly financial report.
image
Output artifact for "Native PDF Text Extraction" test: The Additional Notes text was extracted with high character accuracy, including the disclosure text and share counts., markitdown_input2_financialpdf_additional_notes_parsed_success.png
The Additional Notes text was extracted with high character accuracy, including the disclosure text and share counts.
Bottom Line
Strong for plain prose on native PDFs, including long ones, but it does not preserve document structure.
From our researchPDF to markdown using open source libraries
Table Extraction
Mixed
Test Summary
Feature tested: Table Extraction
Result: Failed — Mixed

Feature tested: Table Extraction

Result: Failed

Verdict: Mixed

Expected behavior: Reconstructs tables from PDF pages into structured table form or Markdown/text, using the U.S. Stores properties table and the financial-summary tables in the reports. Simple tables can survive, but denser financial tables flatten, misalign, or lose header-to-value mapping.

Test case: Image → Image

Input type: Image

Input used: Input artifact (Image): Input — markitdown_input1_hybridearnings_financial_table.png

Observed output: Output artifact (Image): The 2015 annual report financial summary was flattened into plain text, losing table structure. — markitdown_input1_hybridearnings_financial_table_parsed_failed.png

Input artifact: Input artifact (Image): Input — markitdown_input1_hybridearnings_financial_table.png

Output artifact: Output artifact (Image): The 2015 annual report financial summary was flattened into plain text, losing table structure. — markitdown_input1_hybridearnings_financial_table_parsed_failed.png

What changed: Image transformed into Image

Test case: Image → Image

Input type: Image

Input used: Input artifact (Image): Input — markitdown_input1_hybridearnings_properties_table.png

Observed output: Output artifact (Image): The U.S. Stores table was extracted cleanly enough to keep the state names, store counts, and square-footage values aligned. — markitdown_input1_hybridearnings_properties_table_parsed_success.png

Input artifact: Input artifact (Image): Input — markitdown_input1_hybridearnings_properties_table.png

Output artifact: Output artifact (Image): The U.S. Stores table was extracted cleanly enough to keep the state names, store counts, and square-footage values aligned. — markitdown_input1_hybridearnings_properties_table_parsed_success.png

What changed: Image transformed into Image

Test case: Image → Image

Input type: Image

Input used: Input artifact (Image): Input — markitdown_input2_financialpdf_business_results_table.png

Observed output: Output artifact (Image): The quarterly business results table was compressed into a single line, so row and column structure were not preserved. — markitdown_input2_financialpdf_business_results_table_parsed_failed.png

Input artifact: Input artifact (Image): Input — markitdown_input2_financialpdf_business_results_table.png

Output artifact: Output artifact (Image): The quarterly business results table was compressed into a single line, so row and column structure were not preserved. — markitdown_input2_financialpdf_business_results_table_parsed_failed.png

What changed: Image transformed into Image

Test case: Image → Image

Input type: Image

Input used: Input artifact (Image): Input — markitdown_input2_financialpdf_segment_table.png

Observed output: Output artifact (Image): The segment sales and profit table was left as plain text, making column mapping unpredictable. — markitdown_input2_financialpdf_segment_table_parsed_failed.png

Input artifact: Input artifact (Image): Input — markitdown_input2_financialpdf_segment_table.png

Output artifact: Output artifact (Image): The segment sales and profit table was left as plain text, making column mapping unpredictable. — markitdown_input2_financialpdf_segment_table_parsed_failed.png

What changed: Image transformed into Image

Test case: PDF document → Text/code file

Input type: PDF document

Input used: Input artifact (PDF document): Input — input2_financialpdf.pdf

Observed output: Output artifact (Text/code file): The business results and segment tables were left as plain text in places, while the financial position table became a malformed Markdown table with empty columns and misaligned headers. — markitdown_input2_financialpdf_output.md

Input artifact: Input artifact (PDF document): Input — input2_financialpdf.pdf

Output artifact: Output artifact (Text/code file): The business results and segment tables were left as plain text in places, while the financial position table became a malformed Markdown table with empty columns and misaligned headers. — markitdown_input2_financialpdf_output.md

What changed: PDF document transformed into Text/code file

Why it matters / Conclusion: Selective table parsing is the main weakness here: simple tables can survive, but dense financial tables are unreliable.

Reconstructs tables from PDF pages into structured table form or Markdown/text, using the U.S. Stores properties table and the financial-summary tables in the reports. Simple tables can survive, but denser financial tables flatten, misalign, or lose header-to-value mapping.

image
Input artifact for "Table Extraction" test: Input, markitdown_input1_hybridearnings_financial_table.png
image
Output artifact for "Table Extraction" test: The 2015 annual report financial summary was flattened into plain text, losing table structure., markitdown_input1_hybridearnings_financial_table_parsed_failed.png
The 2015 annual report financial summary was flattened into plain text, losing table structure.
image
Input artifact for "Table Extraction" test: Input, markitdown_input1_hybridearnings_properties_table.png
image
Output artifact for "Table Extraction" test: The U.S. Stores table was extracted cleanly enough to keep the state names, store counts, and square-footage values aligned., markitdown_input1_hybridearnings_properties_table_parsed_success.png
The U.S. Stores table was extracted cleanly enough to keep the state names, store counts, and square-footage values aligned.
image
Input artifact for "Table Extraction" test: Input, markitdown_input2_financialpdf_business_results_table.png
image
Output artifact for "Table Extraction" test: The quarterly business results table was compressed into a single line, so row and column structure were not preserved., markitdown_input2_financialpdf_business_results_table_parsed_failed.png
The quarterly business results table was compressed into a single line, so row and column structure were not preserved.
image
Input artifact for "Table Extraction" test: Input, markitdown_input2_financialpdf_segment_table.png
image
Output artifact for "Table Extraction" test: The segment sales and profit table was left as plain text, making column mapping unpredictable., markitdown_input2_financialpdf_segment_table_parsed_failed.png
The segment sales and profit table was left as plain text, making column mapping unpredictable.
INPUT
input2_financialpdf.pdf
OUTPUT
markitdown_input2_financialpdf_output.md
Loading file...
The business results and segment tables were left as plain text in places, while the financial position table became a malformed Markdown table with empty columns and misaligned headers.
Bottom Line
Selective table parsing is the main weakness here: simple tables can survive, but dense financial tables are unreliable.
From our researchPDF to markdown using open source libraries
Chart Extraction
Failed
Test Summary
Feature tested: Chart Extraction
Result: Failed — Failed

Feature tested: Chart Extraction

Result: Failed

Verdict: Failed

Expected behavior: Processes embedded charts from PDFs into structured data or chart-preserving output, as tested on the financial highlights chart and the hybrid earnings report. The evidence shows labels and values often become jumbled or reduced, so the recovered chart data is unreliable.

Test case: Image → Image

Input type: Image

Input used: Input artifact (Image): Input — markitdown_input1_hybridearnings_financial_charts.png

Observed output: Output artifact (Image): The chart values were extracted as reversed, jumbled numeric strings, which makes the financial highlights unusable as chart data. — markitdown_input1_hybridearnings_financial_charts_parsed_failure.png

Input artifact: Input artifact (Image): Input — markitdown_input1_hybridearnings_financial_charts.png

Output artifact: Output artifact (Image): The chart values were extracted as reversed, jumbled numeric strings, which makes the financial highlights unusable as chart data. — markitdown_input1_hybridearnings_financial_charts_parsed_failure.png

What changed: Image transformed into Image

Why it matters / Conclusion: Charts were not recoverable in this benchmark; the output is unusable as structured financial data.

Processes embedded charts from PDFs into structured data or chart-preserving output, as tested on the financial highlights chart and the hybrid earnings report. The evidence shows labels and values often become jumbled or reduced, so the recovered chart data is unreliable.

image
Input artifact for "Chart Extraction" test: Input, markitdown_input1_hybridearnings_financial_charts.png
image
Output artifact for "Chart Extraction" test: The chart values were extracted as reversed, jumbled numeric strings, which makes the financial highlights unusable as chart data., markitdown_input1_hybridearnings_financial_charts_parsed_failure.png
The chart values were extracted as reversed, jumbled numeric strings, which makes the financial highlights unusable as chart data.
Bottom Line
Charts were not recoverable in this benchmark; the output is unusable as structured financial data.
From our researchPDF to markdown using open source libraries
Document Hierarchy Preservation
Failed
Test Summary
Feature tested: Document Hierarchy Preservation
Result: Failed — Failed

Feature tested: Document Hierarchy Preservation

Result: Failed

Verdict: Failed

Expected behavior: Attempts to carry section structure into Markdown by preserving headings and outline levels, as tested on 'PART I / Item 1. Business' and 'I. Summary of Operating Performance.' In the observed PDFs, the hierarchy collapsed into body text instead of staying as headings.

Test case: Image → Image

Input type: Image

Input used: Input artifact (Image): Input — markitdown_input1_hybridearnings_item_1_header.png

Observed output: Output artifact (Image): The 'PART I / Item 1. Business' section appeared as flat text with no Markdown heading markers. — markitdown_input1_hybridearnings_item_1_parsed_failed.png

Input artifact: Input artifact (Image): Input — markitdown_input1_hybridearnings_item_1_header.png

Output artifact: Output artifact (Image): The 'PART I / Item 1. Business' section appeared as flat text with no Markdown heading markers. — markitdown_input1_hybridearnings_item_1_parsed_failed.png

What changed: Image transformed into Image

Test case: Image → Image

Input type: Image

Input used: Input artifact (Image): Input — markitdown_input2_financialpdf_summary_section.png

Observed output: Output artifact (Image): The 'I. Summary of Operating Performance' section was flattened into body text, so the document hierarchy was not preserved. — markitdown_input2_financialpdf_summary_section_parsed_failed.png

Input artifact: Input artifact (Image): Input — markitdown_input2_financialpdf_summary_section.png

Output artifact: Output artifact (Image): The 'I. Summary of Operating Performance' section was flattened into body text, so the document hierarchy was not preserved. — markitdown_input2_financialpdf_summary_section_parsed_failed.png

What changed: Image transformed into Image

Why it matters / Conclusion: The document outline is lost entirely; this is not a heading-preserving Markdown converter in the tested setup.

Attempts to carry section structure into Markdown by preserving headings and outline levels, as tested on 'PART I / Item 1. Business' and 'I. Summary of Operating Performance.' In the observed PDFs, the hierarchy collapsed into body text instead of staying as headings.

image
Input artifact for "Document Hierarchy Preservation" test: Input, markitdown_input1_hybridearnings_item_1_header.png
image
Output artifact for "Document Hierarchy Preservation" test: The 'PART I / Item 1. Business' section appeared as flat text with no Markdown heading markers., markitdown_input1_hybridearnings_item_1_parsed_failed.png
The 'PART I / Item 1. Business' section appeared as flat text with no Markdown heading markers.
image
Input artifact for "Document Hierarchy Preservation" test: Input, markitdown_input2_financialpdf_summary_section.png
image
Output artifact for "Document Hierarchy Preservation" test: The 'I. Summary of Operating Performance' section was flattened into body text, so the document hierarchy was not preserved., markitdown_input2_financialpdf_summary_section_parsed_failed.png
The 'I. Summary of Operating Performance' section was flattened into body text, so the document hierarchy was not preserved.
Bottom Line
The document outline is lost entirely; this is not a heading-preserving Markdown converter in the tested setup.
From our researchPDF to markdown using open source libraries
Reading Sequence Preservation
Mixed
Test Summary
Feature tested: Reading Sequence Preservation
Result: Partial — Mixed

Feature tested: Reading Sequence Preservation

Result: Partial

Verdict: Mixed

Expected behavior: Keeps page content in logical order on straightforward layouts, as seen in the table of contents, but can merge content into a jumbled block on the two-column welcome page and directors list. This is the tool’s page-level reading-flow behavior rather than content extraction itself.

Test case: Image → Image

Input type: Image

Input used: Input artifact (Image): Two-column welcome message page from the Target annual report. — markitdown_input1_hybridearnings_welcome_message.png

Observed output: Output artifact (Image): The left and right columns were merged into a single jumbled table-like block, breaking reading order. — markitdown_input1_hybridearnings_welcome_message_parsed_failed.png

Input artifact: Input artifact (Image): Two-column welcome message page from the Target annual report. — markitdown_input1_hybridearnings_welcome_message.png

Output artifact: Output artifact (Image): The left and right columns were merged into a single jumbled table-like block, breaking reading order. — markitdown_input1_hybridearnings_welcome_message_parsed_failed.png

What changed: Image transformed into Image

Test case: Image → Image

Input type: Image

Input used: Input artifact (Image): Table of contents page from the quarterly financial report. — markitdown_input2_financialpdf_toc.png

Observed output: Output artifact (Image): The section sequence stayed in the right order even though the hierarchy and dot-leader formatting were flattened. — markitdown_input2_financialpdf_toc_parsed_failed.png

Input artifact: Input artifact (Image): Table of contents page from the quarterly financial report. — markitdown_input2_financialpdf_toc.png

Output artifact: Output artifact (Image): The section sequence stayed in the right order even though the hierarchy and dot-leader formatting were flattened. — markitdown_input2_financialpdf_toc_parsed_failed.png

What changed: Image transformed into Image

Why it matters / Conclusion: It can keep sequence on straightforward pages, but two-column layouts are where reading order falls apart.

Keeps page content in logical order on straightforward layouts, as seen in the table of contents, but can merge content into a jumbled block on the two-column welcome page and directors list. This is the tool’s page-level reading-flow behavior rather than content extraction itself.

image
Input artifact for "Reading Sequence Preservation" test: Two-column welcome message page from the Target annual report., markitdown_input1_hybridearnings_welcome_message.png
Two-column welcome message page from the Target annual report.
image
Output artifact for "Reading Sequence Preservation" test: The left and right columns were merged into a single jumbled table-like block, breaking reading order., markitdown_input1_hybridearnings_welcome_message_parsed_failed.png
The left and right columns were merged into a single jumbled table-like block, breaking reading order.
image
Input artifact for "Reading Sequence Preservation" test: Table of contents page from the quarterly financial report., markitdown_input2_financialpdf_toc.png
Table of contents page from the quarterly financial report.
image
Output artifact for "Reading Sequence Preservation" test: The section sequence stayed in the right order even though the hierarchy and dot-leader formatting were flattened., markitdown_input2_financialpdf_toc_parsed_failed.png
The section sequence stayed in the right order even though the hierarchy and dot-leader formatting were flattened.
Bottom Line
It can keep sequence on straightforward pages, but two-column layouts are where reading order falls apart.
From our researchPDF to markdown using open source libraries
Embedded Image Preservation
Failed
Test Summary
Feature tested: Embedded Image Preservation
Result: Failed — Failed

Feature tested: Embedded Image Preservation

Result: Failed

Verdict: Failed

Expected behavior: Retains embedded non-text visuals such as logos, graphics, cover art, and other image assets during conversion. In the tested native-PDF workflow, the Target annual report cover logo and other graphics were omitted rather than preserved in place.

Test case: Image → Image

Input type: Image

Input used: Input artifact (Image): Input — markitdown_input1_hybridearnings_logo.png

Observed output: Output artifact (Image): The cover graphic and Target bullseye logo collapsed to plain title text, with no image placeholder preserved. — markitdown_input1_hybridearnings_logo_parsed_failed.png

Input artifact: Input artifact (Image): Input — markitdown_input1_hybridearnings_logo.png

Output artifact: Output artifact (Image): The cover graphic and Target bullseye logo collapsed to plain title text, with no image placeholder preserved. — markitdown_input1_hybridearnings_logo_parsed_failed.png

What changed: Image transformed into Image

Test case: Image → Image

Input type: Image

Input used: Input artifact (Image): Input — markitdown_input1_hybridearnings_welcome_message.png

Observed output: Output artifact (Image): The page retained text only and dropped the surrounding visual context, matching the report's omission of embedded graphics. — markitdown_input1_hybridearnings_welcome_message_parsed_failed.png

Input artifact: Input artifact (Image): Input — markitdown_input1_hybridearnings_welcome_message.png

Output artifact: Output artifact (Image): The page retained text only and dropped the surrounding visual context, matching the report's omission of embedded graphics. — markitdown_input1_hybridearnings_welcome_message_parsed_failed.png

What changed: Image transformed into Image

Test case: PDF document → Text/code file

Input type: PDF document

Input used: Input artifact (PDF document): Input — input1_hybridearnings.pdf

Observed output: Output artifact (Text/code file): The Target bullseye cover graphic, logo, and signature assets were omitted entirely and no placeholders were emitted. — markitdown_input1_hybridearnings_output.md

Input artifact: Input artifact (PDF document): Input — input1_hybridearnings.pdf

Output artifact: Output artifact (Text/code file): The Target bullseye cover graphic, logo, and signature assets were omitted entirely and no placeholders were emitted. — markitdown_input1_hybridearnings_output.md

What changed: PDF document transformed into Text/code file

Why it matters / Conclusion: Images, logos, and scanned visuals were omitted in the tested native-PDF workflow.

Retains embedded non-text visuals such as logos, graphics, cover art, and other image assets during conversion. In the tested native-PDF workflow, the Target annual report cover logo and other graphics were omitted rather than preserved in place.

image
Input artifact for "Embedded Image Preservation" test: Input, markitdown_input1_hybridearnings_logo.png
image
Output artifact for "Embedded Image Preservation" test: The cover graphic and Target bullseye logo collapsed to plain title text, with no image placeholder preserved., markitdown_input1_hybridearnings_logo_parsed_failed.png
The cover graphic and Target bullseye logo collapsed to plain title text, with no image placeholder preserved.
image
Input artifact for "Embedded Image Preservation" test: Input, markitdown_input1_hybridearnings_welcome_message.png
image
Output artifact for "Embedded Image Preservation" test: The page retained text only and dropped the surrounding visual context, matching the report's omission of embedded graphics., markitdown_input1_hybridearnings_welcome_message_parsed_failed.png
The page retained text only and dropped the surrounding visual context, matching the report's omission of embedded graphics.
INPUT
input1_hybridearnings.pdf
OUTPUT
markitdown_input1_hybridearnings_output.md
Loading file...
The Target bullseye cover graphic, logo, and signature assets were omitted entirely and no placeholders were emitted.
Bottom Line
Images, logos, and scanned visuals were omitted in the tested native-PDF workflow.
From our researchPDF to markdown using open source libraries
Scanned PDF OCR Conversion
Failed
Test Summary
Feature tested: Scanned PDF OCR Conversion
Result: Failed — Failed

Feature tested: Scanned PDF OCR Conversion

Result: Failed

Verdict: Failed

Expected behavior: Converts scanned PDFs by routing them through OCR via an external OpenAI llm_client/API. In the tested setup, a scanned research paper produced no Markdown output because OCR was skipped, showing that the workflow depends on that external OCR path.

Test case: PDF document → Text prompt

Input type: PDF document

Input used: Input artifact (PDF document): Scanned research paper PDF used as the OCR test. — input3_scannedpaper.pdf

Observed output: Output artifact (Text prompt): The scanned PDF did not convert in the standalone open-source workflow.

Input artifact: Input artifact (PDF document): Scanned research paper PDF used as the OCR test. — input3_scannedpaper.pdf

Output artifact: Output artifact (Text prompt): The scanned PDF did not convert in the standalone open-source workflow.

What changed: PDF document transformed into Text prompt

Why it matters / Conclusion: Without an external llm_client/OpenAI integration, scanned PDFs do not produce usable output.

Converts scanned PDFs by routing them through OCR via an external OpenAI llm_client/API. In the tested setup, a scanned research paper produced no Markdown output because OCR was skipped, showing that the workflow depends on that external OCR path.

pdf
input3_scannedpaper.pdf
Scanned research paper PDF used as the OCR test.
OUTPUT
No Markdown output was produced; the output file was 0 bytes because MarkItDown skipped OCR unless an external OpenAI llm_client/API is configured.
Bottom Line
Without an external llm_client/OpenAI integration, scanned PDFs do not produce usable output.
From our researchPDF to markdown using open source libraries
Long-Document Processing
Strong
Test Summary
Feature tested: Long-Document Processing
Result: Passed — Strong

Feature tested: Long-Document Processing

Result: Passed

Verdict: Strong

Expected behavior: Completes long native PDFs without crashing, as shown by the 84-page hybrid earnings report and the 18-page quarterly financial report. Runtime stayed stable even when output quality varied, indicating the tool can process large documents reliably.

Test case: PDF document → Text prompt

Input type: PDF document

Input used: Input artifact (PDF document): 84-page hybrid earnings report. — input1_hybridearnings.pdf

Observed output: Output artifact (Text prompt): The long native PDF completed successfully and quickly, despite degraded structural output.

Input artifact: Input artifact (PDF document): 84-page hybrid earnings report. — input1_hybridearnings.pdf

Output artifact: Output artifact (Text prompt): The long native PDF completed successfully and quickly, despite degraded structural output.

What changed: PDF document transformed into Text prompt

Test case: PDF document → Text prompt

Input type: PDF document

Input used: Input artifact (PDF document): 18-page table-heavy financial report. — input2_financialpdf.pdf

Observed output: Output artifact (Text prompt): The shorter native PDF also completed cleanly and quickly.

Input artifact: Input artifact (PDF document): 18-page table-heavy financial report. — input2_financialpdf.pdf

Output artifact: Output artifact (Text prompt): The shorter native PDF also completed cleanly and quickly.

What changed: PDF document transformed into Text prompt

Why it matters / Conclusion: Runtime is dependable on native PDFs; the limiting factor is output quality, not completion.

Completes long native PDFs without crashing, as shown by the 84-page hybrid earnings report and the 18-page quarterly financial report. Runtime stayed stable even when output quality varied, indicating the tool can process large documents reliably.

pdf
input1_hybridearnings.pdf
84-page hybrid earnings report.
OUTPUT
Processed the 84-page hybrid earnings report in about 8 seconds without crashing, but table, chart, and hierarchy failures persisted throughout.
pdf
input2_financialpdf.pdf
18-page table-heavy financial report.
OUTPUT
Processed the 18-page financial report in about 3 seconds without crashing, with consistent text extraction across the file.
Bottom Line
Runtime is dependable on native PDFs; the limiting factor is output quality, not completion.
From our researchPDF to markdown using open source libraries

Pricing

Open source
$0
MIT; self-hosted library.

Free - $0 - Open Source

✓ Use This If
You only need fast plain-text extraction from native-digital PDFs.
You can tolerate flat headings and inconsistent table parsing.
You can supply an external OpenAI llm_client for scanned PDFs.
✕ Skip This If
You need reliable tables, charts, or figure retention.
You need Markdown heading hierarchy preserved.
You need scanned PDFs to work out of the box without extra OCR setup.
You need images and logos preserved in-place.
developer-toolsdocumentation-toolstext
Yes. It preserved the Target.com & mobile paragraph and the quarterly report's Additional Notes text with high character accuracy, though the denser report leaked headers and page numbers into the text flow.
Mixed. The U.S. stores properties table parsed cleanly, but the financial summary, business results, financial position, and segment tables were flattened, partially parsed, or had misaligned columns.
Not reliably. The financial highlights chart was reduced to reversed or jumbled numeric strings, and the chart labels were detached from the values.
No. Section headers such as PART I / Item 1. Business and I. Summary of Operating Performance were flattened into body text instead of becoming Markdown headings.
No. The scanned research paper produced a 0-byte output file because OCR was skipped unless an external OpenAI llm_client/API was configured.
No. The Target bullseye logo and other cover visuals were dropped without placeholders in the tested native-PDF workflow.
It processed the 84-page hybrid earnings report in about 8 seconds and the 18-page financial report in about 3 seconds, without crashing.
Yes. The report identifies MarkItDown as open source under MIT.

Banner Preview

How the embed badge will look on your site

markitdown featured on AI Demos

Embed HTML

Copy this code to your website source

<a target="_blank" href="https://aidemos.com/tools/markitdown?utm_source=markitdown_embed" style="width: 250px; height: 80px; border-radius:4px;" width="250" height="80"> <img src="https://aidemos-website-images.s3.amazonaws.com/featured.png" alt="markitdown | Featured on AI Demos" style="width: 250px; height: 80px; border-radius:4px;" width="250" height="80"> </a>

Quick Integration Guide

  • 1Copy the HTML code block above.
  • 2Paste it into your site's HTML or CMS editor.
  • 3Banner appears instantly on your page.
  • 4Links back to your tool profile here.
Similar Tools

Similar Tools

Discover more AI tools like markitdown to enhance your workflow.

Comments (0)

Please Log in to join the discussion.

Back to Top