rdyrct
← All articles

QR Codes Don't Expire, Your Links Do: What Business Owners Must Fix

No. A QR code’s black-and-white pattern does not contain an expiration date, and it cannot age or time out on its own. If a code stops working, the cause is almost always the destination it points to, the vendor hosting that redirect, or physical damage to the printed square, not the code itself. That distinction changes how you should build, print, and manage QR codes for anything meant to last.


TL;DR:

  • Most QR code failures are caused by dead links, domain lapses, vendor issues, or physical print damage, rather than the QR pattern itself.
  • Static QR codes store fixed data and are reliable for long-term use, while dynamic codes rely on active vendor accounts and redirect domains.
  • Monitoring link status, controlling your domain, and choosing appropriate print materials significantly reduce risks of QR code failure over time.
  • Using a branded domain and setting up server-side redirects ensure that URLs remain functional, even if website structures change.
  • The concern that QR codes expire is misleading; the real risk lies in the destination infrastructure’s longevity, not the QR code pattern.

Table of Contents

Key takeaways before you print another QR code

The short version: static codes are permanent patterns, dynamic codes are more like a lease you have to keep paying rent on. Most “expired” codes are actually dead links wearing a QR costume.

  • A static QR code embeds the final destination directly. It works for as long as that destination exists.
  • A dynamic QR code embeds a short redirect URL. It works for as long as the vendor and your account stay active.
  • Most failures trace back to a dead link, not the pattern going bad.
  • Point printed codes at a domain you own, monitor them periodically, and choose print materials that match how long the campaign needs to survive.
  • If you’re using a third-party vendor, know their billing terms, scan limits, and account recovery process before you print thousands of flyers.

How QR codes actually store data

A QR code is a grid that encodes text, nothing more exotic than that. The QR code specification, ISO/IEC 18004, defines how that grid is structured and read, and it includes no field for an expiration date or timestamp. Once a code is generated, the pattern is fixed. There’s no clock inside it, no countdown, no built-in kill switch.

What varies is what that text actually contains. A static code stores the final data outright: a URL, a vCard, a Wi-Fi password string. Scan it in 2030 and it still decodes to the exact same text it did the day you printed it. A dynamic code stores a short redirect URL instead, one that points to a vendor’s server, which then forwards the scanner to whatever destination you’ve configured. That extra hop is what makes dynamic codes editable, and it’s also the entire reason they can appear to “expire.”

You can check which type you’re dealing with in a few seconds. Scan the code with your phone’s camera or a scanner app that previews the decoded link before opening it. If you see a long, direct URL with your own domain or specific content, it’s static. If you see a short, unfamiliar domain, that’s a redirect, and the code’s future depends on whoever runs it.

Why a QR code might suddenly stop working

When someone says a QR code “expired,” they usually mean one of five very different problems. Diagnosing which one you’ve got takes less than five minutes if you know where to look.

  1. The destination is dead. Pages get deleted, moved, or restructured, and the server starts returning a 404 or 410 status. You can check HTTP status codes directly in a browser’s developer tools or a status-checking site.
  2. The domain lapsed. If nobody renewed a domain registration or DNS records broke, every link on that domain fails at once, including ones on printed materials from years ago.
  3. The vendor pulled the plug. Free trials end, invoices go unpaid, accounts get deleted, or a provider pauses redirects after a scan-volume cap is hit. To a scanner, this looks identical to a dead link, but the fix lives in a dashboard, not a codebase.
  4. The print itself failed. Fading ink, low contrast, a shrunk quiet zone, or a code printed on a reflective or curved surface can all make a perfectly valid pattern unreadable to a camera.
  5. The link was designed to expire. One-time payment links, event check-in tokens, and security codes are built with backend expiration on purpose. That’s a deliberate design choice at the destination, not the QR pattern breaking down.

Working through these takes a fixed sequence: scan and preview the decoded URL without opening it, check the HTTP status of the destination, log into the provider’s dashboard if it’s a short domain, and inspect the physical print quality if the code won’t scan at all. Most of the time, the real culprit is a dead link on the other end, not the square of black-and-white pixels a customer is squinting at.

How to make sure your QR codes keep working for years

Start with the right tool for the job. If the information will never change, a coupon code, a fixed address, a Wi-Fi password, use a static code. If you’ll need to swap destinations, run A/B tests, or track scans over time, use a dynamic code, but treat that choice as an ongoing responsibility rather than a one-time setup.

A few technical habits prevent most of the failure modes above:

  • Route dynamic codes through a domain you control instead of a vendor’s generic short domain, so you can migrate providers later without reprinting anything.
  • Set up server-side 301 redirects whenever you restructure a website, so old links forward automatically instead of dying.
  • Keep vendor billing current and note renewal dates somewhere visible, not buried in an inbox.
  • Export your link mappings periodically so you have a backup if an account ever gets locked or deleted.
  • Turn on alerts for paused redirects or unusual scan spikes if your provider offers them.

Print materials matter more than most people expect. A plain inkjet sticker left outdoors won’t survive the way UV-coated vinyl or laser-etched metal will, so match the material to how long the code needs to live, not just to what looked good in the design mock-up. For anything on a storefront window, a vehicle, or outdoor signage, factor weather exposure into that decision from day one, and check print quality against a standard like ISO/IEC 15415 before a large print run goes out.

Monitoring closes the loop. Set up automated link checks on anything printed at scale, and do a manual test scan every few months on physical installations like plaques or signage.

Pro Tip: For any permanent installation, print a short human-readable fallback URL underneath the code itself. If the QR pattern gets damaged or a phone camera struggles with it, people can still type the link manually.

The Rdyrct approach to dynamic QR codes that don’t quietly die

Most “expired” dynamic codes trace back to the same handful of gaps: no custom domain, no billing alerts, no backup of the link mapping, no visibility into scan activity. Rdyrct’s dynamic QR codes are built around closing those gaps rather than papering over them.

Every code runs through a custom domain you configure, so the redirect lives under your brand instead of an anonymous short-link domain you don’t control. Analytics track country, referrer, and device without ever storing IP addresses, which matters for anyone who needs scan data without the compliance headaches of invasive tracking. Link health monitoring and live click feeds mean you see a dead destination the day it happens, not three months into a print run.

For readers setting this up: point your custom domain at Rdyrct first, test the link and check its clicks before you print anything, and export your link mappings on a regular schedule regardless of which tier you’re on. If you expect high scan volumes across a large campaign or need longer analytics retention, a paid tier is worth the cost. If you’re running a handful of codes for a small business, the free forever plan covers the basics without asking you to hand over more data than the job requires.

Want to try it? Make a QR code with your logo and colors in the free QR code generator. It needs no account and adds no watermark.

Where to check the technical details yourself

Three references back up nearly everything above:

  • ISO/IEC 18004, the actual QR code symbology specification
  • MDN’s HTTP status code reference, for diagnosing dead or moved pages
  • Investopedia’s overview of QR code technology, for how static and dynamic designs differ in practice

What actually matters here, and what gets overblown

The question “do QR codes expire” gets asked constantly, but it’s aimed at the wrong layer of the system. The pattern itself is inert. What businesses should actually be asking is whether their destination infrastructure will survive as long as their printed materials do, and most advice on this topic skips right past that.

Conventional guidance treats QR codes like a design decision: pick a generator, download the PNG, print it, done. That’s backwards. A QR code on a storefront window or a product package is a promise that something will still work in three years, and keeping that promise depends on domain renewals, vendor solvency, and print material choices, none of which show up in the code itself.

If you’re a business owner, prioritize ownership over convenience. A dynamic code through a provider you control, on a domain you own, with monitoring turned on, beats a free static code every time you need to edit a destination later. But if the information truly never changes, don’t overengineer it. Static is simpler, cheaper, and has nothing to break.

The gap between what QR codes promise and what most people set up is entirely fixable. It just requires treating the destination as seriously as the design.

— Andrea

Printed QR codes fail for operational reasons: a lapsed domain, an unpaid vendor invoice, a redirect nobody’s watching. Rdyrct is built to remove those failure points rather than add another layer of dependency. You get branded short links and dynamic QR codes on a custom domain you control, privacy-friendly analytics that never store IP addresses, and live link health monitoring that flags a broken destination before your customers find it for you.

That combination matters most for marketers and small business owners who need scan data without the compliance risk of invasive tracking, and who’d rather catch a dead redirect in a dashboard than hear about it from a confused customer. The free forever plan covers a handful of codes with no time limit attached. If your campaign needs higher scan volumes, longer analytics history, or multiple team members managing links, the paid tiers unlock that without changing how the redirects work underneath. Set up a custom domain redirect on Rdyrct now, and the QR codes you print this month will still resolve correctly next year.