QRExpiryCheck

Free static QR code

Replace a dead QR code

Type the page the code should open and the width of the old printed code. You get a static code (the address is inside the pattern, so no QR service can switch it off), a PNG, and the size of the sticker that covers the old code.

Check the old code on the QR checker first from a photo, and this step also keeps the new modules at least as large as the old ones.

The address and sizes stay in this browser. The code is made on your device.

Type the address the new code should open.

How it works

A static code holds the address itself. A dynamic code holds a short link on a QR vendor's domain and the vendor forwards each scan, which is why it can be switched off. The replacement here is always static and is made on your device.

Sizes: a code of version v has 21 + 4 x (v - 1) modules per side (version 1 = 21, version 40 = 177). The old code's module = its measured width / its modules, when the checker decoded its version. The new code keeps the old width, or grows until its modules are as large as the old ones, because a longer address needs more modules. A reader needs a white border of 4 modules on every side. The sticker is the larger of the old width plus your margin on each side (3 mm or 0.125 in if you leave it empty, our starting value) and the new code plus its border, rounded up to a whole millimetre.

Covering: print the new code at the size shown on sticker paper, or on plain paper and glue it, cut the square and press it over the old code so that no part of the old pattern shows around it. Scan it with two different phones before you cover every menu, card or sign.

Sources

  • Modules per version: DENSO WAVE, QRcode.com "Information capacity and versions of QR Code": "Version 1 (21 × 21 modules)", "Each higher version number comprises 4 additional modules per side", "Version 40 (177 × 177 modules)" — https://www.qrcode.com/en/about/version.html, read on 2026-09-30
  • Quiet zone: DENSO WAVE, QRcode.com "Minimizing the QR Code": "QR Code requires a four-module wide margin at all sides of a symbol." — https://www.qrcode.com/en/howto/code.html, read on 2026-09-30
  • Paper sizes (Pro sheets): W3C CSS Paged Media Module Level 3 (Working Draft 14 September 2023), page-size keywords: A4 "210 mm wide and 297 mm high", letter "8.5 inches wide and 11 inches high" — https://www.w3.org/TR/css-page-3/, read on 2026-09-30

Frequently asked questions

How do I fix an expired QR code?
If the code went through a QR vendor, you can reactivate it in the vendor's account (usually by paying for a plan) or replace it. To replace it, find the page it used to open, make a static code to that page here and cover the old code with it.
Can I make a QR code that never expires?
Yes: a static code. It holds the address itself, so it keeps working for as long as that page exists and the print is readable. The trade-off: to change the destination you need a new code, or a redirect on your own domain (Pro gives you the rule).
What size should the replacement QR code be?
At least as wide as the old one, and wider if the new address needs more modules, so each module stays as large as before. Measure the old code's black square edge to edge and the tool works out the code and sticker size.
Will a sticker over the old QR code work?
Yes, if it hides the old pattern completely and leaves a white border around the new one. A phone reads the code it sees; a strip of the old pattern peeking out can confuse it, which is why the sticker is larger than the old code.
Is the QR code generator here free with no expiration?
Yes. The code and PNG are free and made in your browser; there is no account and nothing to renew because nothing sits between the code and your page.

Guides