All tools

QR Code Generator

Generate a QR code from any text or URL; download as PNG or SVG with custom colours and error correction.

  • qr
  • qrcode
  • barcode
  • url
  • sharing
  • mobile
  • scanner

About QR Code Generator

A QR code is a 2D barcode that stores a short string — most commonly a URL, but also email addresses, phone numbers, Wi-Fi credentials, or arbitrary text. The pattern of black and white squares encodes the data with built-in error correction, so the code still scans correctly even when partially obscured, dirty, or printed at low resolution. The format was invented by Denso Wave in 1994 and became ubiquitous in the 2010s once every smartphone camera could decode them automatically.

This generator turns whatever you type into a scannable QR code in real time. Adjust the size and error-correction level, pick foreground and background colours (for branded codes), then download the result as PNG or SVG, or copy the SVG markup for inline embedding.

How to use

Type or paste your content into the text field — a URL, an email, plain text, anything. The QR code re-renders on every keystroke. Use the size slider to control the output resolution (the visual size on screen is responsive; the slider controls the PNG export size).

Pick an error-correction level: L (low, ~7% recoverable) keeps the code small; H (high, ~30% recoverable) is more forgiving of damage and is what you want for codes with a logo overlay or codes that will be printed on something prone to scratching. Change the foreground and background colours for branded codes — but keep enough contrast (dark on light) for reliable scanning. Use the buttons to copy the SVG to your clipboard, download SVG, or download PNG.

Frequently asked questions

  • What error correction level should I use?

    For codes shown on a screen or printed on clean paper, L or M is plenty. For codes that will be printed on packaging, posters, t-shirts, or anything that might get partially damaged or obscured, use Q or H. The trade-off: higher error correction means a denser code (more squares for the same data), which can be harder to scan if printed small. H is also what you need if you plan to overlay a logo in the middle of the code — the recoverable area lets the missing data be reconstructed.

  • Can I put any data in a QR code?

    Practically yes, up to ~4,000 characters of text. Common conventions: a bare URL ("https://example.com") opens in the scanner's browser. "mailto:" or "tel:" prefixes trigger the email or dialler apps. Wi-Fi credentials use the format "WIFI:T:WPA;S:NetworkName;P:password;;". vCard payloads add a contact to the address book. Most modern scanners recognise these prefixes and offer the appropriate action.

  • Why does the QR code change shape when I edit the text?

    Because the size of a QR code (its "version", from 1 to 40) depends on how much data you're encoding and what error-correction level you pick. Short URLs fit in a small grid; long URLs or paragraphs of text need a larger version with more squares. The library automatically picks the smallest version that can hold your content at the chosen error-correction level.

  • Can I use coloured QR codes?

    Yes, but with constraints. Scanners look for high contrast between the dark and light modules, so the foreground should be substantially darker than the background. Avoid swapping the convention (light foreground on dark background) — many scanners are tuned for dark-on-light and may refuse to read inverted codes. Stick to dark blue, dark green, or dark red on white for a branded look that still scans reliably.

  • Should I shorten URLs before generating a QR code?

    For long URLs (over ~80 characters), shortening with a service like bit.ly produces a denser QR code that's easier to scan and smaller to print. The trade-off is the URL is opaque (users can't see where it'll send them) and you depend on the shortener staying online. For ordinary URLs under ~80 characters, generating the QR code directly is simpler and survives the shortener disappearing.

More Generators tools