Static and dynamic QR codes look identical to a phone. The difference is invisible but decisive: what the pattern contains — a full destination, or a short link that redirects. This article is the technical comparison: encoding, capacity, error correction, and the operational consequences of the redirect layer.
What the code actually contains
A QR code is a two-dimensional barcode encoding a byte string. Two encodings are in play:
STATIC: "https://example.com/very/long/path?utm_source=x&utm_medium=y&utm_campaign=z" (in the pattern)
DYNAMIC: "https://yas.sh/launch" (in the pattern)
The static code is the destination — change the destination and the code is wrong forever. The dynamic code encodes a short link; the redirect decides the destination. That one indirection changes everything operational.
Capacity and density
| Version | Modules | Max bytes | Max URL-ish chars |
|---|---|---|---|
| 10 | 57×57 | 271 | ~180 |
| 20 | 97×97 | 858 | ~570 |
| 30 | 137×137 | 1,723 | ~1,150 |
| 40 | 177×177 | 2,953 | ~2,000+ |
Long URLs in static codes push the version up: the code gets denser, the minimum print size grows, and scanning distance shrinks. A 2,000-character static URL needs a code that struggles on anything smaller than a poster. A dynamic code with a 15-character slug stays a small, high-version-tolerant pattern no matter how long the real destination is.
Error correction: the print insurance
Error correction levels trade density for resilience:
| Level | Recovery | Use case |
|---|---|---|
| L | 7% | Clean digital screens |
| M | 15% | Standard print — the default |
| Q | 25% | Textured or folded surfaces |
| H | 30% | Logos embedded, heavy damage expected |
Higher correction makes the pattern denser — which is why "add a logo AND use level H" needs a size test, not a hope. The logo overlay guide covers the sizing math.
The operational table
| Static | Dynamic | |
|---|---|---|
| Destination change | Reprint or redo | Edit in a dashboard (or PATCH via API) |
| Analytics | None | Scans, devices, referrers, series |
| Expiry | Not possible | Possible (410 after a date) |
| Per-code identity | No | Yes — each code is a unique link |
| Capacity pressure | Long URLs = dense codes | Short slug always |
| Cost | Same | Same (free tier includes QR) |
| Offline | Works (no network needed to read) | Works to read; needs network to redirect |
When static genuinely wins
- Ultra-permanent surfaces: etched serial plates, product engravings — where the encoded data is an identifier, not a URL.
- Pure data payloads: Wi-Fi credentials, contact cards (vCard), plain text — not URLs at all.
- Fully offline contexts: the reader will never have connectivity; the code must carry everything.
- One-shot internal codes: temporary labels where reprint cost is zero.
When dynamic wins (most real-world marketing)
- Any printed material with a URL — menus, packaging, posters, business cards. Destinations change; print doesn't.
- Anything you want to measure — scans are clicks in the analytics pipeline (guide).
- Anything with a lifecycle — campaign windows, event agendas, seasonal offers (expiry).
- Multi-format print — one short link renders at 128–1024px PNG or SVG via the QR API.
The decision rule
Ask one question: will this code outlive its destination? If yes — dynamic. If the encoded data isn't a URL at all — static. Everything else is a variant of those two.
The technical difference that matters
Both a static and a dynamic QR encode a URL, but they differ in what that URL is and how it behaves. A static QR encodes the final destination directly — the code is fixed at print time, and editing the destination means reprinting. A dynamic QR encodes a short link that redirects to the destination — the code itself never changes, but the destination it points to can be updated at any time through the dashboard. This single architectural difference is what unlocks editability and measurement, because the short link in the middle is a live, trackable layer.
What editability buys you
The ability to change a destination without reprinting is more valuable than it first appears. Printed material — flyers, packaging, posters, table tents — is expensive and slow to reproduce, yet the destination behind a code often changes: a menu updates, an offer expires, a booking URL moves, a campaign pivots. With a dynamic code, you edit the link once and every printed code inherits the change instantly. This is the same logic that makes dynamic QR codes the default for business use: the code is permanent infrastructure, and the destination is a live, changeable value behind it.
What measurement adds on top
A dynamic code also measures. Because the click passes through the short link, the platform records scans, their sources, devices, and timing — data a static code cannot produce, because a static code never contacts your tracking infrastructure. This turns the code from a one-way pointer into a channel you can analyze: which placements get scanned, which campaigns perform, where to invest. For anything with a business outcome, measurement usually justifies the dynamic choice on its own.
When static still wins
Static codes are not obsolete. They are ideal when the destination will never change, when you do not need scan analytics, and when simplicity and zero ongoing dependency matter most — a permanent link in a stable place, printed once with no need to edit. The honest decision rule: if you may ever need to update the destination or measure scans, go dynamic; if the destination is permanent and you need no data, static is simpler and cheaper. Weighing these two against your actual use case is the whole decision.
A simple decision rule
If you are still undecided, default to dynamic for anything that could change or that you want to measure, and reserve static for permanent, no-data, never-edit destinations. That rule errs toward flexibility at a modest cost, which is the safer side of the trade-off for most business use.
Conclusion
The picture is the same; the redirect layer is the product. Dynamic QR codes trade a tiny indirection for re-targeting, analytics, expiry, and print-friendly density — which is why printed marketing has almost entirely moved to them. Generate both from the QR endpoint and compare the patterns yourself; the business guide has the print specs that make either one scan.
