Every QR code you've ever scanned falls into one of two categories: static or dynamic. They look identical on paper, but they behave very differently once printed — and picking the wrong one for your project can mean reprinting a thousand flyers or losing every scan statistic you wished you had. This guide explains the actual difference, where each one wins, and a simple rule for deciding.

The core difference in one sentence

A static QR code stores your content directly inside the pattern; a dynamic QR code stores a short redirect link, and the real destination lives on a server where you can change it anytime.

That single design decision drives everything else — editability, tracking, code density, even privacy.

How static QR codes work

When you generate a static QR code for a URL, a Wi-Fi network, or a contact card, the data itself is encoded into the black-and-white modules. Scan it with any phone and the camera reads the content straight from the image. No server is involved at any point.

This has real consequences:

  • It works forever. There is no subscription to lapse and no service that can shut down. The code is self-contained.
  • It cannot be edited. If the URL changes or you update your phone number, the printed code is permanently wrong. Your only fix is generating and printing a new one.
  • There are no scan statistics. Since nothing touches a server, nobody — including you — knows how many times it was scanned.
  • It gets denser with more data. A full vCard with name, company, two phone numbers and an address produces a visibly more crowded pattern than a short URL. Denser codes need to be printed larger to scan reliably (see our QR code size guide).

One underrated advantage: privacy. In QR Studio Lab, static codes are generated entirely in your browser — your Wi-Fi password or contact details are encoded locally and never sent to a server.

How dynamic QR codes work

A dynamic QR code encodes only a short link, something like yourservice.com/r/abc123. When someone scans it, their phone requests that link, the server logs the scan and instantly redirects to whatever destination you've currently set.

Because the destination lives on the server rather than in the printed pattern, you get:

  • Editability. Point the same printed code at a new menu, a new landing page, or a corrected URL — without touching the print. This is the feature that saves reprint costs.
  • Scan analytics. Each scan is a measurable event. A dynamic QR code from QR Studio Lab reports scans by country, device, and day, so you can see whether the poster in the shop window actually outperforms the one at the counter.
  • A simpler, less dense pattern. Since only a short URL is encoded — no matter how long the real destination is — the code stays sparse and scans easily even at small sizes.

The trade-off is dependency: a dynamic code only works while the redirect service is running. If the service disappears, the code dies with it. That's why it matters to use a provider you expect to stick around, and why long-lived permanent signage (a memorial plaque, an equipment label meant to last 15 years) is often better served by a static code.

Side-by-side comparison

FeatureStaticDynamic
Content after printingFixed foreverEditable anytime
Scan trackingNoneCountry, device, day
Works offline / without a serviceYesNo — needs the redirect server
Pattern densityGrows with data lengthAlways short and sparse
Typical costFree, unlimitedFree tier, then paid (QR Studio Lab includes 3 dynamic codes free)
Best forWi-Fi, permanent signs, one-off linksCampaigns, menus, packaging, anything you'll measure or update

When to choose static

  • Wi-Fi access codes. The network credentials should stay on paper, not on someone's server.
  • Permanent installations. Plaques, engraved signs, product serial labels — anything meant to outlive a software subscription.
  • One-off personal use. A link in a slide deck or a QR on a wedding invitation doesn't need analytics.
  • Content that isn't a link. Plain text, phone numbers, or SMS codes work fine as static.

When to choose dynamic

  • Anything printed in volume. If 5,000 brochures go out with a typo'd URL, a dynamic code turns a disaster into a 30-second edit.
  • Marketing campaigns. Without scan counts you're guessing. With them, you know which placement, city, or week performed.
  • Restaurant menus and price lists. The laminated table card stays; the PDF behind it changes weekly.
  • Packaging. Product pages move, support docs get updated — the printed box shouldn't care.

A simple decision rule

Ask two questions:

  1. Might the destination ever change? If yes, go dynamic.
  2. Do I want to know how many people scanned it? If yes, go dynamic.

If the answer to both is no — the content is permanent and you don't need numbers — static is the better choice: it's free, private, and immune to service outages.

Can you convert one to the other?

Not after printing. The static/dynamic decision is baked into the pattern the moment you generate it, which is why it's worth deciding before the print run, not after. If you're unsure, dynamic is the safer default for anything link-based: worst case, you never edit it and never look at the stats — but the options are there.

Whichever you pick, generate the code, download it as PNG for digital use or SVG for print, and test it with a real phone before sending anything to the printer. If a code refuses to scan, our guide to why QR codes fail covers the usual suspects.