How It Ticks

Digital · Exhibit 4

QR code generator

Type a link, and the code below is ready to download.

PNG for your phone, a message, Word or Canva. SVG for a print shop: it is a drawing, so it stays sharp at any size.

The code is made in your browser, and what you type is not sent anywhere. Your link goes straight into the black and white squares, with no short link of this site in between, so nothing here can switch it off: the code works for as long as the page it points to is online. Before you print, scan it with another phone. It should open your own address, not a short link like qr.xx/abc.

Do QR codes expire?

A plain QR code doesn’t. The link is written into the pattern itself, so the code keeps working as long as the page behind it exists. The ones that stop are “dynamic” codes from generator services: they hold a short link to the service, which then forwards the phone to your page. The site qr-code-generator.com, one of the big services, wrote on its blog in February 2026 that with most providers these links “pause” when you stop paying, and that codes made during a free trial “deactivate automatically when the trial period finishes.”

The codes on this page are the plain kind, which some services call static.

Two of the big services answer the question for their own codes. Bitly says that as of June 2025 its codes “don’t expire on their own” and stop working only if you delete them or turn them off; paid plans can add an end date. Canva’s help center says its static codes can’t be edited because the link is “fixed for good”, while an expiry date on its dynamic codes is something a Business, Enterprise or Nonprofit account sets on purpose. After that date the code sends people to Canva’s error page, or to an address the owner chose.

Can I make a QR code without signing up?

Yes. There are no accounts on this site at all, and no email field. Type, pick a level, download, as many times as you like. You can use the codes anywhere, for free: DENSO WAVE, the company that invented the QR code, says no license or application is needed to use one.

Can anyone track who scans it?

Not through this page. A phone that scans the code goes straight to the address inside it, without stopping here. The website at that address sees the visit the way it sees any other visit. If you want to count scans, add a tag to your own link, such as ?utm_source=poster, or &utm_source=poster if the link already has a question mark, and look for it in your site’s statistics.

The app that reads the code is a separate matter: some scanner apps keep a history or check links on their own servers. Counting scans is exactly what dynamic codes are for, too: the stop at the service’s short link is where they get counted, and it’s also the reason they can expire.

Which error correction level should I choose?

Every QR code carries spare data that lets a scanner repair damage. Level L can repair about 7% of the code’s data, M 15%, Q 25% and H 30%, according to DENSO WAVE. That’s counted in 8-bit chunks of data, not in area: the three big corner squares aren’t covered at all, and a smudge that clips a chunk spoils the whole chunk, so even at level H a code can’t lose 30% of its picture. More spare data also makes the code denser.

M is a good default for a screen or a clean print. DENSO WAVE suggests Q or H where the code gets dirty, like a label in a factory, and L for clean conditions with a lot of data. To feel the difference, cover a code with your finger and switch levels: how much of a QR code you can cover.

This page doesn’t add logos. Download the SVG at level H, put your logo over the middle in any editor, keep it small, and scan the result before you print: the logo uses up part of that 30%, leaving less for scratches.

Can I make a QR code for my Wi-Fi?

Yes, on its own page: the Wi-Fi QR code generator writes the network name and password into the line phones read, escapes the awkward characters for you, and warns you about the few that older Android phones misread.

How much can one QR code hold?

A link of a few hundred characters fits easily. The largest QR code, version 40, is 177 squares on a side. At level L it holds 2,953 bytes; at M, the default here, 2,331; at H, 1,273. Codes made only of digits can pack up to 7,089 of them, but this generator stores everything as bytes, so here a digit costs a byte like any letter.

Text is stored as UTF-8, as most generators do: a plain English letter takes one byte, most accented letters two, Chinese or Japanese characters three, and an emoji four or more. The line under the preview counts the bytes in your text.

How big should I print it?

Bigger than you’d think, and always with the white border. DENSO WAVE’s own sizing example takes a 400 dpi printer with 4 dots per square, and a 29 by 29 code comes out about 7.4 mm across, plus 1 mm of border on each side. That’s a worked example for print shops, not the smallest possible size and not the size a phone can read from across a room. There is no official rule for distance, so print a test copy and scan it from where people will actually stand.

How do I know it works?

I wrote the encoder this page uses, and I checked it against code I didn’t write. Two independent decoders, jsQR and ZXing, each read 8,000 random codes made with it, 2,000 texts at each of the four levels, in Latin, Cyrillic, Japanese and emoji, at every size from 21 to 177 squares, and the downloaded SVG and PNG files too. The patterns also match Nayuki’s qrcodegen library bit for bit when both store text as bytes.

You can test the privacy part yourself: load this page, turn off Wi-Fi and mobile data, and keep making codes. Everything still works, because nothing here needs the internet once the page is open.

To check a printed copy without trusting a scanner app, take a photo of it and open the photo in the QR code checker. It shows the address the code holds, and it doesn’t send the photo anywhere either.

QR Code is a registered trademark of DENSO WAVE INCORPORATED.

Sources