PDF, Word & PowerPoint to Markdown + RAG Chunks avatar

PDF, Word & PowerPoint to Markdown + RAG Chunks

Pricing

from $2.00 / 1,000 page converteds

Go to Apify Store
PDF, Word & PowerPoint to Markdown + RAG Chunks

PDF, Word & PowerPoint to Markdown + RAG Chunks

Convert PDF, DOCX and PPTX to clean Markdown with headings, lists and tables, then split into token-sized, heading-aware chunks with page numbers for RAG, vector databases and LLMs. Removes repeated headers/footers. Google Drive & Dropbox links work.

Pricing

from $2.00 / 1,000 page converteds

Rating

0.0

(0)

Developer

oqen

oqen

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

7 days ago

Last modified

Security

Limited permissions

Share

Turn PDFs, Word documents and PowerPoint decks into clean Markdown that LLMs read well, and into chunks ready for a vector database: token-counted, split along headings, with the heading path and page numbers attached to every chunk.

Use it to load company documents into a RAG chatbot, feed reports to GPT/Claude, build a searchable knowledge base, or migrate documents into Notion or a wiki.

What the Markdown keeps

PDFDOCXPPTX
Headings (#, ##, ...)from font size and bold (body text size is detected per document)from Word heading styles + Titleone ## Slide N: title per slide
Tables → Markdown tablesruled/grid tables (borderless tables stay as text in reading order)all tablestables, plus chart data as a table
Listsbullets and numberingbullets and numberingbullet levels
Clean-uprepeated headers/footers and page numbers removed, hyphenated line breaks joined, rotated margin text and figure labels skipped, multi-column reading orderimages droppedspeaker notes (optional)

Scanned (image-only) PDF pages are detected and reported in scannedPages. They need OCR, which this Actor doesn't do, and they are not charged.

Chunks built for retrieval

  • Token-sized with the OpenAI cl100k tokenizer (chunkSizeTokens, default 500) with optional overlap
  • Heading-aware: a new section starts a new chunk, and each chunk is prefixed with its path, e.g. [Annual Report > 3. Risks > Currency]
  • Tables are never cut mid-row. Long tables are split between rows and the header row is repeated in every piece.
  • pageStart / pageEnd on each chunk for citations ("see page 7")
  • Stable chunkId (<documentId>-0003) so re-runs can upsert into Pinecone, Qdrant, Weaviate, pgvector...

Input

{ "documents": [{ "url": "https://arxiv.org/pdf/1706.03762" }, { "url": "https://drive.google.com/file/d/<id>/view" }],
"chunkSizeTokens": 500, "chunkOverlapTokens": 50, "outputMode": "chunks" }

Google Drive, Google Docs/Slides (exported as DOCX/PPTX) and Dropbox share links are converted to direct downloads. The file must be shared as "anyone with the link".

Output (chunk mode)

{ "fileName": "report.pdf", "documentId": "3ab677dde1ab", "title": "Quarterly Report", "status": "ok",
"chunkId": "3ab677dde1ab-0002", "chunkIndex": 2, "chunkCount": 7, "tokens": 276,
"headingPath": "Quarterly Report 2026 > 1. Summary > 1.1 Regional breakdown", "pageStart": 1, "pageEnd": 1,
"text": "[Quarterly Report 2026 > 1. Summary > 1.1 Regional breakdown]\n\n| Region | Q1 | Q2 | Q3 | Change % |\n|---|---|---|---|---|\n| South 0 | 8,233 | ...",
"markdownUrl": "https://api.apify.com/v2/key-value-stores/.../records/0001-report.md" }

In documents mode you get one item per file with the whole markdown string. Either way, the full .md file and a .meta.json (pages, tables, scanned pages) are in the key-value store.

Tested on

Our test corpus checks: a Word report and the same report exported to PDF (3 tables, 100% of table cells reproduced exactly in both), a two-column arXiv paper (correct section headings, side stamp removed), the IRS W-9 form, a PPTX with nested bullets, a table and speaker notes, and a scanned PDF (correctly flagged). Bad links, HTML pages instead of files, 404s and password-protected PDFs return clear errors.

Pricing

Pay per event: page-converted, one per PDF page with text, per slide, or per 500 words of DOCX/Markdown. Scanned pages, failed downloads and unsupported files are free. Use maxPagesPerDocument and Max cost per run to cap spend.