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 and dynamic QR codes compared
StaticDynamic
What the pattern holdsThe final content: a link, Wi-Fi details, a contact card or textA short link on the provider's domain that redirects to your destination
Change it after printingNo. New content means a new pattern and a reprintYes, from the account that owns the code
Scan countsNo. Nothing sits between the phone and the contentYes. The provider counts each scan as it redirects
Code size for a web linkGrows with the link: 25×25 for https://example.com, 41×41 for a long form linkFixed by the short link: 21×21 at Qex whatever the destination, 25×25 with a logo
Needs internet to scanWi-Fi, contact cards and text work offline. A link still needs a connection to open the pageYes. Every scan goes through the provider's redirect first
Depends on a serviceNo. It works as long as the print is readableYes. If the provider switches the link off, the print stops working. See do QR codes expire?
Who sees each scanOnly the destination, and only for linksThe provider too. Qex analytics keep the day, hour, country, city, device, operating system and browser of each scan
CostFree with any generatorOften 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.

Grid size by content, and module width when printed 25 mm wide including the clear margin
ContentNo logoLogoModule, no logo
Dynamic: Qex short link, any destination (20 characters)21×2125×250.86 mm
Static: Short link (19 characters)25×2529×290.76 mm
Static: Page link (28 characters)29×2933×330.68 mm
Static: Longer page link (47 characters)33×3341×410.61 mm
Static: Link with tracking tags (64 characters)37×3745×450.56 mm
Static: Shared form or document link (91 characters)41×4153×530.51 mm
Static: Wi-Fi network (44 characters)33×3337×370.61 mm
Static: Contact card (name, phone, email, company) (134 characters)49×4961×610.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

A pick for common jobs
JobPickWhy
Guest Wi-FiStaticThe phone needs the network name and password in the code to join. A link cannot join a network. New password, new print
Restaurant menuDynamicMenus and prices change; the table tents stay. Point the same code at the new menu
Business cardEitherA 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 eventsDynamicScan counts show which print worked, and a typo in the link can be fixed after printing
Packaging and long-life signsDynamic, from a provider whose codes don't expirePages move over years. Static only if the address is yours and permanent
A note or instructionsStaticShort 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

Make a QR code

Free dynamic QR code · Wi-Fi QR code · Why 21×21 · Do QR codes expire?