Utility

QR Code Generator

Generate QR codes for URLs, text, Wi-Fi and contact details. Adjustable error correction and size, produced entirely in your browser.

Last reviewed by the Radiatus Cloud team

Need this done properly for your business?

Radiatus delivers secure cloud, DevOps & compliance engineering.

Book a free consult

Error correction is the setting that matters

QR codes use Reed-Solomon error correction at four levels: L recovers about 7 percent of the data, M about 15, Q about 25 and H about 30. Higher correction means more redundancy, which means a denser code for the same content. Level M is the sensible default for a screen or a clean print. Use Q or H only when the code will be printed small, on a curved or textured surface, or where a logo will be placed over the centre, since that logo is damage as far as the decoder is concerned.

Size and quiet zone

The specification requires a quiet zone of four modules of blank space on every side. Codes that fail to scan often fail because a designer cropped that margin or placed the code against a busy background. As a rule of thumb the code should be at least a tenth of the scanning distance across: a poster read from two metres needs roughly a 20 centimetre code.

Shorter data scans faster

Every additional character raises the version number and packs more modules into the same physical area, making each module smaller and harder for a camera to resolve. A short URL scans reliably at a size where a long one with tracking parameters will not. If you need campaign tracking, use a redirect service rather than appending a long query string.

Static versus dynamic

A QR code encodes fixed data. Once printed, the destination cannot be changed. If the URL might ever move, encode a URL you control that redirects, so you can repoint it later. This also gives you scan analytics. The trade is that the redirect must keep working indefinitely, which is a real commitment: a dead redirector silently breaks every code you ever printed.

Contrast and inversion

Dark modules on a light background is what decoders expect. Inverted codes work in some readers and fail in others, and low-contrast colour pairs fail widely. Keep a strong luminance difference and test with more than one phone before printing at scale.

Generated locally

Encoding happens in your browser, so Wi-Fi passwords and contact details you encode are never transmitted.

Related tools

  • User Agent Parser — Parse a User-Agent string into browser, engine, operating system and device. Explains why UA strings are unreliable and what to use instead.
  • Credit Card Validator — Validate a card number with the Luhn algorithm and identify the issuing network from its prefix. Runs locally, nothing is transmitted.
  • Text Case Converter — Convert text between camelCase, PascalCase, snake_case, kebab-case, CONSTANT_CASE, Title Case and sentence case. Runs entirely in your browser.
  • Word & Character Counter — Count words, characters with and without spaces, sentences and paragraphs, with estimated reading time. Runs entirely in your browser.

Frequently Asked Questions

Which error correction level should I choose?

M for most purposes. Use Q or H when printing small, on curved or textured surfaces, or when placing a logo over the centre, since the logo counts as damage. Higher levels make the code denser for the same content.

Why will my QR code not scan?

Most often a missing quiet zone, the four-module blank margin required on all sides, or the code being too small for the scanning distance. Low contrast and inverted colours are the next most common causes.

How big should a QR code be?

Roughly one tenth of the intended scanning distance. A poster read from two metres needs about a 20 centimetre code. Shorter encoded data allows a smaller code, because fewer modules means each one is larger.

Can I change where a printed QR code points?

Not directly; the data is fixed at generation. Encode a URL you control that redirects, so the destination can be repointed later. Be aware you must keep that redirect alive indefinitely or every printed code breaks.

Is my data sent to a server?

No. Encoding runs entirely in your browser, which matters when generating codes containing Wi-Fi passwords or personal contact details.

Privacy & Security

Generated using public API (visual only).

Data: None
Client-side-Side
Active
v1.0

About This Tool

This tool runs entirely in your browser. No data is sent to any server, ensuring complete privacy. Simply use the interface above to get started — no registration or login required.

Disclaimer: This tool is provided "as is" without warranty of any kind. Results are for educational and utility purposes.