JournalSeptember 6, 20265 min read

The "free" QR code that stops working after two weeks

Many generators put a link to their own server in the code, not yours; after the trial, the code on the menu or poster stops working. How to spot such a code and how to make one that stays yours.

A restaurant prints its menu with a QR code. It works for two weeks, then customers scan and land on a page telling them "this QR code has expired". The menus are printed, the code is on every table, and the only fix on offer is a monthly subscription.

It is not a fault. It is the business model.

What is actually in the code

A QR code is nothing more than text written as little squares. When you scan it, the phone reads the text and, if it is a link, opens it. That is all.

A generator can put two different things in the code:

  1. Your link, directly. The code leads to my-restaurant.com/menu and will lead there for as long as the page exists.
  2. A short link to the generator's server, which then forwards you to your link. The code leads to something like qr-xyz.com/a1b2c3, and their server decides where you end up.

The second is called a "dynamic code" and is sold as an advantage: you can change the destination after printing and see how many scans you had. Both are true. The price is that the code depends on their server and on your payment, and every scan passes through them.

How to recognise a dynamic code

Scan the code with your phone, but do not open the link. Look at the address shown. If it is your address, the code is yours. If it is a domain you do not know, followed by a few letters and digits, the code goes through someone else.

When a dynamic code makes sense

There are real cases: a campaign whose destination changes weekly, or a large print run where the link is not settled yet. Then you pay for flexibility, knowingly, at a provider you chose.

For a menu, a business card, a poster with the guesthouse Wi-Fi or a sign-up form, it makes no sense. The link does not change, and you can have statistics another way.

How to make a code that stays yours

We built a QR code generator that puts in the code exactly what you type: a link, a text, a Wi-Fi network or a contact. It is generated in your browser, you download it as PNG or SVG and use it for as long as you like. It goes through no server, never expires, counts no scans.

Two things to remember when you print it:

  • SVG for the print shop, PNG for screens. The SVG scales to any size without losing sharpness.
  • Strong contrast between code and background. A grey code on a beige background looks elegant and does not scan.

If you still want statistics

Put a link to your own site in the code, with campaign parameters: my-restaurant.com/menu?utm_source=qr&utm_medium=menu. The scans show up in your own analytics, the code stays yours, and nobody can switch your menu off.