---
title: ground.md — browser document to Markdown
description: Convert PDF, Word, PowerPoint, Excel, OpenDocument, RTF, EPUB, and CSV files to Markdown locally in the browser without uploading document bytes.
canonical: https://ground.md/
last-updated: 2026-09-01
---

# Ground truth for your documents.

Documents → Markdown, in your browser.

Drop in a PDF, Word, PowerPoint, Excel, OpenDocument, RTF, EPUB, or CSV file. You get Markdown, plain text, structured JSON, and any embedded images. Parsing happens in your browser, so **the file is never uploaded**. No account. Open your network tab and see for yourself.

This is the Markdown representation of [https://ground.md/](https://ground.md/). Conversion happens in the page, not through an API.

## Supported formats

| Input        | Extensions                            | Unit reported                                                    |
| ------------ | ------------------------------------- | ---------------------------------------------------------------- |
| PDF          | pdf                                   | pages                                                            |
| Word         | doc, docx, docm                       | pages as stored by the authoring app (docx family); none for doc |
| PowerPoint   | ppt, pps, pot, pptx, pptm, ppsx, ppsm | slides (pptx family only)                                        |
| Excel        | xls, xlsx, xlsm, xlsb                 | visible sheets (xlsx family only)                                |
| OpenDocument | odt, odp, ods                         | pages as stored in the file (odt), slides (odp), sheets (ods)    |
| RTF          | rtf                                   | pages as stored in the file, when present                        |
| EPUB         | epub                                  | chapters (unique spine documents)                                |
| CSV          | csv                                   | rows                                                             |

Word, OpenDocument text, and RTF page counts are read from the file's own metadata (the app's stored count), not computed by rendering. Files without that metadata show no count.

PDFs go through LiteParse. Every other format normally goes through AnyDoc in a browser Web Worker. XLSX/XLSM workbooks that reach AnyDoc's browser safety limit can be recovered sheet by sheet through a separate streaming Rust WebAssembly reader. Every path runs on your device.

## Why it runs locally

We worked with a client who had been using a free online converter. It was quietly uploading every file to the converter's servers, and they had no idea. If one of those files is a contract, that upload is a disclosure. Here the parsers run in WebAssembly inside your browser, and the file bytes stay on your device.

## Why Markdown

A PDF only knows where each character sits on the page. Office files know about headings, lists, tables, and footnotes, but bury all of that in XML. Markdown keeps the structure, so an LLM prompt or a retrieval index can split on real sections instead of counting characters.

## What it reads, and what it drops

From a PDF, it reads the text layer only. No visual processing and no OCR, and it flags pages that look scanned.

From Word, PowerPoint, Excel, OpenDocument, RTF, and EPUB it keeps body text, headings, lists, tables, footnotes and endnotes, equations (as LaTeX), and speaker notes. It drops comments, tracked deletions, headers and footers, and hidden sheets, rows, and columns. Spreadsheets come through with stored cell values, not formulas. Embedded images appear as alt text in the Markdown and as separate image outputs. It rejects password-protected files.

Spreadsheets split into one file per visible, non-empty sheet. If an XLSX/XLSM workbook is too big to convert in one pass, you pick the sheets you need and it converts those on their own, still without uploading the workbook.

## Free, and staying free

We pulled this out of tooling we already use for client work at [CURTIS Digital](https://curtisdigital.com). No account, no upsell. The only thing that leaves the device is the anonymous job metric listed in the footer (format, processed units, processing time, OCR-needed page counts for PDF, event time).

## How to use it

Use the homepage drop target, or the file input labeled **Choose document file**. After parsing, the first artifact is the full Markdown document. Download from the outputs panel. There is no upload or conversion HTTP endpoint.

## Agent view

ground.md is a browser-only document-to-Markdown converter. It has no upload, conversion, authentication, or account API. Parsing runs in local WebAssembly.

- Capabilities: local conversion of PDF, Word, PowerPoint, Excel, OpenDocument, RTF, EPUB, and CSV to Markdown, plain text, structured JSON (per-page for PDF), and embedded images. Spreadsheet conversions also include one Markdown file per visible, non-empty sheet. Oversized XLSX/XLSM workbooks offer explicit, capped sheet-by-sheet CSV recovery with Markdown when safely sized.
- API endpoints: [health](/api/v1/health), public [processed-unit stats](/api/v1/stats), and browser-emitted [anonymous completion telemetry](/api/v1/metrics/document-processed). Public stats contain pages, slides, sheets, chapters, and rows by format, not document/job counts. The metric endpoint must not be called manually.
- Discovery: [llms.txt](/llms.txt), [agent guide](/agents.md), [OpenAPI](/openapi.json), [API catalog](/.well-known/api-catalog), [AI catalog](/.well-known/ai-catalog.json), and [sitemap](/sitemap.xml).

See [about](/about), [privacy](/privacy), [llms.txt](/llms.txt), [agents.md](/agents.md), and [openapi.json](/openapi.json).
