OTK OneTabKit
▦

QR Code Generator

Turn a link, message, or contact detail into a downloadable QR code.

Content

Preview

Why a QR code still scans when part of it is damaged or covered

QR codes are built with deliberate redundancy called error correction, which is why a coffee stain, a scratch, or a logo placed in the middle of one often doesn't stop it from scanning. The QR standard defines four error-correction levels, from roughly 7% tolerance at the lowest up to about 30% at the highest; this generator uses the "M" (medium) level, which can lose around 15% of the code's modules — the small black-and-white squares — and still be read correctly. That's also part of why QR codes look denser and more complex than the amount of text they encode would seem to need: a meaningful portion of every code is redundancy data, not the message itself.

Why more data makes a visibly bigger, denser code

A QR code's grid size (its "version," in the spec's terminology) scales with how much text is encoded — a short URL fits in a small, sparse grid, while a long message, a full vCard contact card, or Wi-Fi credentials pushes the encoder to a larger grid with more modules to fit everything plus its error-correction data. That's why keeping the encoded text as short as possible — a shortened URL rather than a long one, for instance — produces a visually simpler code that's easier to scan reliably from a distance or at a small printed size.

Frequently Asked Questions

Any text — URLs, plain messages, contact details, Wi-Fi credentials, and more. The scanning device just reads whatever text is encoded.

No — the QR code itself never expires. If it encodes a URL, it'll only stop working if that URL itself goes offline.

For print, use the largest size available and scale up if needed — QR codes are simple enough that they stay scannable even when enlarged significantly.