# Static vs Dynamic QR Codes

A static QR code carries its data inside the pattern itself and can never be changed, while a dynamic code carries a short redirect link whose destination you edit later on someone's server.

Every QR code is a picture of some text. The difference between static and
dynamic is what that text says.

A **static** code holds the real thing: the whole URL, the WiFi password, the
contact details. Nothing sits between the person scanning and the destination,
which is why a static WiFi or contact code works with the phone in aeroplane
mode. The trade is that the pattern and the data are the same object — change
the data and you have a different pattern, so a printed static code is
permanent by construction.

A **dynamic** code holds a short link to a provider's server, which looks up
where you have pointed it and forwards the scanner on. Because the printed
pattern only encodes the short link, you can change the destination as often as
you like without reprinting, and the provider can count every scan on the way
through. The trade is a monthly bill and a dependency: the code works for
exactly as long as that redirect keeps resolving.

Neither is better in the abstract. A restaurant that changes its menu link
every season wants dynamic. A guest WiFi card, a business card, or a UPI code
at a till wants static, because the data is not going to change and there is no
reason to pay a subscription or route your customers through somebody else's
server. The mistake is not picking the wrong one — it is printing a thousand
static codes for something that was always going to change.

Source: https://useqr.xyz/static-vs-dynamic-qr-codes/
Last updated: 2026-09-10

## Static and dynamic QR codes compared
|  | Static | Dynamic |
| --- | --- | --- |
| Where the data lives | Inside the printed pattern | On a provider's server, behind a short link |
| Editable after printing | No | Yes |
| Counts scans | No | Yes |
| Keeps working if the provider shuts down | Yes | No |
| Works with no internet | Yes, for WiFi, contact and calendar codes | No — every scan is a redirect |
| Ongoing cost | None | A subscription, usually monthly |

## FAQ
### Which one does this site make?
Static, every tool, with no exceptions. The data goes inside the pattern and the code keeps working forever with nothing to pay and nobody to depend on. That is also the honest limitation: once printed, it cannot be changed.

### Can I convert a static code into a dynamic one later?
No, and this trips people up. The pattern is the data, so a printed static code cannot be repointed — a provider would have to give you a new code with a different pattern, and you would reprint. If you know the destination will change, start dynamic.

### Does a dynamic code scan faster or more reliably?
Usually yes, but not because it is dynamic. A short redirect link is far less text than a full URL or a contact card, so the pattern has fewer squares and reads more easily at distance or in poor light. A short static link scans just as well.

### What happens to a dynamic code if I stop paying?
The redirect stops resolving and every printed copy becomes a dead link. This is the real risk people underestimate: the code on your shopfront depends on a subscription staying active and a company staying in business. A static code has no such dependency.

### Is a dynamic code less private for the person scanning?
Yes. Every scan passes through the provider's server before reaching the destination, so the provider records the time, the rough location and the device. A static code sends the scanner straight to the destination with nobody in between.

### When is static clearly the right choice?
When the data cannot change or does not need to: a WiFi password on a guest card, a contact card, a calendar event, your own domain name, or a UPI ID. Also whenever the code must work with no internet connection, which rules out dynamic entirely.
