What goes into a QR code
A QR code is a two-dimensional barcode that encodes data as a pattern of black and white squares. A phone camera reads the pattern and decodes the data — which can be a URL, plain text, an email address, a phone number, a WiFi network password, a GPS coordinate, or a contact card in vCard format.
Not all QR codes are equal. A QR code linking to a short URL holds much less data than one encoding a full paragraph of text. The more data you pack in, the denser the pattern becomes and the harder it is to scan reliably, especially at small print sizes. As a rule: keep URLs short, use a redirect service if the URL is long, and test the code at the actual size you plan to print before committing to a print run.
QR code types and when to use each
Choosing the right type for your use case makes the QR code more useful and the data more readable.
- URL - The most common type. Links to any webpage. Use a URL shortener if the full URL is very long to keep the QR pattern simple. Works on all devices with a camera.
- WiFi network - Encodes an SSID, password, and encryption type. Anyone who scans it connects automatically without typing the password. Ideal for guest networks, cafes, offices, and events. Use WiFi QR Generator for this type.
- Plain text - For messages, codes, or reference information that you want someone to read on their phone. No app or internet connection required to decode.
- Email / phone - Opens the phone's email or dialer pre-filled with the address or number. Useful on business cards and signage.
- vCard contact - Encodes a full contact record — name, phone, email, company, website. Scanning it offers to save the contact directly. Use vCard QR Generator.
Size, resolution, and print quality
QR codes need to be large enough for camera sensors to reliably detect all the squares. As a minimum: 2.5 × 2.5 cm for scanning at arm's length. For signage or posters viewed from 1–2 metres away, scale up to 10–15 cm. For billboards, scale further.
When generating for print, use the SVG download option rather than PNG. SVG is vector-based and stays sharp at any size. If you need a PNG, generate it at the largest resolution available and scale down in your design tool — never scale a small PNG up or the edges blur and the code may not scan.
The error correction level also matters. Higher error correction (Q or H level) makes the code readable even if up to 30% of it is damaged or obscured — useful if you want to overlay a logo in the centre of the QR code. Lower levels (L or M) produce denser, more compact codes that are easier to scan when the full code is visible and undamaged.
Adding a logo to a QR code
Many brands place a logo in the centre of a QR code. This works because QR codes have built-in error correction — the code is redundant enough that a covered area can still be decoded. The logo should not cover more than 25–30% of the code area.
To add a logo: generate the QR code at high resolution, then overlay your logo PNG in the centre using an image editor. Keep the logo centred and symmetrical. After placing the logo, test the code with multiple scanning apps to confirm it still reads reliably before printing.
Dynamic vs static QR codes
Static QR codes encode the destination directly. The URL or data is baked into the pattern and cannot be changed after printing. If you want to update the destination — for example, change the page a menu QR code links to — you need to reprint.
Dynamic QR codes encode a short redirect URL that you control through a third-party service. The physical QR code stays the same, but you can change where the redirect points. Dynamic codes also provide scan tracking. ToolAtom generates static QR codes, which are the right choice for most permanent use cases: business cards, product packaging, books, and personal use. For campaigns or menus that need updating, a service like QR Tiger or Bitly QR provides dynamic codes.