DOCX to Markdown: Word, PowerPoint, Excel to Text for LLMs
Pricing
from $2.00 / 1,000 file converteds
DOCX to Markdown: Word, PowerPoint, Excel to Text for LLMs
Convert Word .docx, PowerPoint .pptx and Excel .xlsx links or uploads to clean Markdown and plain text for LLMs and RAG: headings, lists, tables, links, footnotes, image alt text, metadata, word and token counts. Pay per file.
Pricing
from $2.00 / 1,000 file converteds
Rating
0.0
(0)
Developer
Itay Ozer
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Security
Limited permissionsShare
DOCX to Markdown: Word, PowerPoint and Excel to text for LLMs
Turn Word (.docx), PowerPoint (.pptx) and Excel (.xlsx) files into clean Markdown and plain text that LLMs, RAG pipelines and AI agents can use right away. Give it links or upload files, and get one result per file with the Markdown, the plain text, the document properties, and word and token counts.
What you get
- Headings as
#,##(Word heading styles, Title and Subtitle), so you can split documents into chunks by section. - Lists, bulleted and numbered, nested lists kept nested.
- Tables as Markdown tables. Merged cells keep the columns lined up. In the plain text, tables are tab-separated rows.
- Links as
[text](url), bold, italic andstrikethrough. - Footnotes and endnotes as Markdown footnotes (
[^1]and[^1]: note text). - Images as alt text:
[Image: Bar chart of sales]. Image files are never downloaded or returned, so results stay small. - PowerPoint: one
## Slide N: Titlesection per slide, bullet levels, tables, charts with their data as a table, picture alt text, speaker notes (optional), hidden slides marked. - Excel: one
## Sheet: Namesection per sheet with a Markdown table. Values as Excel last showed them (formula results, dates as ISO dates). Empty sheets, rows and columns are left out. Hidden sheets are marked. - Metadata: title, author, subject, keywords, description, last modified by, created and modified dates, the app that saved the file, slide and sheet counts.
- Counts: words, characters, tokens (OpenAI o200k_base, used by GPT-4o and later, a close guide for other models), tables, images, links, and the heading outline.
The file type is read from the file itself, not the name, so links without an extension work. Macro-enabled and template files (.docm, .dotx, .pptm, .xlsm) work too.
Input
| Field | What it does |
|---|---|
| File URLs | Links to .docx, .pptx or .xlsx files, up to 1,000 per run |
| Upload files | Or upload files from your computer (kept in your own Apify storage) |
| Max rows per Excel sheet | Rows after this many on a sheet are skipped (default 1,000, up to 100,000) |
| Include speaker notes | Add PowerPoint speaker notes under each slide (default on) |
Example:
{"urls": ["https://example.com/report.docx", "https://example.com/deck.pptx"],"maxRowsPerSheet": 1000,"includeNotes": true}
Output
One item per file (shortened):
{"url": "https://example.com/report.docx","fileName": "report.docx","error": null,"format": "docx","fileSizeBytes": 135824,"title": "Quarterly Report","author": "Dana Writer","createdAt": "2024-03-06T08:18:13Z","markdown": "# Quarterly Report\n\nSales grew **fast** this quarter, see [the full report](https://example.com/report).\n\n## Highlights\n\n- North region\n - Best month: July\n- South region\n\n| Region | Q2 | Q3 |\n| --- | --- | --- |\n| North | 10 | 12 |\n\n[Image: Bar chart of sales]","text": "Quarterly Report\n\nSales grew fast this quarter, see the full report. ...","wordCount": 57,"tokenCount": 123,"tableCount": 1,"imageCount": 1,"linkCount": 1,"headings": [{"level": 1, "text": "Quarterly Report"}, {"level": 2, "text": "Highlights"}],"truncated": false}
A file that cannot be converted still gets a row, with error saying why in plain words (for example "This is an old binary Office file (.doc, .xls, .ppt) or a password-protected file"). Download the results as JSON, CSV or Excel, or read them with the Apify API.
Pricing
Pay per file. You are never charged for files that fail or that have no text.
| Event | Price |
|---|---|
| File converted (up to 2 MB, and up to 2 MB of unpacked Word or PowerPoint text and markup) | $0.002 |
| Extra MB: each further MB of file size over 2 MB, or each further MB of unpacked Word or PowerPoint markup over 2 MB, whichever count is higher | $0.001 |
| Actor start (Apify's standard start event, per GB of memory) | $0.00005 |
Examples: a typical Word document, slide deck or spreadsheet costs $0.002 (in a test set of 545 real Office files, 7 needed extra MB events). A 10 MB slide deck full of photos costs $0.002 + 8 x $0.001 = $0.010. 1,000 typical files cost about $2.
The run stops cleanly at the maximum charge you set for the run: a file that would cost more than what is left is listed with an error and not charged.
Limits
- Files up to 50 MB. Word files up to 8 MB of unpacked text and markup (hundreds of pages of plain text, fewer with heavy formatting), PowerPoint up to 20 MB.
- Excel: up to 200 columns per sheet and 200,000 cells per file; the result says
truncatedwhen rows were left out. - Old binary formats (.doc, .xls, .ppt), password-protected files, OpenDocument (.odt, .ods, .odp), RTF and PDF are not converted (you get a clear error and no charge).
- Word equations, comments, headers and footers, and text inside SmartArt are left out.
- Links: the tool obeys each site's robots.txt and only fetches public http and https addresses. Sites that block tools or need a login cannot be read; download the file and upload it instead.
- A result item can hold up to 9 MB. For huge documents the heading list and then the plain text are dropped first (
outputTrimmedsays what was left out).
FAQ
Is my file stored? Uploaded files sit in your own Apify key-value store. The tool keeps nothing after the run; results are in your own dataset.
Why Markdown? LLMs read Markdown well, and headings and tables survive, so chunking by section and answering questions about tables works better than with flat text.
How exact is the token count? It is the real count of the Markdown in OpenAI's o200k_base encoding. Other models count a little differently.
Can I use it from an AI agent or MCP client? Yes. Call the Actor with a list of links and read the markdown field of each item.
What about PDFs? Use our PDF to Markdown tool for PDF files.
Found a problem or need a feature? Open an issue on this page.