MakeQR

What Is a Dynamic QR Code

One pattern, a destination you can move

  • Free, and no account to create
  • Never expires, unlimited scans
  • Checked to scan before you print it

Change where it points after printing, and see how often it is scanned. First two free and permanent.

What a dynamic code gives you

  • Change where it points any time, without reprinting anything
  • See how often it has been scanned, and when the last scan was
  • Unlimited scans on every plan, including the free one
  • If you ever stop paying, codes keep working for 30 days with three warnings first
Create a free account2 codes free. Paid plans from $7/month.

Scan to test

Y
yoursite.com
Create this dynamic code

Free for your first 2 codes. We only need an email, and nothing is charged.

A dynamic QR code does not contain your destination. It contains a short MakeQR link, and that link forwards to wherever you currently point it, which is what lets you change the destination after the code is printed. Two dynamic codes are free forever on MakeQR and need a verified email address, because a redirect anyone could create anonymously is exactly what a phishing campaign wants.

What is a dynamic QR code, in one mechanical sentence: a pattern that encodes a short link belonging to the generator rather than the address you actually want people to reach. The scan goes to that short link first, the server looks up where it should currently forward, and the visitor arrives at your destination without ever seeing the detour. Because the printed pattern only ever held the short link, you can change the destination afterwards and every copy already on a poster, a label or a business card follows the change.

How a dynamic code gets from pattern to destination

  1. The code is created and gets its own short link

    When you make a dynamic code, it is assigned a short identifier on the MakeQR domain. That identifier, not your URL, is what gets encoded into the pattern you download and print.

  2. A scan reaches the redirect, not your site

    The phone camera opens the short link. The server reads the identifier, looks up the destination recorded against it, and answers with a redirect. The visitor's browser follows it immediately.

  3. The destination is checked before it goes live

    Every destination is validated when it is set and when it is changed. A redirect that can be edited after printing is useful to you and attractive to someone sending people somewhere harmful, which is why the check happens on the way in rather than after a complaint.

  4. Editing the destination changes nothing on paper

    Change the URL in the dashboard and the next scan of the same printed code lands at the new address. The pattern is untouched because the pattern never held the old address.

  5. Scans are counted as they pass through

    Because every scan goes through the redirect, it can be counted. A static code has no such moment, which is why a scan count is not something that can be added to it afterwards.

Why only dynamic codes can report anything

A static code is finished the moment it is drawn: the destination is in the pattern, the phone goes straight there, and nothing in the path belongs to the generator. No count exists because no server was involved. A dynamic code is the opposite — the redirect is a step you own, so it is also the step where a scan can be recorded. Tracking is not a feature bolted onto dynamic codes; it is a side effect of the redirect that makes them dynamic in the first place.

What a dynamic code reports, and what it deliberately does not

The free plan shows how many scans a code has had and when the last one happened. Starter and above add scans per day, unique scanners per day, country and device type for the last thirty days. The country is read from the connection at the moment of the scan and only the two-letter code is kept — no address is stored, and nothing finer than country exists to report. Unique scanners are counted with a daily hash whose random salt is deleted every day, so the same person scanning on Tuesday and Wednesday is two counts, not one recognised visitor.

The cost, and what happens if you stop paying

Two dynamic codes are free forever. They do not expire, they do not stop redirecting, and they do not require a card. Paid plans raise the number of codes and the depth of the statistics rather than unlocking the redirect itself. If a paid subscription ends, two of your codes keep working permanently — which matters more than it sounds, because a code that dies with a subscription is a code you cannot safely print.

When a static code is the better answer

A WiFi code cannot usefully be dynamic: the network name and password have to be in the pattern for the phone to join, so there is nothing to redirect. The same goes for a vCard, a plain phone number or an SMS draft. And for a link that will never move — a company homepage on a building sign — a static code removes a dependency instead of adding one.

What is actually inside the pattern

A short URL on the MakeQR domain and nothing else. Your destination lives in a record the redirect looks up, not in the printed ink, which is the entire reason the destination can move. Decode a dynamic code with any scanner app and the short link is what you will see.

Inside the code
https://makeqr.ai/r/AbC1234

Printing something you intend to repoint

A short link encodes less data than a long one, so a dynamic code is usually a lower version with larger modules at the same physical size — slightly easier to scan than a static code carrying a long URL with tracking parameters. The practical minimum for arm's-length reading is unchanged, and the usual width-to-distance margin applies.

Print it at least 20 mm (2.0 cm) wide

Misunderstandings that cost real money

  • Assuming a static code can be edited later

    It cannot, by any tool, including this one. The destination is physically part of the pattern. If there is any chance the link will move, that decision has to be made before the print run, not after.

  • Expecting scan statistics from a code that was printed static

    There is no server in the path to count anything, so the data does not exist retroactively. The code has to be dynamic from the start for any number to be available at all.

  • Treating the redirect as something you can host yourself later

    The short link in the pattern belongs to the generator that issued it. Moving away means printing new codes, which is worth knowing before committing a long print run to any provider.

Deciding which one you need

If the destination is settled and will not move, a static code is free, unlimited and permanent, and nothing in the path can fail. If the destination might change, or you want to know whether anyone is scanning at all, the code has to be dynamic from the beginning — the first two are free forever with a verified email address.

How dynamic QR codes work

Where the redirect pays for itself

  • A printed menu card that points at a seasonal menu replaced four times a year.
  • A conference banner reused next year with the new programme behind the same code.
  • A product insert where the support page moves when the documentation is reorganised.
  • A property sign that should point at the next listing once the current one sells.

A QR code that still works next year

Most of what goes wrong with a QR code happens after it is printed. These six things are why ours does not.

  • Checked before you print

    We decode every code you make and read it back. If a logo covers too much or a colour is too faint for paper, you find out here — not after the print run.

  • Unlimited scans, every plan

    Including the free one. A scan cap kills a printed code at the moment it starts working, which is why we do not have one.

  • We do not switch off your codes

    Two dynamic codes stay yours permanently, whatever you pay us. Cancel a paid plan and you keep them — the rest pause after 30 days, with three warnings first, and a paused code shows a neutral page, never a sales page.

  • Made on your device

    Static codes never reach our servers. Your WiFi password, your contact details and your logo stay in the browser — which is also why there is no limit.

  • Ready for the printer

    SVG for anything that gets scaled, and PNG at 1024px so the edges stay hard. Both free, no account.

  • Available in English, Norwegian Bokmål, Danish, Swedish, German, French, Dutch, Italian, Spanish, Finnish, Portuguese, and Polish

    The generator and every page speak English, Norwegian Bokmål, Danish, Swedish, German, French, Dutch, Italian, Spanish, Finnish, Portuguese, and Polish. More languages follow as each one is reviewed by a native speaker.

See what happens after you print

A dynamic code points at a short link you own. Change where it goes without reprinting anything, and see how often each code has been scanned and when the last scan was.

  • Change the destination any time, as often as you like
  • A scan count and the last scan for every code
  • No scan limit, on any plan
  • Cancel and you keep two codes permanently — the rest pause after 30 days
Start free

2 codes free. Paid from $7/month. Compare plans

MakeQRCNCafe Nord

Analytics

Aug 14 – Sep 12

7D30D90D1Y

Total scans

11,875

18%

Unique scanners

8,431

14%

Active codes

24

3

Scans per day

396

18%

Scans over time

0
200
400
600
800
Aug 14Aug 21Aug 28Sep 4Sep 11

Devices

62%

of scans came from an iPhone

  • iPhone62%
  • Android34%
  • Other4%

What Is a Dynamic QR Code: questions and answers

Short answers to what people ask before they print. Anything else, write to us.

Ask us something else

What is a dynamic QR code in simple terms?

A code that holds a short link belonging to the generator instead of your destination. The short link forwards to wherever you currently point it, so you can change the destination without reprinting the code.

Does a dynamic QR code expire?

On MakeQR the first two dynamic codes are free forever and keep redirecting whether or not you ever pay. Two codes also keep working permanently if a paid subscription ends.

Why does a dynamic code need an account when a static one does not?

A static code is made entirely in your browser, so there is nothing to store. A dynamic code needs a record on a server that can be edited later, and an editable redirect is a phishing tool unless the person who owns it has a verified email address.

Can a static code be converted into a dynamic one?

Not the printed one. The destination is inside its pattern, so converting means generating a new dynamic code and replacing what is already printed.

Is the scan count exact?

It counts requests that pass through the redirect, and link previews and email scanners are excluded so an unopened message does not inflate the number. Treat it as a reliable trend rather than an audited figure.

Does the visitor notice the redirect?

No. The forward happens before the page loads, so the destination opens the way it would from any other link. The short link is visible only to someone who decodes the pattern deliberately.

Make a code that still works next year

Free static codes with no account, two permanent dynamic codes, unlimited scans on every plan, and a check that tells you it scans before you print it.

Make a QR code

No account for static codes. Nothing to cancel.