โ† PDF libraries ยท Reader board

markitdown 0.1.9 on PDF

1,077 files: text from 648, empty 397, errors 31, hangs 1, crashes 0. 724 files give text to at least one library.

๐Ÿ”ด Fails where another library reads text: 12

Brotli-Prototype-FileA.pdfFileConversionException: File conversion failed after 1 attempts: - PdfConverter threw PDFNotImplementedError with message: Unsupported filter: /'BrotliDecode' (0.068 s)
auth-event-ef-open.pdfFileConversionException: File conversion failed after 1 attempts: - PdfConverter threw PDFPasswordIncorrect with message: (0.165 s)
bug1250079.pdfFileConversionException: File conversion failed after 1 attempts: - PdfConverter threw PDFSyntaxError with message: No /Root object! - Is this really a PDF? (0.057 s)
crypt_filters.pdfFileConversionException: File conversion failed after 1 attempts: - PdfConverter threw PDFEncryptionError with message: Unsupported crypt filter: param={'Filte (0.047 s)
encrypted-attachment.pdfFileConversionException: File conversion failed after 1 attempts: - PdfConverter threw PDFPasswordIncorrect with message: (0.088 s)
franz_2.pdfFileConversionException: File conversion failed after 1 attempts: - PdfConverter threw TypeError with message: unsupported operand type(s) for +: 'int' and 'PD (0.067 s)
issue11549_reduced.pdfFileConversionException: File conversion failed after 1 attempts: - PdfConverter threw PSSyntaxError with message: Invalid dictionary construct: [/'BaseFont', (0.053 s)
issue22011.pdfFileConversionException: File conversion failed after 1 attempts: - PdfConverter threw PSSyntaxError with message: Invalid dictionary construct: [/'Type', /'Pa (0.429 s)
issue6108.pdfFileConversionException: File conversion failed after 1 attempts: - PdfConverter threw Error with message: Odd-length string (0.1 s)
issue7665.pdfFileConversionException: File conversion failed after 1 attempts: - PdfConverter threw TypeError with message: 'PDFObjRef' object is not subscriptable (0.044 s)
perf_text_labels.pdfno result after 60.0 s (60.0 s)
poppler-90-0-fuzzed.pdfFileConversionException: File conversion failed after 1 attempts: - PdfConverter threw Error with message: Non-hexadecimal digit found (0.12 s)

๐ŸŸก Empty where another library reads text: 64

annotation-tx.pdfno text (0.078 s)
annotation-tx2.pdfno text (0.107 s)
annotation-tx3.pdfno text (0.096 s)
annotation_hidden_noview.pdfno text (0.176 s)
bug1675139.pdfno text (0.196 s)
bug1724918.pdfno text (0.044 s)
bug1770750.pdfno text (0.041 s)
bug1782564.pdfno text (0.042 s)
bug1796741.pdfno text (0.039 s)
bug1802506.pdfno text (0.062 s)
bug1802888.pdfno text (0.042 s)
bug1811510.pdfno text (0.053 s)
bug1825002.pdfno text (0.026 s)
bug1844576.pdfno text (0.077 s)
bug1844583.pdfno text (0.054 s)
bug1851498.pdfno text (0.048 s)
bug1865341.pdfno text (0.056 s)
bug1871353.1.pdfno text (0.038 s)
bug1871353.pdfno text (0.055 s)
bug1922766.pdfno text (0.07 s)
bug1934157.pdfno text (0.062 s)
bug1978317.pdfno text (37.435 s)
bug2026037.pdfno text (0.06 s)
bug2055455.pdfno text (0.072 s)
bug920426.pdfno text (0.111 s)
checkbox_no_appearance.pdfno text (0.047 s)
dates_save.pdfno text (0.054 s)
evaljs.pdfno text (0.051 s)
freetext_no_appearance.pdfno text (0.048 s)
freetexts.pdfno text (0.092 s)
issue1293r.pdfno text (0.048 s)
issue15716.pdfno text (0.077 s)
issue15815.pdfno text (0.083 s)
issue15818.pdfno text (0.103 s)
issue16021.pdfno text (0.069 s)
issue16473.pdfno text (0.036 s)
issue16633.pdfno text (0.046 s)
issue17998.pdfno text (0.111 s)
issue18099_reduced.pdfno text (0.09 s)
issue18117.pdfno text (0.121 s)
issue18536.pdfno text (0.06 s)
issue18561.pdfno text (0.075 s)
issue19083.pdfno text (0.271 s)
issue20504.pdfno text (0.026 s)
issue20504_skia.pdfno text (0.075 s)
issue2931.pdfno text (0.095 s)
issue3323.pdfno text (0.043 s)
issue4402_reduced.pdfno text (0.106 s)
issue5946.pdfno text (0.072 s)
issue7901.pdfno text (0.15 s)
issue9418.pdfno text (0.715 s)
issue9534_reduced.pdfno text (0.054 s)
issue9915_reduced.pdfno text (0.176 s)
js-authors.pdfno text (0.049 s)
js-colors.pdfno text (0.086 s)
listbox_actions.pdfno text (0.072 s)
operator-in-TJ-array.pdfno text (0.103 s)
perf_text_cmap_mixed.pdfno text (0.129 s)
perf_transparency_soft_masks.pdfno text (0.101 s)
prefilled_f1040.pdfno text (0.131 s)
resetform.pdfno text (0.056 s)
resetform_parent.pdfno text (0.066 s)
rotated_freetexts.pdfno text (0.103 s)
secHandler.pdfno text (0.076 s)

โš”๏ธ Compare: markitdown vs PyMuPDF

Changes between versions

0.1.8 โ†’ 0.1.9: 1 newly failing, 0 fixed

perf_text_labels.pdfnewly failing

0.1.7 โ†’ 0.1.8: 0 newly failing, 1 fixed

perf_text_labels.pdffixed

Badge

For a README: badge

[![Reader board](https://img.shields.io/endpoint?url=https://prometheus-maker.github.io/reader-board/badges/pdf-markitdown.json)](https://prometheus-maker.github.io/reader-board/pdf-markitdown.html)

Slowest files

freeculture.pdf38.494 s, 247 MB
bug1978317.pdf37.435 s, 425 MB
perf_text_transformed.pdf20.626 s, 393 MB
issue12810.pdf16.299 s, 393 MB
issue12295.pdf14.485 s, 396 MB
bug1721218_reduced.pdf14.132 s, 247 MB
issue6961.pdf12.763 s, 393 MB
pdkids.pdf11.849 s, 251 MB
TAMReview.pdf8.818 s, 142 MB
perf_structure_forms.pdf7.39 s, 396 MB

Recipe: board/targets.py. Run: 2026-11-06T16:37:09Z, Python 3.13.18, Linux x86_64, 4 CPUs (log). Installed: beautifulsoup4==4.15.0, certifi==2026.10.23, cffi==2.1.1, charset-normalizer==3.5.2, click==8.5.0, cryptography==50.0.2, defusedxml==0.7.1, flatbuffers==25.12.19, idna==3.20, magika==1.0.3, markdownify==1.2.3, markitdown==0.1.9, numpy==2.5.4, onnxruntime==1.31.1, packaging==26.3, pdfminer.six==20260107, pdfplumber==0.11.10, pillow==13.0.0, protobuf==7.36.2, pycparser==3.12, pypdfium2==5.15.0, requests==2.34.2, six==1.17.0, soupsieve==4.0.1, typing_extensions==4.16.0, urllib3==2.8.0