Static vs Dynamic QR Codes: What's the Difference?

By QR Hut team · Published · 6 min read

Look for a QR code generator and you will soon meet two labels: static and dynamic. The QR Code standard itself does not know either term; every QR code is a pattern that stores data. The difference lies in what data is stored and who controls what happens after a scan. This guide explains both types, compares them honestly and shows a middle path that many small businesses overlook.

What a static QR code is

A static code contains your content directly. For a website, the pattern encodes the full address; for Wi-Fi, the network name and password; for a contact card, the complete vCard text. A phone that scans it reads that content straight from the image. No server belonging to the company that made the code is involved.

Typical contents of static codes:

Four properties follow from this. A static code is permanent: nothing can switch it off, and it works for as long as what it points to exists. It is private: nobody in between counts or logs the scans. It can work offline: Wi-Fi, contact and text codes need no internet connection at all. And it is fixed: to change the content, you have to make and print a new code.

What a dynamic QR code is

A dynamic code stores a short web address that belongs to a QR code service, something like https://qr-service.example/x7Kp2. When someone scans it, the phone opens that address, the service looks up where you want visitors to go and redirects them there. Because the printed code only contains the short link, the service can send people somewhere else whenever you change the setting in your account.

The redirect step also lets the service record each scan: the time, the device and operating system, and an approximate location derived from the IP address. That is where the scan statistics offered by dynamic services come from.

A dynamic code is therefore editable and measurable, but also dependent on the provider's servers, your account and usually a subscription, and it always needs an internet connection. It also only really works for web links. A phone joins a Wi-Fi network or saves a contact from the data in the code; it does not follow a redirect to do so. So-called dynamic Wi-Fi or vCard codes usually open a web page that displays the details, which adds a step for the person scanning.

Side-by-side comparison

Static codeDynamic code
Where the content livesIn the codeIn the provider's database
Change after printingNoYes
Scan statisticsNoYes
Works without internetYes, for Wi-Fi, contact and text codesNo
Depends on a third partyNoYes
Typical costFreeOften a subscription
Privacy of people scanningNothing logged by the codeEvery scan passes through the provider
Domain shown in the phone's previewYour ownThe provider's short domain

The hidden cost of dynamic codes

Dynamic codes are genuinely useful, but the trade-off is easy to miss when you are about to print thousands of flyers. If the provider closes, changes its prices or suspends your account, every code you printed stops at its server. Some services offer free trials after which codes are disabled, and others keep codes working only while a paid plan is active. Before relying on one, find out:

There is also a trust angle. When people check the link preview before opening it, which is a good habit explained in our QR code safety guide, an unfamiliar redirect domain looks less trustworthy than the name of your own website.

The middle path: a static code that points to your own domain

If what you want is flexibility rather than detailed analytics, a static code gets you most of the way:

  1. Create a short, permanent address on a website you control, such as example.com/menu or example.com/qr/poster.
  2. Encode that address in a static QR code with a QR code generator.
  3. When things change, update the page at that address, or set up a redirect on your own web server or hosting platform.

The code never needs reprinting as long as you keep the domain, and nobody sits between your customers and your site. For measurement, add a campaign tag to the address you encode, for example example.com/menu?utm_source=table-card, and read the visits in the analytics tool you already use; UTM tags like this are understood by Google Analytics and many other tools. Different tags on different printed pieces tell you which ones people actually scan.

The catch is that you need a website and must keep renewing its domain. If the domain lapses, the codes break, which is the same risk as a provider disappearing, except that it stays under your control.

When each type makes sense

Choose a static code when:

A dynamic code can make sense when:

What QR Hut offers

QR Hut makes static codes only. Codes are generated in your browser, and we do not store them. That means we cannot edit them after you download them, cannot switch them off and cannot count scans. This is deliberate: static codes suit most everyday uses and keep you independent. If you may need to change a destination later, use the own-domain approach above. For Wi-Fi, contact and email codes, static is the only kind that works directly anyway.

Quick answers

Do static QR codes expire?

No. The pattern itself cannot expire. What can go out of date is the content: a deleted web page, a changed Wi-Fi password or a new phone number.

Can a static code be turned into a dynamic one later?

No, you would have to print a new code, unless the static code already points to an address on your own domain, which you can redirect whenever you like.

Are dynamic codes easier to scan?

Sometimes. A short redirect link produces a less dense code than a long URL, which helps small prints. A short address on your own domain has the same effect.