Static vs dynamic QR codes: which one to use
Use a static QR code when the content will never change and you don't need scan counts: Wi-Fi details, a contact card, a note. Use a dynamic QR code when you might change the link after printing, want to know how often it is scanned, or need the smallest code. A static code stores the content itself in the pattern. A dynamic code stores a short link, such as HTTPS://QEX.ME/AB3XK, that redirects to a destination you can change.
The differences side by side
| Static | Dynamic | |
|---|---|---|
| What the pattern holds | The final content: a link, Wi-Fi details, a contact card or text | A short link on the provider's domain that redirects to your destination |
| Change it after printing | No. New content means a new pattern and a reprint | Yes, from the account that owns the code |
| Scan counts | No. Nothing sits between the phone and the content | Yes. The provider counts each scan as it redirects |
| Code size for a web link | Grows with the link: 25×25 for https://example.com, 41×41 for a long form link | Fixed by the short link: 21×21 at Qex whatever the destination, 25×25 with a logo |
| Needs internet to scan | Wi-Fi, contact cards and text work offline. A link still needs a connection to open the page | Yes. Every scan goes through the provider's redirect first |
| Depends on a service | No. It works as long as the print is readable | Yes. If the provider switches the link off, the print stops working. See do QR codes expire? |
| Who sees each scan | Only the destination, and only for links | The provider too. Qex analytics keep the day, hour, country, city, device, operating system and browser of each scan |
| Cost | Free with any generator | Often a paid plan or a trial. Free dynamic plans compared |
Already printed one and not sure which kind it is? Tell a printed static code from a dynamic one.
Which one makes a smaller code
Usually the dynamic one. A static code has to hold the whole link, so every extra character can add rows and columns. A Qex short link is written in capital letters, which QR codes store more compactly, so it fits the smallest grid, 21×21, whatever the destination. The table is measured with the encoder Qex uses: modules across, without the clear margin. A centre logo needs stronger error correction, which makes every code bigger.
| Content | No logo | Logo | Module, no logo |
|---|---|---|---|
| Dynamic: Qex short link, any destination (20 characters) | 21×21 | 25×25 | 0.86 mm |
| Static: Short link (19 characters) | 25×25 | 29×29 | 0.76 mm |
| Static: Page link (28 characters) | 29×29 | 33×33 | 0.68 mm |
| Static: Longer page link (47 characters) | 33×33 | 41×41 | 0.61 mm |
| Static: Link with tracking tags (64 characters) | 37×37 | 45×45 | 0.56 mm |
| Static: Shared form or document link (91 characters) | 41×41 | 53×53 | 0.51 mm |
| Static: Wi-Fi network (44 characters) | 33×33 | 37×37 | 0.61 mm |
| Static: Contact card (name, phone, email, company) (134 characters) | 49×49 | 61×61 | 0.44 mm |
Bigger modules are easier for phone cameras to read from a distance or on a small print. A static code for a short address is only one size up, so size alone rarely decides it. Long links with tracking tags, shared documents and contact cards are where static codes get dense. Module widths are calculated, not tested minimums: check the print checklist before a batch.
Which one for your job
| Job | Pick | Why |
|---|---|---|
| Guest Wi-Fi | Static | The phone needs the network name and password in the code to join. A link cannot join a network. New password, new print |
| Restaurant menu | Dynamic | Menus and prices change; the table tents stay. Point the same code at the new menu |
| Business card | Either | A static contact card saves your details without a website but is 49×49 or more. A dynamic link to your profile page stays 21×21 without a logo and survives a job change |
| Posters, flyers and events | Dynamic | Scan counts show which print worked, and a typo in the link can be fixed after printing |
| Packaging and long-life signs | Dynamic, from a provider whose codes don't expire | Pages move over years. Static only if the address is yours and permanent |
| A note or instructions | Static | Short text is read straight from the code, with no connection and no service behind it |
A static code cannot be turned into a dynamic one after printing, because the pattern holds the final address. Your options for a printed static code.
Make either kind with Qex
- Dynamic: leave scan tracking on in the builder. Free codes have unlimited scans, don't expire and redirect straight to the destination with no ad page. The free plan keeps 10 codes active once you save the workspace with an email (5 before), with 30 days of analytics.
- Static: turn scan tracking off in the builder to download a static code made in your browser, with no account. The Wi-Fi, contact card and text generators always make static codes. Other free generators' static downloads work the same way: we decoded four of them and each held the exact link.
Free dynamic QR code · Wi-Fi QR code · Why 21×21 · Do QR codes expire?