Skip to content
M MarkdownPDF
← All posts

Convert Markdown to PDF without uploading your file

June 9, 2026

Open the network tab in your browser’s DevTools, then convert a document on most “free online” Markdown-to-PDF sites. You’ll see it: a POST request carrying your file to a server you don’t control. Your contract, your internal runbook, your unreleased spec — uploaded, processed, and (you hope) deleted.

For a public README, fine. For anything confidential, that’s a problem you can avoid entirely.

Why they upload in the first place

High-fidelity Markdown-to-PDF used to require server-side rendering. The tool spins up headless Chrome (Puppeteer), loads your content, prints to PDF, and sends the file back. It works, but it has costs: CPU and memory per conversion, rate limits, a queue under load — and your document sitting on someone else’s machine for the duration.

That server cost is also why these tools monetize. Conversions aren’t free for them, so they cap usage, add watermarks, or gate features behind a login.

The browser can already do it

Here’s what changed: the browser’s own print engine produces excellent vector PDFs, and everything needed to render Markdown — parsing, syntax highlighting, math, diagrams — now runs perfectly well in JavaScript. So the entire pipeline can happen on your machine:

  1. Parse Markdown to HTML in the page.
  2. Apply print CSS with proper page-break rules.
  3. Render to PDF through the browser’s print engine.

No upload. No server. No marginal cost. The file never leaves the tab.

How to verify it yourself

Don’t take a privacy claim on faith — check it:

  1. Open DevTools (F12 or Cmd+Opt+I).
  2. Go to the Network tab.
  3. Run a conversion.
  4. Look for any request carrying your document.

On a genuinely client-side tool, you’ll see the page load its assets once and then… nothing during conversion. No upload request appears because there’s nothing to send. As a bonus, that also means it keeps working with your network disconnected — proof there’s no server in the loop.

What you give up (almost nothing)

Client-side conversion has one real limitation: things that need a controlled server environment, like guaranteed-identical rendering across every browser or auto-numbered running headers, are harder to do purely in the page. For 99% of documents that doesn’t matter — you get selectable vector text, working links, and correct page breaks regardless.

When you genuinely need those server-only features, the right design is to make the server path opt-in: a button you click for that specific export, not the default that quietly uploads everything.

The takeaway

If a tool uploads your file by default, ask why — and whether you need it to. For most Markdown documents, you don’t. Our Markdown-to-PDF converter runs entirely in your browser: open the Network tab and watch it convert with zero upload requests. It’s free, needs no login, and there’s a dedicated private & offline page explaining exactly how it stays on your machine.

Ready to convert?

Free, private, runs in your browser.

Open the converter