Static vs dynamic QR codes

One encodes your destination directly. The other encodes a redirect someone else operates. The difference decides whether you can edit the code later — and who can watch it being used.

Short answerA static QR code has the destination written into the pattern: it never expires and nobody can track it, but it cannot be changed after printing. A dynamic QR code encodes a short redirect URL, which its owner can re-point and measure, at the cost of depending on that redirect service for ever.

What a static QR code is

In a static code, the URL is the data. Scanning it reconstructs the exact address from the printed squares and hands it straight to the browser. No server is consulted to find out what the code means, because the code already says.

  • Never expires. There is no account, subscription, or lookup to lapse.
  • Nobody in the middle. No third party sees the scan, because no third party is involved.
  • No ongoing cost. A million scans cost the same as one.
  • Cannot be edited. The destination is set the moment you print.
  • Not measurable as scans. You can see visits in your own analytics, but not scans specifically.
  • Density grows with the URL. A long address makes a denser, harder-to-scan pattern.

What a dynamic QR code is

A dynamic code encodes a short URL belonging to a QR service — something like qr.example/a7Fk2. Scanning it contacts that service, which looks up the current destination and forwards the visitor there.

  • Editable after printing. Change the destination in a dashboard and every printed copy follows.
  • Measurable. Scan counts, times, rough locations, device types.
  • Always low density. The encoded URL is short regardless of where it ends up pointing.
  • Can expire. Trials end, subscriptions lapse, scan quotas run out, companies close.
  • Ongoing cost. Usually a monthly fee, sometimes tiered by scan volume.
  • A third party sees every scan. And the redirect adds a hop before your page loads.

Side by side

Static and dynamic QR codes compared
StaticDynamic
What is encodedYour full destination URLA short redirect URL
Editable after printingNoYes
ExpiresNeverIf the plan or provider ends
Scan analyticsNoneBuilt in
Ongoing costNoneUsually a subscription
Third party sees scansNoYes — the redirect operator
Pattern densityGrows with URL lengthAlways low
Extra network hopNoYes
Works if the provider disappearsYesNo

Which one to use

Choose static when

  • The destination is stable — your homepage, your menu page, your contact page.
  • The print run is large or permanent: packaging, signage, engraved plates, published books.
  • The link is sensitive, and handing every scan to a third party is not acceptable.
  • You want no recurring cost and no dependency that could fail.

Choose dynamic when

  • The destination genuinely will change — a seasonal campaign, a rotating offer.
  • Scan counts are the point, as in a trackable advertising campaign.
  • You are printing before the destination exists.
  • You need one code to send different people to different places, by language or location.

The option most people miss

You can have most of both. Encode a static code pointing at a URL on your own domain — yoursite.com/spring — and serve a redirect from that path. You get editability and your own analytics, with no third-party service, no subscription, and nothing that can expire while you still own the domain.

The trade is that you have to operate the redirect yourself, and the encoded URL is longer than a commercial short link, so the pattern is a little denser.

Which kind QR From Link makes

QR From Link generates static QR codes only. The URL you paste is encoded directly into the pattern, with no redirect in between. That is a deliberate consequence of how the tool works: the code is built by JavaScript in your browser, and there is no server here that could operate a redirect even if one were wanted.

The practical effects are the ones in the table above. The codes never expire and carry no cost or account. They also cannot be re-pointed after printing, and this site can offer no scan statistics — there is nothing here that observes a scan, which is the same property that makes it private.

If you need editability, the honest answer is either a redirect on your own domain or a paid dynamic-code provider. This tool will not pretend to do something it cannot.

Make a static code that points straight at your page:Open the generator

Related questions

Neither in general. Static is better for permanence, privacy, and cost — nothing to renew and nobody watching. Dynamic is better when the destination must change after printing or when scan analytics are the point. Match the choice to whether the destination is settled.

Not directly, because the destination is part of the printed pattern. If the static code points at a URL you control, you can achieve the same effect by turning that URL into a redirect and changing where it leads.

Usually only as a trial. Free dynamic codes commonly stop redirecting after a week or two, or after a scan quota, because the provider must keep a redirect running for the life of the code. A free static code has no such cost to anyone and therefore no such limit.

Not as scans, but you can track the visits. Add campaign parameters to the URL before generating and your own analytics will attribute the traffic. What you cannot see is a scan that did not result in a page load.

Because it contains your whole URL, while a dynamic code contains a short redirect. More characters means a higher version and smaller modules. Shortening the destination path is the simplest way to coarsen a static code.