Static vs Dynamic QR Codes: Which One Do You Need?
A QR code is a pattern that stores a small piece of text. When you scan it, your phone reads the text and decides what to do with it: open a link, join a Wi-Fi network, save a contact. That is the whole mechanism.
What people call "static" and "dynamic" is not a different kind of pattern. It is a difference in what text the code holds, and who controls it.
What static and dynamic QR codes are
A static QR code holds your final content directly. If it encodes https://example.com/menu, the phone reads exactly that and opens it. Nothing sits in between. Once printed, the code can never change and can never expire, because there is no service to turn it off.
A dynamic QR code holds a short link on someone else's domain, for example a short address on a QR service. When scanned, the phone opens that short link, the service looks up where it should go and redirects the scanner to your real destination. The pattern is fixed, but the destination behind it can be edited, and the service can count visits.
How to make a static QR code
- Open the QR Code Generator.
- Type or paste your content: a URL, a plain message or any text.
- Check the preview, then download the image.
- Scan it with your own phone before you use it anywhere. The QR Code Scanner can also read an image file if you want to check from your computer.
- Print or place it, keeping a blank margin around it.
For contact details use the vCard QR Code Generator, which encodes a contact card so a scan offers to save the person. If you have a list, the Batch QR Code Generator makes one code per line.
Benefits of static codes
- No expiry and no subscription. The code keeps working as long as its destination does.
- No dependency. If a QR service raises prices, changes terms or shuts down, your printed codes are unaffected.
- Privacy. Scans go directly to the destination, with no intermediary logging them.
- Works offline for non-link content. Text, Wi-Fi details and contact cards can be read with no internet at all.
- Free. There is nothing to pay for because nothing is hosted.
Where dynamic codes make sense
Dynamic codes solve two real problems:
- Editing after printing. If 5,000 flyers carry a code and the campaign page moves, you can redirect it instead of reprinting.
- Scan analytics. Counts by date, device and rough location are possible because every scan passes through the service.
The cost is dependence. The code works only while the service and your account exist, and the owner of the redirect domain controls where your printed code leads. Many services keep dynamic codes alive only on paid plans. Check current terms before you print thousands of copies.
Where current tools fall short
When you search for a free QR generator, some results quietly make the code dynamic without saying so. You get a pattern that points to the provider's short link, and it can stop working when a trial ends. Other common issues:
- Sign-up required before download.
- Low-resolution or watermarked downloads on free tiers.
- A cap on the number of codes or scans.
- Unclear information on what happens to your content.
Before printing, always check what the code encodes. A static code contains your own URL; if the scanned address is on the provider's domain, it is dynamic.
Everyday situations
- Restaurant menu. A static code to a PDF or page that you update in place. The code never changes; the file behind it does.
- Business card. A static vCard code that stores your contact details, readable offline.
- Wi-Fi sharing. A card on the fridge or guest-room desk with the network name and password.
- Event signage. A short run of signs that point to a schedule page.
- Product packaging. Where the code will be printed once and must work for years, a link to a URL you control is the safest choice.
Tips and mistakes to avoid
- Point at a URL you control. Use a static code to a page on your own domain, then change the page when needed. You get the flexibility of a dynamic code without a third-party redirect.
- Test before printing. Scan from several phones, at the printed size, in normal lighting.
- Keep contrast high. Dark code on a light background; avoid inverted or low-contrast colours.
- Do not make it too small. Tiny codes on glossy or curved surfaces fail often.
- Keep the content short. Longer text makes a denser pattern that is harder to scan.
- Add a human-readable label. Printing the short link or a phrase next to the code helps people who cannot scan.
- Keep a copy of the source. Store the original text so you can regenerate the code later.
How a phone decides what to do with a scan
The QR pattern holds a string of characters. The scanning app looks at the start of that string and picks an action. Text beginning with https:// opens a link. Text beginning with WIFI: joins a network after confirmation. Text that starts with BEGIN:VCARD offers to save a contact. Anything else is shown as plain text.
This is why a static code is so portable: the instructions are in the code itself, so any scanner that follows the format can act on it, with or without an internet connection, apart from opening the web page that a link points to. It is also why you should treat unknown codes carefully. A code can point anywhere, so look at the address a scanner shows before you open it.
A simple decision guide
Ask yourself three questions before you generate anything:
- Will the destination ever change? If it might, point the code at a page you own, not at a file that moves.
- Do you need to know how many people scanned? If yes, you need either a dynamic service or analytics on the destination page.
- How long must the printed code work? If the answer is years, avoid anything that depends on a subscription.
If the first two answers are no, a static code is the simplest choice. If you answer yes to the second, you can often get what you need by adding a campaign parameter to your own link and reading your site analytics, which keeps the redirect under your control.
Size, contrast and error correction
QR codes contain built-in error correction, so a code can still be read when part of it is damaged or covered. That is why a small logo in the middle can work. The more data you store, the denser the pattern, and the larger it should be printed. As a practical habit, keep links short, avoid long query strings, and always leave a clear margin of blank space around the code, usually about four modules wide. Test with at least two different phones before a large print run.
Common scanning problems and quick fixes
If a code will not scan, the cause is usually one of a few things. The code is too small for the distance, the contrast is poor, the surface is glossy and reflecting light, or the pattern is too dense because the content is long. Make it larger, use dark on light, print on matte stock, and shorten the link. Another frequent problem is a quiet zone that has been cropped away by a design tool; the blank border is part of the code and should not be trimmed. Finally, check that the content is exactly what you intended by reading it back with a scanner before you print.
Related reading
If you also work with links and data, Base64 encoding: what it's for explains another everyday encoding, and why client-side tools matter covers why generating codes in the browser avoids a middleman. Browse more on the QR code tools page, or try the Barcode Generator for product-style labels.
Frequently asked questions
- What is the difference between a static and a dynamic QR code?
- A static QR code contains your final content, such as a URL or text, directly in the pattern. A dynamic QR code contains a short redirect link controlled by a service, which then forwards the scanner to your destination. Dynamic codes can be edited after printing; static ones cannot.
- Do static QR codes expire?
- No. A static code has no server behind it, so it works for as long as the destination it points to exists. A static code that links to a web page stops being useful only if that page is taken down.
- Can I change where a static QR code points?
- No. The destination is part of the pattern. To point somewhere else you must generate and distribute a new code, or point the code at a URL you control and change what that page shows.
- Can a static QR code track scans?
- Not by itself. Tracking requires a redirect that counts visits, which is what dynamic codes provide. A workaround is to add a tracking parameter to the link, but that depends on analytics at the destination.
- Are free QR code generators safe?
- Static ones that run in your browser are safe in the sense that nothing is sent anywhere. Be careful with services that generate a short redirect link for free, because the code may stop working if the service changes its terms or removes your account.
- How big should a printed QR code be?
- As a rule of thumb, aim for at least about 2 cm by 2 cm for close-range scanning, and make it larger for posters viewed from a distance. Keep a clear blank margin around it and use strong contrast between dark and light areas.
Tools mentioned
Compare alternatives
More in QR Code Tools
Related posts
How to Split a PDF Into Pages, Ranges or Single Files
Split a PDF into single pages or pull out ranges like 1-3,5, free and in your browser. Learn which tool fits, plus the limits worth knowing.
Rotate and Reorder PDF Pages Permanently, Free
Fix sideways scans and out-of-order pages. Rotate a PDF by 90, 180 or 270 degrees and rearrange or delete pages, all in your browser, with no upload.
Is It Safe to Upload Confidential PDFs to Online Tools?
What happens to a PDF you upload to a free online tool, which risks are real, and how to process contracts and IDs without uploading them at all.