# PDF QR codes — how they work

> A QR code cannot store a PDF — the maximum payload is 2,953 bytes and a PDF is measured in megabytes. A "PDF QR code" is a link to a hosted file. That makes hosting the important decision: the code lasts forever, the link only lasts as long as you keep the file where it is.

Source: https://useqr.app/pdf-qr-code · Last reviewed 2026-08-21 · UseQR is free forever, MIT licensed, no signup.

---

## Why the file cannot be inside the code

The theoretical maximum for a QR code is 2,953 bytes at the lowest error correction —
about three kilobytes. A one-page PDF with an embedded font is typically 50–200 KB.
Even a text-only PDF stripped to the bone will not fit, and a code holding 2,953 bytes
is a version-40 monster at 177 × 177 modules that needs to be printed at 9 cm just to be
readable.

So the code holds a URL, and the PDF lives on a server.

## Choose the URL before you generate

The code is permanent; your file layout is not. Two rules:

1. **Use a stable path you control.** `example.com/manual` that you update in place,
   never `example.com/files/manual-v3-final-2026.pdf`.
2. **Avoid links from cloud drives.** Google Drive, Dropbox and OneDrive share links
   change when permissions change, when the file is moved, or when the account is
   reorganised — and they carry an interstitial page that costs the reader a tap.

If you cannot host it yourself, at minimum point the code at a redirect on a domain you
own and change the target behind it later.

## Give people HTML where you can

A PDF on a phone means pinch-zooming, a slow download on cellular, and generally no
screen-reader support. If the content is a menu, a price list, a set of instructions or
a form, an HTML page is faster, accessible and updatable in place. Reserve PDF for what
it is genuinely good at: something intended to be printed or archived with fixed
pagination — a certificate, a spec sheet, a legal notice.

## Size and speed

- Keep it under 1 MB if a phone on cellular will open it.
- Downsample images to 150 dpi for screen use.
- Subset fonts.
- Serve with `Content-Type: application/pdf` and a sane filename, so downloads are
  named usefully.

## FAQ

### Can a QR code contain a PDF file?
No. The maximum payload is 2,953 bytes; a PDF is orders of magnitude larger. The code holds a link to a hosted file.

### Where should I host the PDF?
On a domain you control, at a stable path you can update in place. Cloud-drive share links break when permissions or folders change, and add an interstitial page.

### Should I link a PDF or a web page?
A web page, unless the content genuinely needs fixed pagination. PDFs are slow on cellular, need pinch-zooming, and are usually inaccessible to screen readers.

### How large can the PDF be?
Technically unlimited, practically under 1 MB if people will open it on mobile data. Downsample images to 150 dpi and subset the fonts.

## Try it

- https://useqr.app/pdf
- https://useqr.app/url
- https://useqr.app/menu
