Whooshly Blog · QR codes

Dynamic QR Code: Editable, Trackable, Rented by the Month

A dynamic QR code lets you edit the destination after printing and track every scan, real advantages a static code can't match. The catch: you're usually renting the redirect by the month, and the day you stop paying, the printed code can die.

Updated Jul 2026·7 min read

A dynamic QR code stores a short redirect URL the generator controls rather than your final web address, so you can change the destination after printing and track every scan's time, location, and device. Because that redirect is usually rented monthly, the code stays live only while the plan is paid.

Key Takeaways - A dynamic QR code points at a short redirect the generator owns, so you can edit the destination after printing and read scan analytics a static code can't provide (Scantrust). - There's no "dynamic" type in the QR standard, ISO/IEC 18004; dynamic is a service layer added on top of an ordinary QR (Denso Wave). - Dynamic codes can log total and unique scans, time, location, and device (Uniqode). - The catch: most vendors rent the redirect monthly, and a dynamic code can stop working when the plan or trial lapses (Scanova). - Three years on one 50-code tier runs about $900 to $1,764; Whooshly bundles dynamic codes you own into a one-time $49.

What is a dynamic QR code?

A dynamic QR code encodes a short redirect URL that the generator controls, not your final destination. Scan it, and the phone hits the vendor's server, which looks up where to forward the scan and sends the visitor on. That indirection is the entire trick: the printed pattern never changes, but the address it resolves to can (Scantrust, Bitly).

Worth knowing up front: there's no such thing as a "dynamic" QR code in the actual standard. QR Code is defined by ISO/IEC 18004, approved in 2000, with Japan's JIS X 0510 before it. The standard governs the symbol and how data is packed into the module grid, nothing more. "Dynamic" is a service layer vendors bolt onto an ordinary QR (Denso Wave).

A static code does the opposite. It bakes your destination straight into the black-and-white pattern, so no server sits in the middle. That makes it permanent and free, but frozen: the URL it opens is fixed the moment you generate it. You can make one in seconds with a free static QR generator, no account required.

Static vs dynamic: what actually differs

Four things separate them: whether you can edit after printing, whether you can track scans, whether a server has to stay online, and whether the code can expire. A static code wins on permanence and price. A dynamic code wins on flexibility and data. Here's the honest side-by-side.

FeatureStatic QRDynamic QR
DestinationEncoded in the patternShort redirect the vendor owns
Edit after printingNoYes
Scan trackingNoneTotal, unique, time, location, device
Server dependencyNoneVendor server must stay live
Can it expire?No, unless the URL itself rotsYes, if the plan or trial lapses
Typical costFreeMonthly plan, or pay-once with Whooshly

Let's be fair to dynamic codes, because they earn their keep. Printed the wrong link on 5,000 flyers? A dynamic code lets you repoint the destination without a reprint. Running a campaign across three cities? You get scan counts and locations a static code simply cannot produce. Those two abilities, editing after print and measuring scans, are genuine, and no static code will ever match them. Name that plainly before anyone talks you out of dynamic on principle.

What can a dynamic QR code track?

Because every scan passes through the vendor's server first, a dynamic code can log a lot. Uniqode's analytics documentation lists total and unique scans, a breakdown by day and hour, location down to country, state, and city via IP, plus device, operating system, and browser (Uniqode). A static code logs none of it.

The split between total and unique scans matters more than it sounds. Total counts every scan; unique counts distinct devices, so the gap tells you how many people came back for a second look. A poster with 400 total but 120 unique scans is pulling repeat traffic, not first-time curiosity alone. That ratio is often a better campaign signal than the raw total everyone quotes.

Timing and export round it out. Uniqode timestamps each scan and buckets it by hour, which is how you learn a lunch menu code peaks at 12:30, not at dinner. Most dashboards export the raw scan log to CSV, so you can line two campaigns up side by side in your own spreadsheet instead of trusting the vendor's charts.

For a marketer, that's the real selling point. You can see which poster location pulled scans, whether lunch or dinner drove your menu traffic, and how the iOS-versus-Android split falls by device. Wire the redirect up with UTM parameters and the scans land in your analytics stack next to the rest of your campaign traffic. Tagging clicks as well as scans? A UTM-ready short link does the same job for the web side.

One caveat worth stating: location comes from IP geolocation, not GPS, so treat city-level data as approximate. It's directional, not forensic. Good enough to compare two campaigns, not good enough to pin one scanner to a street corner. And a dynamic code sees devices, not people: you get an OS and an approximate city, never a name or a phone number.

Do dynamic QR codes expire?

Yes, and it's the part most vendors bury in the fine print. A dynamic code lives only as long as the redirect behind it stays switched on. Let a plan or trial lapse, and the printed code can go dead. Scanova states outright that a dynamic code "will stop working once the free trial ends" (Scanova).

The specifics are stricter than you'd guess. QRStuff expires anonymous dynamic codes after 7 days and free-account ones after 30 (QRStuff). ME-QR blocks a dynamic code that goes 365 days without a scan, then deletes it (ME-QR). qr-code-generator.com sends an expired trial code to its own "service page" instead of your destination, so a scanned flyer shows your customer an ad for QR software (qr-code-generator.com).

There's more to this than a single vendor's fine print. Our QR expiry study found that of 15 popular generators, 8 can hand a free or trial user a dynamic code that later dies. That teardown names which ones, and shows exactly how each one fails.

Static codes don't share this failure mode. Nothing sits in the middle to switch off, so a static code scans forever, right up until the destination URL itself rots. That's a real risk too, just a different one, and the fix is pointing at a stable address you actually control.

Dynamic QR code pricing in 2026

Permanent dynamic use is almost always a monthly subscription, and the free tiers are thin. Most vendors gate a usable batch of dynamic codes, roughly 50, behind a $25-plus monthly plan billed annually. Here's what the main players charge as of July 2026.

VendorEntry plan~50-code tierBilling
Whooshly$49 onceIncludedPay-once
BitlyCore $10/mo (5 QR/mo)Growth $29/moAnnual headline
ScanovaBasic $5/mo (3 codes)Standard $25/mo (50)Annual only
FlowcodeFree (2 codes)Pro Plus $25/mo (50)Annual only
Uniqode~$9/mo (vendor claim)Core ~$49/mo (vendor claim)Annual

Two things hide in that table. First, the headline monthly price is usually the annual rate; pay month to month and it climbs, with Bitly's Growth tier around $35 monthly versus $29 on the annual plan. Second, the cheaper tiers meter how many codes you can even create, capping QR creation at roughly 5 to 10 a month on Bitly's lower plans (Bitly). Uniqode's per-tier code counts sit behind a script-blocked page, so treat its exact numbers as a vendor claim.

The catch that isn't printed on the flyer: you're renting the redirect

Every dynamic-code pitch sells editability and analytics. What it doesn't print on the flyer is that you don't own the thing your printed code depends on. You're renting the redirect, and the vendor keeps the off switch. Stop paying, and the code you printed on 10,000 packages can quietly stop resolving.

Run the numbers over a realistic print lifetime and the rental adds up fast. Keeping one 50-code dynamic tier alive for three years works out like this.

Vendor50-code tier3-year cost
Whooshly$49 once$49
Scanova$25/mo~$900
Flowcode$25/mo~$900
Bitly$29/mo~$1,044
Uniqode~$49/mo (vendor claim)~$1,764

A single year of most 50-code tiers already costs 6 to 12 times Whooshly's one-time $49, and the meter never stops. Here's the tell, though. Scanova, a subscription vendor, also sells a one-time "lifetime" single dynamic code. When the company renting you a redirect starts offering to sell one outright, it's quietly conceding what buyers actually want: to own the code, not rent it.

How do you own dynamic QR codes with a one-time payment?

If you want editability and analytics without the rental risk, the answer is ownership. Whooshly bundles dynamic QR codes you own into a single pay-once $49 toolkit, with no monthly plan that can lapse and take a printed code down with it. Repoint the destination whenever you like, read the scan analytics, and never wonder whether a missed invoice just killed the code on your packaging.

There's an optional $9-a-month Pro add-on for teams that want more, but the dynamic codes themselves are yours under the one-time $49. That's the entire point of the model: buy the tool once instead of renting the redirect forever. And if you only need a permanent code with a fixed destination, skip dynamic and grab a free static QR, then check our size guide before it goes to print.

Frequently asked questions

Is a dynamic QR code free?

Rarely for long. Flowcode's free plan includes two dynamic codes (Flowcode), which is the genuine exception. Most other generators gate dynamic behind a trial or a paid subscription, so permanent dynamic use almost always means a monthly plan, unless you buy a pay-once toolkit like Whooshly's $49 Core that bundles dynamic codes you own.

Do dynamic QR codes expire?

Yes, when the plan or trial behind them lapses. Scanova says a dynamic code "will stop working once the free trial ends" (Scanova), and QRStuff expires free-account codes after 30 days. Static codes never expire, because the destination is baked into the pattern with no server to switch off. Our QR expiry study breaks down which generators do this.

What is the difference between static and dynamic QR codes?

A static QR code encodes your destination directly in the black-and-white pattern, so it's fixed at generation and can't be edited or tracked. A dynamic QR code encodes a short redirect the generator owns, letting you change the destination after printing and record scan analytics (Scantrust). The trade-off: dynamic depends on a live server.

Can you change a dynamic QR code after it's printed?

Yes, that's the main reason to use one. The printed pattern never changes; you edit the redirect's target in your dashboard and every future scan lands on the new destination (Bitly). A static code can't do this, because its URL is encoded into the image itself, so a reprint is the only fix.

Can you track who scans a QR code?

With a dynamic code, yes. Because each scan routes through the vendor's server, you can see total and unique scans, time of day, approximate location by IP, and device or OS (Uniqode). A static code routes through nothing, so it records zero scan data. Location is IP-based, so treat city-level figures as approximate.

Tap. Whoosh. You're there.

Buy Whooshly once and own your campaign links for good.

Get Whooshly – $49