A reliable way to get a PDF into Markdown on a Mac is to skip direct PDF-to-Markdown converters entirely and route the file through DOCX first: open the PDF in Word for Mac or export it from Pages as a .docx, then run that file through a browser-based converter that reads WordprocessingML locally and outputs a downloadable .md file. The detour exists because reliable PDF-to-Markdown tools that don't upload your document are scarce on macOS, and the converters that do exist — Marker, pymupdf4llm, MarkItDown — usually require a Python toolchain that most Mac users don't already have set up. Word's "Save as DOCX" and Pages' "Export to Word" both produce a clean Office Open XML package that a browser converter can parse predictably, since the file format is documented and heading styles plus tables map cleanly onto Markdown's #, paragraph, and pipe-table grammar. Once the .docx is on your Mac, the conversion happens entirely client-side — the file never leaves the browser tab — and the output is a plain text .md file you can drop into Obsidian, a documentation repo, a CMS editor, or any other Markdown-aware tool. The catch, which the converter advertises plainly, is that this is a structural conversion rather than a Word renderer: headings, paragraphs, and simple tables survive the round trip; images, comments, tracked changes, custom fonts, page numbers, columns, shapes, and themed styling are dropped on purpose.

how to convert pdf to markdown on mac
Convert PDF to Markdown on Mac Without Uploading

Why the PDF-to-Markdown Need Keeps Coming Up on macOS

Mac users hit this task in surprisingly specific situations. A graduate student wants to feed a journal article into a local LLM. A technical writer is migrating a knowledge base out of Word and into a static-site generator. A developer keeps long PDFs in a notes vault that only renders Markdown. In each case, the PDF is a delivery format that the original author chose for printing; what the reader actually wants underneath is the structured text — headings, paragraphs, lists, tables. Markdown preserves that structure in a file a human can diff in Git, push to a CMS, paste into Obsidian, or hand to an AI assistant without the layout cruft that PDF carries.

The catch is that "PDF to Markdown" is a hard problem on macOS precisely because PDF was never designed to be edited. Most direct converters rely on text extraction layered onto PDF coordinates, then guess at headings and tables from font size and position. That heuristic approach produces usable output for clean, text-layer PDFs and noticeably worse output for scanned documents, two-column papers, receipts, and forms. A DOCX file, by contrast, already carries explicit paragraph styles, so the conversion becomes a lookup instead of a guess.

Why Direct PDF-to-Markdown Converters Get in the Way

Three patterns recur when Mac users try to convert PDF to Markdown directly, and each one has a downside worth naming.

  • Online uploaders. Quickest in the moment, but the file leaves your device. Lawyers, healthcare staff, researchers, and anyone handling unpublished material usually can't ship a PDF to a third-party server.
  • Offline Python tools. Tools like Marker, pymupdf4llm, and MarkItDown produce strong output on Apple Silicon, yet they ask you to install Python, manage a virtual environment, and occasionally pull in PyTorch — a heavy install for a one-off conversion.
  • VS Code extensions. Useful for repeat work in a folder of PDFs, but they still call out to a converter library and they assume you're already living inside VS Code.

The DOCX detour sidesteps every one of those. Word for Mac is already on the machine if you have Microsoft 365, and Pages is free from Apple. Both can re-export the PDF as a clean .docx that a browser tab can read.

Get the PDF Into an Editable DOCX on Your Mac

This is the Mac-specific step, and it is genuinely the only place macOS plays a role. The goal is a clean Office Open XML package that mirrors the PDF's headings and tables, with no scanned images or password protection standing in the way.

Option A — Word for Mac.

  1. Right-click the PDF in Finder and choose Open With → Microsoft Word, or drag the PDF onto a blank Word document.
  2. Word will warn that it is converting from PDF. Click OK; Word renders an editable document and applies its best-guess paragraph styles — usually Body, Heading 1, Heading 2, List Paragraph.
  3. Choose File → Save As, set the format to Word Document (.docx), and save the file alongside the original PDF or in a dedicated folder.
  4. Spend sixty seconds confirming the heading styles look right: in the Home tab, click into each likely heading and confirm the style picker shows Heading 1 or Heading 2, not just Normal. Adjust any garbled styles manually before exporting.

Option B — Pages (free on every Mac).

  1. Open Pages, choose File → Open, and pick the PDF. Pages will convert it into an editable document.
  2. Check the converted document for heading structure. Pages does not always apply Word's Heading 1–6 styles; if the headings show up as plain bold text, select each heading line and apply a manual style — Heading 1 through Heading 6 in the Paragraph styles pop-up — because the converter downstream looks only at explicit style names.
  3. Choose File → Export To → Word and save the .docx.

If the PDF is a scanned image, neither Word nor Pages will give you an editable document; you'll need OCR first (Apple's built-in Preview → File → Export → JPEG plus the macOS Live Text capture, or a dedicated OCR step). A scan with no text layer returns empty pages downstream, so check that the saved .docx actually contains selectable text before moving on.

Run the DOCX Through the Local Markdown Converter

With a clean .docx in hand, the conversion itself is a three-click task. Open the DOCX to Markdown Converter in any modern browser — Safari, Chrome, or Firefox — and follow the steps the tool surfaces.

  1. Choose the .docx file. Click the file picker and select the document you just exported. The tool validates the Office Open XML package locally — checking size, ZIP structure, entry count, and the declared expanded size — before loading the internal ZIP reader. Password-protected, damaged, or oversized files are rejected with a clear message rather than failing silently.
  2. Review the Markdown preview. The converter reads word/document.xml with the in-browser JSZip dependency, parses the WordprocessingML through DOMParser, and renders a read-only preview right in the page. You should see explicit Heading 1 paragraphs turning into #, Heading 2 into ##, and so on; body paragraphs as plain text; and any simple rectangular table appearing as a pipe table with the first row as the Markdown header.
  3. Download the .md file. Click the download control to save the result. The file is a plain text .md file. Open it in your editor of choice — Obsidian, VS Code, iA Writer, Typora, or any text editor.

The whole pipeline stays on your Mac: no part of the original document or the rendered Markdown is uploaded, and the XML is parsed rather than inserted into the page as HTML, so a malformed package fails the conversion rather than rendering oddly.

What Survives the DOCX-to-Markdown Round Trip

Because Word stores far more than Markdown can express, the converter is deliberately conservative. The table below maps the most common Word elements to their Markdown outcome so you know what to expect before you open the .md file.

What you had in Word What arrives in Markdown
Heading 1 through Heading 6 paragraph style Matching # through ###### heading
Body Text or Normal paragraph Plain text paragraph
Simple rectangular table Pipe table; first row treated as header
Merged, nested, or uneven-row table Readable tab-separated fallback instead of an invalid table
Tabs and explicit line breaks Preserved as visible characters in the text
Custom paragraph styles (anything that is not Heading 1–6) Treated as plain paragraphs
Bold or large font used as a visual heading Plain paragraph — the converter does not guess
Images, shapes, charts, text boxes, SmartArt Not included in the .md file
Comments, tracked changes Not included
Fields, citations Not included

The visible upper limit is on purpose: guessing heading levels from font size would invent structure that the original document did not contain, and pretending a table is rectangular would risk publishing a misleading Markdown table. Both failures are easy to miss after a quick conversion, so the tool declines the risk. For documents where you specifically need the discarded elements, dedicated companions exist — a Word Hyperlink Extractor for links and a separate image-extraction tool — rather than rolling unreliable behaviour into one converter.

Clean Up the Markdown Draft in Your Editor

Markdown is source content, so a brief editorial pass is part of the workflow even on a clean conversion. Open the downloaded .md file in your destination editor and look for four things.

  • Headings. Confirm each # marks a true section heading. Word sometimes applies a Heading style to a numbered figure caption or a sidebar label; if anything looks out of place, demote it to plain text or change the heading level.
  • Lists. Check any complex Word list numbering; those cases fall back to tab-separated text rather than Markdown list syntax.
  • Tables. Check that the pipe characters in the header row reflect what the document actually meant by a column. If a Word table contained merged cells, the cells will appear as tab-separated text — easy to spot, easy to re-author as a Markdown table or to leave as plain text.
  • Editorial residue. Strip temporary formatting, double-check any links, and remove text-box content that did not transfer.

A quick pass of two or three minutes is enough for most reports. A long, table-heavy technical manual may need ten or fifteen minutes, especially if the original used complex Word list numbering, which does not always map cleanly to Markdown.

When the Two-Step Route Doesn't Fit

The PDF → DOCX → Markdown path is the right default for plain, text-layer PDFs on macOS, but four situations call for a different approach.

  • Scanned PDFs without a text layer. Run OCR first (Apple's Live Text, Adobe Acrobat, or a dedicated tool) so the .docx you export actually contains selectable text. Without OCR, the exported Word document will look right but read empty.
  • Password-protected PDFs. Word and Pages will prompt for the password before exporting; remove the protection once and export the unlocked .docx. The browser converter also rejects locked or damaged DOCX packages.
  • Image-heavy layouts — brochures, infographics, slide decks. This converter is text-only. For those, the right destination is usually a Markdown wrapper around extracted image files, not a continuous text conversion.
  • Repeat conversions on hundreds of files. A one-off browser tab is fine for a handful of documents; a folder of PDFs is a job for a scriptable offline tool such as pymupdf4llm.

If your goal is straight extraction with no Markdown syntax at all, a DOCX to Text Converter handles the same DOCX file and returns clean plain text in one click — useful for LLM ingestion where the Markdown structure is unnecessary overhead. For the more common situation where you want Markdown for a vault or a repo, the two-step Mac route above is the most reliable path that stays entirely on your device.

If you're weighing options, Convert DOCX to Text Without Uploading covers this in detail.