Resources

Dynamic and static codes, and why it cannot be undone

The single decision that matters most, made before you download and irreversible once the code is printed. It is worth two minutes.

A static code contains your link

The destination is encoded in the pattern of the squares. Scanning it never touches our servers or anybody else's — the phone reads the URL straight out of the image and goes there.

That makes it permanent in both senses. It will work in ten years whether we exist or not, and it can never be changed by anyone, including you, including us — if the destination dies, the code dies with it. Nor can it be measured: there is no request to count, so a static code produces no analytics at all.

A dynamic code contains a short address

The pattern encodes a short address that resolves through us and forwards to wherever you have currently pointed it. Change the destination whenever you like; the printed square is untouched.

Because the request passes through, it can be counted — which is where every report in the product comes from.

How to choose

If the destination will never change and you do not need to measure anything — a Wi-Fi password, a phone number, a permanent reference document — static is simpler and depends on nobody.

For anything promotional, anything printed in quantity, and anything you will want to report on, dynamic. The cost of guessing wrong is asymmetric: a dynamic code you never repoint cost you nothing, and a static code you needed to repoint costs a reprint.

It cannot be converted afterwards

The two kinds encode different data, so the printed symbols are physically different. Converting one to the other means a new code and new artwork. The studio tells you which one you are making before you download it, for exactly this reason.

See it happen

printed once menu.pdf autumn menu booking form
Only the dynamic one can do this. The static one is fixed the moment it is generated.

What you can do with it

A static code contains your link, permanently

Scanning it never touches our servers or anybody else's. It will work in ten years whether we exist or not, it can never be changed by anyone including us, and it produces no analytics at all — there is no request to count.

A dynamic code contains a short address

The pattern encodes an address that resolves through us and forwards to wherever you have currently pointed it. Change the destination whenever you like; the printed square is untouched. And because the request passes through, it can be counted.

The cost of guessing wrong is not symmetrical

A dynamic code you never repointed cost you nothing. A static code you needed to repoint costs a reprint. That asymmetry is the whole decision procedure.

Getting there

  1. Ask whether it can ever change

    If the honest answer is "probably not", it is still dynamic.

  2. Ask whether you want to measure it

    If yes, it must be dynamic. There is no other option.

  3. Check what the studio says

    It tells you which one you are making before you download.

  4. Then print it

    Because after that the decision is made for you.

More in the same place

Static: permanent Works forever, changes never.
Static: no data Nothing to count, because nothing is requested.
Dynamic: editable For the life of the code.
Dynamic: measured Every report comes from this.
Both: codes that never stop working A generous scan allowance on every plan, and going past it never breaks the redirect.
No conversion The two encode different data. It is a new code.

Questions

Can I convert a static code to a dynamic one?

No. They encode different data, so the printed symbols are physically different — converting means a new code and new artwork.

Does a dynamic code stop working if you go out of business?

It would, which is the honest answer and the one real argument for static. For anything you are printing in the hundreds of thousands it is worth weighing against never being able to fix a dead link.

Is a dynamic code slower to open?

By one redirect, resolved at the edge. It is not something anybody notices.

Which do most people want?

Dynamic, for anything promotional, anything printed in quantity, and anything worth reporting on. Static for a Wi-Fi password or a phone number.

Try it with one code

The free plan has no expiry and asks for no card, and the analytics behind it are the same ones a paying customer gets.

Free forever for one person. No card, and 10,000 scans a month included.