--- title: "markitdown" type: "AI Tool" url: "https://aidemos.com/tools/markitdown" description: "See our MarkItDown PDF-to-markdown test: it kept prose intact and handled long files fast, but tables, headings, charts, images, and scans broke." category: "developer-tools" website: "https://github.com/microsoft/markitdown?via=aidemos" published: "2026-07-21T07:41:11.669712+00:00" updated: "2026-07-21T15:24:53.236935+00:00" evidenceCount: 77 verifiedCount: 40 coverage: "dense" --- # markitdown Fast native-PDF text extraction for markdown, but structure, charts, images, and scans are unreliable. ## TL;DR Verdict **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:** Open source $0 `Native PDFs` · `Inconsistent tables` · `Scanned OCR fallback` · `Fast runtime` **Website:** [Visit markitdown](https://github.com/microsoft/markitdown?via=aidemos) ## Evidence (first-party, tested) *77 tested cells · 40/77 artifact-verified. Cite a cell by its Evidence ID, e.g. `ev:markitdown·scanned-research-paper-int-1983-07-issue-333-image-only·bonus-unique-or-anomalous-behaviors`.* | Criterion | Scenario | Verdict | Proof | Evidence ID | | --- | --- | --- | --- | --- | | Bonus: Unique or Anomalous Behaviors | Scanned Research Paper INT 1983-07 Issue 333 (image-only) | ✗ failed | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/markitdown-markitdown-input3-scannedpaper-output-4b7a22c40885.md) | `ev:markitdown·scanned-research-paper-int-1983-07-issue-333-image-only·bonus-unique-or-anomalous-behaviors` | | Bonus: Unique or Anomalous Behaviors | Scanned research paper | ✗ failed | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/markitdown-markitdown-input3-scannedpaper-output-4b7a22c40885.md) | `ev:markitdown·scanned-research-paper·bonus-unique-or-anomalous-behaviors` | | Bonus: Unique or Anomalous Behaviors | Sumitomo Heavy Industries consolidated financial report | ◐ mixed | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/markitdown-markitdown-input2-financialpdf-output-1b08db40e794.md) | `ev:markitdown·sumitomo-heavy-industries-consolidated-financial-report·bonus-unique-or-anomalous-behaviors` | | Bonus: Unique or Anomalous Behaviors | cross-scenario | ⚠ struggled | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/markitdown-markitdown-input2-financialpdf-output-1b08db40e794.md) | `ev:markitdown·cross·bonus-unique-or-anomalous-behaviors` | | Caption/Figure Association | Target 2015 Annual Report | ✗ failed | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/markitdown-markitdown-input1-hybridearnings-financi-2cb55db8537b.png) | `ev:markitdown·target-2015-annual-report·caption-figure-association` | | Caption/Figure Association | Sumitomo Heavy Industries consolidated financial report | ◐ mixed | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/markitdown-markitdown-input2-financialpdf-segment-t-1f6408df9a4e.png) | `ev:markitdown·sumitomo-heavy-industries-consolidated-financial-report·caption-figure-association` | | Caption/Figure Association | Scanned research paper | ✗ failed | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/markitdown-markitdown-input3-scannedpaper-output-4b7a22c40885.md) | `ev:markitdown·scanned-research-paper·caption-figure-association` | | Caption/Figure Association | Image-only scanned research paper | ✗ failed | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/markitdown-markitdown-input3-scannedpaper-output-4b7a22c40885.md) | `ev:markitdown·image-only-scanned-research-paper·caption-figure-association` | | Chart Reconstruction | Target 2015 Annual Report | ✗ failed | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/markitdown-markitdown-input1-hybridearnings-financi-4a794b289971.png) | `ev:markitdown·target-2015-annual-report·chart-reconstruction` | | Chart Reconstruction | Sumitomo Heavy Industries consolidated financial report | ◐ mixed | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/markitdown-markitdown-input2-financialpdf-segment-t-1f6408df9a4e.png) | `ev:markitdown·sumitomo-heavy-industries-consolidated-financial-report·chart-reconstruction` | | Chart Reconstruction | Scanned research paper | ✗ failed | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/markitdown-markitdown-input3-scannedpaper-output-4b7a22c40885.md) | `ev:markitdown·scanned-research-paper·chart-reconstruction` | | Chart Reconstruction | Image-only scanned research paper | ✗ failed | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/markitdown-markitdown-input3-scannedpaper-output-4b7a22c40885.md) | `ev:markitdown·image-only-scanned-research-paper·chart-reconstruction` | | Chart retention | Target 2015 Annual Report | ✗ failed | 👁 observed | `ev:markitdown·target-2015-annual-report·chart-retention` | | Chart retention | Hybrid Earnings Report | ✗ failed | 👁 observed | `ev:markitdown·hybrid-earnings-report·chart-retention` | | Document Hierarchy | Target 2015 Annual Report | ✗ failed | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/markitdown-markitdown-input1-hybridearnings-item-1--d3a3bb4b903b.png) | `ev:markitdown·target-2015-annual-report·document-hierarchy` | | Document Hierarchy | Sumitomo Heavy Industries consolidated financial report | ✗ failed | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/markitdown-markitdown-input2-financialpdf-summary-s-186c31156860.png) | `ev:markitdown·sumitomo-heavy-industries-consolidated-financial-report·document-hierarchy` | | Document Hierarchy | Scanned research paper | ✗ failed | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/markitdown-markitdown-input3-scannedpaper-output-4b7a22c40885.md) | `ev:markitdown·scanned-research-paper·document-hierarchy` | | Document Hierarchy | Image-only scanned research paper | ✗ failed | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/markitdown-markitdown-input3-scannedpaper-output-4b7a22c40885.md) | `ev:markitdown·image-only-scanned-research-paper·document-hierarchy` | | Ease of deployment and maintenance | cross-scenario | ◐ mixed | 👁 observed | `ev:markitdown·cross·ease-of-deployment-and-maintenance` | | Image retention | Hybrid Earnings Report | ✗ failed | 👁 observed | `ev:markitdown·hybrid-earnings-report·image-retention` | | Image Retention | Target 2015 Annual Report | ✗ failed | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/markitdown-markitdown-input1-hybridearnings-logo-66f284f61dfa.png) | `ev:markitdown·target-2015-annual-report·image-retention` | | Image Retention | Sumitomo Heavy Industries consolidated financial report | ◐ mixed | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/markitdown-markitdown-input2-financialpdf-segment-t-1f6408df9a4e.png) | `ev:markitdown·sumitomo-heavy-industries-consolidated-financial-report·image-retention` | | Image Retention | Scanned research paper | ✗ failed | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/markitdown-markitdown-input3-scannedpaper-output-4b7a22c40885.md) | `ev:markitdown·scanned-research-paper·image-retention` | | Image Retention | Image-only scanned research paper | ✗ failed | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/markitdown-markitdown-input3-scannedpaper-output-4b7a22c40885.md) | `ev:markitdown·image-only-scanned-research-paper·image-retention` | | Long/Complex Document Robustness | Target 2015 Annual Report | ◐ mixed | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/markitdown-markitdown-input1-hybridearnings-output-70f5b1faf73c.md) | `ev:markitdown·target-2015-annual-report·long-complex-document-robustness` | | Long/Complex Document Robustness | Sumitomo Heavy Industries consolidated financial report | ✓ worked | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/markitdown-markitdown-input2-financialpdf-output-1b08db40e794.md) | `ev:markitdown·sumitomo-heavy-industries-consolidated-financial-report·long-complex-document-robustness` | | Long/Complex Document Robustness | Scanned research paper | ✗ failed | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/markitdown-markitdown-input3-scannedpaper-output-4b7a22c40885.md) | `ev:markitdown·scanned-research-paper·long-complex-document-robustness` | | Long/Complex Document Robustness | Image-only scanned research paper | ✗ failed | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/markitdown-markitdown-input3-scannedpaper-output-4b7a22c40885.md) | `ev:markitdown·image-only-scanned-research-paper·long-complex-document-robustness` | | Long/Complex Document Robustness | Scanned research paper (image-only) | ✗ failed | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/markitdown-markitdown-input3-scannedpaper-output-4b7a22c40885.md) | `ev:markitdown·scanned-research-paper-image-only·long-complex-document-robustness` | | Markdown cleanliness | Target 2015 Annual Report | ⚠ struggled | 👁 observed | `ev:markitdown·target-2015-annual-report·markdown-cleanliness` | | Markdown cleanliness | Sumitomo Heavy Industries consolidated financial report | ✗ failed | 👁 observed | `ev:markitdown·sumitomo-heavy-industries-consolidated-financial-report·markdown-cleanliness` | | OCR quality on scans | Scanned Research Paper (Image-Only) | ✗ failed | 👁 observed | `ev:markitdown·scanned-research-paper-image-only·ocr-quality-on-scans` | | OCR quality on scans | Scanned research paper | ✗ failed | 👁 observed | `ev:markitdown·scanned-research-paper·ocr-quality-on-scans` | | OCR quality on scans | Target 2015 Annual Report | ✓ worked | 👁 observed | `ev:markitdown·target-2015-annual-report·ocr-quality-on-scans` | | Performance and resource usage | cross-scenario | ✓ worked | 👁 observed | `ev:markitdown·cross·performance-and-resource-usage` | | Performance and resource usage | Hybrid Earnings Report | ✓ worked | 👁 observed | `ev:markitdown·hybrid-earnings-report·performance-and-resource-usage` | | Performance and resource usage | Financial Report | ✓ worked | 👁 observed | `ev:markitdown·financial-report·performance-and-resource-usage` | | Reading order & structure | Sumitomo Heavy Industries Consolidated Financial Report | ⚠ struggled | 👁 observed | `ev:markitdown·sumitomo-heavy-industries-consolidated-financial-report·reading-order-structure` | | Reading order & structure | Target 2015 Annual Report | ⚠ struggled | 👁 observed | `ev:markitdown·target-2015-annual-report·reading-order-structure` | | Reading order & structure | Hybrid Earnings Report | ✓ worked | 👁 observed | `ev:markitdown·hybrid-earnings-report·reading-order-and-structure` | | Reading order & structure | Financial Report | ✗ failed | 👁 observed | `ev:markitdown·financial-report·reading-order-and-structure` | | Reading order & structure | Sumitomo Heavy Industries consolidated financial report | ✓ worked | 👁 observed | `ev:markitdown·sumitomo-heavy-industries-consolidated-financial-report·reading-order-and-structure` | | Reading Order Preservation | Target 2015 Annual Report | ✗ failed | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/markitdown-markitdown-input1-hybridearnings-welcome-45486a1edb7c.png) | `ev:markitdown·target-2015-annual-report·reading-order-preservation` | | Reading Order Preservation | Sumitomo Heavy Industries consolidated financial report | ✓ worked | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/markitdown-markitdown-input2-financialpdf-toc-parse-177208e25aad.png) | `ev:markitdown·sumitomo-heavy-industries-consolidated-financial-report·reading-order-preservation` | | Reading Order Preservation | Scanned research paper | ✗ failed | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/markitdown-markitdown-input3-scannedpaper-output-4b7a22c40885.md) | `ev:markitdown·scanned-research-paper·reading-order-preservation` | | Reading Order Preservation | Image-only scanned research paper | ✗ failed | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/markitdown-markitdown-input3-scannedpaper-output-4b7a22c40885.md) | `ev:markitdown·image-only-scanned-research-paper·reading-order-preservation` | | Separate table/chart extraction (bonus) | Target 2015 Annual Report | ✗ failed | 👁 observed | `ev:markitdown·target-2015-annual-report·separate-table-chart-extraction-bonus` | | Table Reconstruction | Target 2015 Annual Report | ✓ worked | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/markitdown-markitdown-input1-hybridearnings-propert-3ecbdf082a20.png) | `ev:markitdown·target-2015-annual-report·table-reconstruction` | | Table Reconstruction | Sumitomo Heavy Industries consolidated financial report | ◐ mixed | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/markitdown-markitdown-input2-financialpdf-business--27b520ba2b9c.png) | `ev:markitdown·sumitomo-heavy-industries-consolidated-financial-report·table-reconstruction` | | Table Reconstruction | Scanned research paper | ✗ failed | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/markitdown-markitdown-input3-scannedpaper-output-4b7a22c40885.md) | `ev:markitdown·scanned-research-paper·table-reconstruction` | | Table Reconstruction | Image-only scanned research paper | ✗ failed | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/markitdown-markitdown-input3-scannedpaper-output-4b7a22c40885.md) | `ev:markitdown·image-only-scanned-research-paper·table-reconstruction` | | Table Reconstruction | Scanned research paper (image-only) | ✗ failed | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/markitdown-markitdown-input3-scannedpaper-output-4b7a22c40885.md) | `ev:markitdown·scanned-research-paper-image-only·table-reconstruction` | | Table structure preservation | Sumitomo Heavy Industries Consolidated Financial Report | ✗ failed | 👁 observed | `ev:markitdown·sumitomo-heavy-industries-consolidated-financial-report·table-structure-preservation` | | Table structure preservation | Target 2015 Annual Report | ✗ failed | 👁 observed | `ev:markitdown·target-2015-annual-report·table-structure-preservation` | | Table structure preservation | Financial Report | ✗ failed | 👁 observed | `ev:markitdown·financial-report·table-structure-preservation` | | Table structure preservation | Hybrid Earnings Report | ✗ failed | 👁 observed | `ev:markitdown·hybrid-earnings-report·table-structure-preservation` | | Text completeness | Scanned Research Paper (Image-Only) | ✗ failed | 👁 observed | `ev:markitdown·scanned-research-paper-image-only·text-completeness` | | Text completeness | Sumitomo Heavy Industries Consolidated Financial Report | ✓ worked | 👁 observed | `ev:markitdown·sumitomo-heavy-industries-consolidated-financial-report·text-completeness` | | Text completeness | Scanned Research Paper INT 1983-07 Issue 333 | ✗ failed | 👁 observed | `ev:markitdown·scanned-research-paper-int-1983-07-issue-333·text-completeness` | | Text completeness | Target 2015 Annual Report | ✓ worked | 👁 observed | `ev:markitdown·target-2015-annual-report·text-completeness` | | Text completeness | Hybrid Earnings Report | ✓ worked | 👁 observed | `ev:markitdown·hybrid-earnings-report·text-completeness` | | Text completeness | Scanned Research PDF | ✗ failed | 👁 observed | `ev:markitdown·scanned-research-pdf·text-completeness` | | Text completeness | Financial Report | ✓ worked | 👁 observed | `ev:markitdown·financial-report·text-completeness` | | Text completeness | Scanned research paper | ✗ failed | 👁 observed | `ev:markitdown·scanned-research-paper·text-completeness` | | Text completeness | Image-only scanned research paper | ✗ failed | 👁 observed | `ev:markitdown·image-only-scanned-research-paper·text-completeness` | | Text completeness | Research Paper INT 1983-07 Issue 333 as Image-Only Scanned PDF | ✗ failed | 👁 observed | `ev:markitdown·research-paper-int-1983-07-issue-333-as-image-only-scanned-pdf·text-completeness` | | Text completeness | Research Paper INT 1983-07: Iss 333 (image-only scanned PDF) | ✗ failed | 👁 observed | `ev:markitdown·research-paper-int-1983-07-iss-333-image-only-scanned-pdf·text-completeness` | | Text completeness | Scanned research paper without OCR text | ✗ failed | 👁 observed | `ev:markitdown·scanned-research-paper-without-ocr-text·text-completeness` | | Text completeness | Research Paper INT 1983-07 Issue 333 (scanned image-only PDF) | ✗ failed | 👁 observed | `ev:markitdown·research-paper-int-1983-07-issue-333-scanned-image-only-pdf·text-completeness` | | Text Preservation | Target 2015 Annual Report | ✓ worked | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/markitdown-markitdown-input1-hybridearnings-target--0e9f2a1f3364.png) | `ev:markitdown·target-2015-annual-report·text-preservation` | | Text Preservation | Sumitomo Heavy Industries consolidated financial report | ✓ worked | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/markitdown-markitdown-input2-financialpdf-additiona-410f72aca6c5.png) | `ev:markitdown·sumitomo-heavy-industries-consolidated-financial-report·text-preservation` | | Text Preservation | Scanned Research Paper INT 1983-07 Issue 333 (image-only) | ✗ failed | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/markitdown-markitdown-input3-scannedpaper-output-4b7a22c40885.md) | `ev:markitdown·scanned-research-paper-int-1983-07-issue-333-image-only·text-preservation` | | Text Preservation | Scanned research paper | ✗ failed | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/markitdown-markitdown-input3-scannedpaper-output-4b7a22c40885.md) | `ev:markitdown·scanned-research-paper·text-preservation` | | Text Preservation | Image-only scanned research paper | ✗ failed | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/markitdown-markitdown-input3-scannedpaper-output-4b7a22c40885.md) | `ev:markitdown·image-only-scanned-research-paper·text-preservation` | | Text Preservation | Scanned research paper (image-only) | ✗ failed | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/markitdown-markitdown-input3-scannedpaper-output-4b7a22c40885.md) | `ev:markitdown·scanned-research-paper-image-only·text-preservation` | | Transparency | cross-scenario | ✗ failed | 👁 observed | `ev:markitdown·cross·transparency` | | Transparency | Scanned Research Paper INT 1983-07 Issue 333 | ✗ failed | 👁 observed | `ev:markitdown·scanned-research-paper-int-1983-07-issue-333·transparency` | > 🧾 = artifact-verified (proof captured) · 👁 = observed (noted, no artifact) · verdicts: worked / mixed / struggled / failed. > **Fast text extraction, weak structural fidelity** > > 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. ## Demo Recording [Video: markitdown demo recording (download MP4)](https://d3epheqghktydj.cloudfront.net/markitdown-markitdown-input2-financialpdf-demo-2-e078d9b77be8.mp4) [▶️ Watch (streaming)](https://stream.futuresmart.ai/embed/13891537-0b0a-454b-a1cd-3e455e116d04) *Video — Walkthrough of MarkItDown converting the table-heavy financial report.* ## Feature-by-Feature Breakdown ### Native PDF Text Extraction **Verdict:** Preserved 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. **Input:** > **Image** **Output:** > **Image** **Input:** > **Image** **Output:** > **Image** **Bottom line:** Strong for plain prose on native PDFs, including long ones, but it does not preserve document structure. ### Table Extraction **Verdict:** Mixed 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. **Input:** > **Image** **Output:** > **Image** **Input:** > **Image** **Output:** > **Image** **Input:** > **Image** **Output:** > **Image** **Input:** > **Image** **Output:** > **Image** **Input:** **Output:** **Bottom line:** Selective table parsing is the main weakness here: simple tables can survive, but dense financial tables are unreliable. ### Chart Extraction **Verdict:** Failed 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. **Input:** > **Image** **Output:** > **Image** **Bottom line:** Charts were not recoverable in this benchmark; the output is unusable as structured financial data. ### Document Hierarchy Preservation **Verdict:** Failed 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. **Input:** > **Image** **Output:** > **Image** **Input:** > **Image** **Output:** > **Image** **Bottom line:** The document outline is lost entirely; this is not a heading-preserving Markdown converter in the tested setup. ### Reading Sequence Preservation **Verdict:** Mixed 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. **Input:** > **Image** **Output:** > **Image** **Input:** > **Image** **Output:** > **Image** **Bottom line:** It can keep sequence on straightforward pages, but two-column layouts are where reading order falls apart. ### Embedded Image Preservation **Verdict:** Failed 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. **Input:** > **Image** **Output:** > **Image** **Input:** > **Image** **Output:** > **Image** **Input:** **Output:** **Bottom line:** Images, logos, and scanned visuals were omitted in the tested native-PDF workflow. ### Scanned PDF OCR Conversion **Verdict:** Failed 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. **Input:** > **Pdf** **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. ### Long-Document Processing **Verdict:** Strong 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. **Input:** > **Pdf** **Output:** ``` Processed the 84-page hybrid earnings report in about 8 seconds without crashing, but table, chart, and hierarchy failures persisted throughout. ``` **Input:** > **Pdf** **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. ## Pricing | Plan | Price | Notes | | --- | --- | --- | | Open source | $0 | MIT; self-hosted library. | *Free - $0 - Open Source* ## Is It Right For You? **Use it 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 it 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. ## Classification - **Category:** developer-tools - **Subcategory:** documentation-tools - **Type:** text - **Built for:** Other ## Frequently Asked Questions **Q: Does MarkItDown preserve running text from native PDFs?** 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. **Q: How well does MarkItDown handle tables?** 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. **Q: Can MarkItDown reconstruct charts?** Not reliably. The financial highlights chart was reduced to reversed or jumbled numeric strings, and the chart labels were detached from the values. **Q: Does MarkItDown preserve headings and outline structure?** 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. **Q: Can MarkItDown process scanned PDFs without extra setup?** No. The scanned research paper produced a 0-byte output file because OCR was skipped unless an external OpenAI llm_client/API was configured. **Q: Does MarkItDown keep images and logos?** No. The Target bullseye logo and other cover visuals were dropped without placeholders in the tested native-PDF workflow. **Q: How fast was MarkItDown on the tested files?** It processed the 84-page hybrid earnings report in about 8 seconds and the 18-page financial report in about 3 seconds, without crashing. **Q: Is MarkItDown open source?** Yes. The report identifies MarkItDown as open source under MIT. ## Similar Tools AI tools similar to markitdown: - [docling](https://aidemos.com/tools/docling) — Open-source PDF-to-markdown conversion that is strong on text, headings, and standard tables, but drops charts and other visual assets. - [pymupdf4llm](https://aidemos.com/tools/pymupdf4llm) — Open-source PDF-to-markdown for clean native PDFs, but unreliable on scans, dense tables, and images. - [liteparse](https://aidemos.com/tools/liteparse) — Open-source PDF-to-markdown parsing that works well on native-digital reports, but degrades on scans, tables, and charts. - [doc2mark](https://aidemos.com/tools/doc2mark) — Open-source PDF-to-markdown that preserves native text and headings, but still struggles with tables, charts, images, and scans. ## Need a custom AI solution for this use case? If you are looking to build a custom PDF-to-markdown extraction, document parsing, or text extraction system for your business or internal workflow, email us at [contact@futuresmart.ai](mailto:contact@futuresmart.ai). ### Found something inaccurate or missing? We try to keep our AI research accurate and useful. If you found outdated information, an issue, or have a suggestion, email us at [collaborate@aidemos.com](mailto:collaborate@aidemos.com).