A regional brewery runs a summer promotion. Beer mats in 120 cafés carry a QR code: "Scan, register and win one of 500 branded glasses." The promotion ends on 31 August, or earlier if all glasses are gone. In October, someone finds a beer mat in a drawer and scans it. What should happen? Most people never decide, so the old form stays online, entries keep arriving and the brewery has to answer angry emails about prizes that no longer exist.
Our article Do QR codes expire? covers codes that stop working by accident. This one covers the opposite: codes you want to stop, on purpose and on time.
Why you would want a code to stop
A printed code outlives the campaign it was made for. Beer mats, flyers and posters stay in circulation for months after the end date. Three problems follow when the destination stays open.
- Expired offers. A visitor who claims a discount that ended in June feels misled, even if the terms say otherwise.
- Limited stock. Once 500 glasses are gone, every new entry is a disappointed customer.
- Old information. Event programmes, job ads and trial offers become wrong the day after they end.
A planned end solves all three. You choose the moment, and you choose what people see after it.
A QR code expiry date: when the date is the rule
Use an expiry date when the end is a moment in the calendar. Typical cases are a promotion valid until 31 December, a ticket page for an event, a seasonal menu, a job advert with a closing date, or a free trial that runs for 30 days.
Two details matter. The first is time zone. Uniqode's help article on time-limited QR codes (checked 21 October 2026) asks you to pick a timezone together with the activation and expiry dates, and that is good practice anywhere. A campaign that ends at midnight in Amsterdam should not end at 22:00 for a customer in Lisbon. The second is a short grace period. If your terms say "until 31 August", let the code run until the morning of 1 September, so late scans on the last evening still work.
Scan or click limits: when the number is the rule
Use a limit when the end depends on quantity. The brewery's 500 glasses are a good example. So are the first 200 downloads of a paid guide, a fixed number of free tasting tickets, or a pilot where you only want a small group to see a page.
Know what a limit counts. It counts opens of the code or link, not unique people. Someone who scans twice uses two. QR Tiger's help article on scan limits (checked 21 October 2026) also notes that "The scan limit is cumulative" and that raising the limit makes the code active again. So set the limit with some margin above the real number of prizes. Then count winners in the registration form, not in the scan counter.
What the scanner should see afterwards
The worst outcome is an error page. It looks broken, and a broken code makes people distrust the next one they see from you. The best outcome is a short page that says what the campaign was, that it has ended, and what comes next: the winners' page, the new offer, or simply your homepage.
There are two ways to get there. The hard stop uses the expiry date or limit on the link or code, and the provider shows its own "expired" message. Check what that message looks like before you print, because not every provider documents it. The soft stop keeps the link active and changes its destination to your own "this campaign has ended" page on the end date. You control every word, and the link can point to the next campaign later.
Many teams combine both. They set the expiry date as a safety net in case someone forgets, and plan the soft stop as the normal route.
Static codes cannot expire
Here is the trap. A static QR code contains the destination address itself. No server sits in between, so nothing can stop the code or count scans. The only way to end it is to take down the page it points to. That produces exactly the error page you wanted to avoid, and if the page lives on your main website, removing it may break other links too.
So an end date belongs on a dynamic code or a short link. With a dynamic QR code, the printed pattern holds a short address on a redirect server, and that server is where the date, the limit and the destination live.
How EUQR handles expiry dates and click limits
In EUQR the expiry date and the limit sit on the short link. The EUQR link shortener lets you set an expiry date, a click limit or a password on any link on qreu.eu, and you can change these at any time. For a printed campaign, create the short link with the rules you need, then make a QR code for that link. The printed code stays the same; the rules stay editable.
That also makes reuse easy. When the brewery runs the promotion again next summer, it changes the destination to the new form, sets a new end date and a new limit, and the beer mats still in circulation work again. No reprint is needed. A readable slug, such as qreu.eu/summer-glasses, helps people trust the link; our guide to branded short links explains how to choose one.
Other providers offer similar controls on the code itself. Scanova's pricing page (checked 21 October 2026) lists scheduling a code to expire or deactivate on its Lite plan and higher. QR Tiger lets paid plans deactivate a code after a number of scans. Uniqode sets activation and expiry dates in a Schedule section.
Do not confuse a planned end with what happens when you stop paying. If you cancel an EUQR plan, your dynamic codes and links show your branded Recovery Page for 90 days and then a generic EUQR page. That protects printed material you did not plan to end. An expiry date is a decision you make for one campaign.
Five decisions before the campaign starts
Settle these before the code goes to print, and write them into the campaign brief so nobody has to guess later. It takes five minutes and prevents most complaints after a campaign.
- The end rule: a date, a number, or both.
- The exact end moment, with time zone and a short grace period.
- The page people see after the end, and who switches the link to it.
- The margin between the limit and the real number of prizes or places.
- What happens next season: reuse the link, or send it to a general page for good.
Put a reminder in the team calendar on the end date. A link that should switch at 09:00 is easy to forget on a busy Monday morning.
A worked example: the brewery's beer mats
Here is how the brewery set it up. One short link per region, so the team could see which cafés drove entries. Each link pointed to the registration form, with an expiry date of 1 September at 09:00 and a click limit of 650, about 30 percent above the 500 prizes. On 25 August the last glass was claimed. The team switched all links to a "thank you, all glasses are gone" page with the winners' list, and left the expiry date as a backstop.
The aggregate counts per link, collected without cookies, showed that two regions produced more than half of all scans. Next summer, those regions get more beer mats. The links will open again with a new form and a new date.
Short links with an expiry date and a click limit are available from Starter at €0.99 per month. See all plans and prices.
Frequently asked questions
Can I set an expiry date on a QR code?
Should I use an expiry date or a scan limit?
What do people see when a QR code has expired?
Does a scan limit count people or scans?
Can I reuse a printed code after it has expired?
Give your next campaign a clean ending
Create a short link with an expiry date or click limit, turn it into a QR code and reuse it next season without reprinting.
Create a QR code