📱 QR Code Generator

Enter content to generate a QR Code — text, URL, phone, email, Wi-Fi, and more

📐 Size
🎨 Color Settings
🔲 Style Settings
🖼️ Logo Settings

Supported formats: JPG, PNG, GIF, WebP
File size limit: 2MB

📱 Generated QR Code

 A Barcode Built for Car Parts

The QR ("Quick Response") code was invented in 1994 by Masahiro Hara at Denso Wave, a Toyota-group supplier, to track automotive components faster than 1D barcodes allowed. Two design decisions made it conquer the world: the three square finder patterns in the corners let a scanner locate and orient the code from any angle in milliseconds, and Denso Wave chose not to enforce its patent — making the format free for anyone to generate and read. ISO standardized it (ISO/IEC 18004), and today it moves everything from restaurant menus to payment flows.

Capacity scales with the version (size) of the code: Version 1 is 21×21 modules holding ~25 alphanumeric characters, while Version 40 is 177×177 modules holding over 4,000. This generator picks the smallest version that fits your content — which is why short URLs produce visibly coarser, easier-to-scan codes than long ones.

 Error Correction: Your Damage Budget

Every QR code embeds Reed–Solomon error correction — the same math that lets scratched CDs play. You choose how much of the code can be destroyed while still scanning:

LevelRecoverable damageWhen to use
L (Low)~7%On-screen display, clean environments, short content
M (Medium)~15%General purpose — the usual default
Q (Quartile)~25%Print that may get dirty or scuffed
H (High)~30%Logo embedding, outdoor signage, high-wear surfaces

A center logo works by spending that budget: the tool raises the correction level when you embed one, but keep the logo under ~20% of the code's area so real-world dirt, glare, and print defects still have headroom. And preserve the quiet zone — at least four modules of empty margin around the code. Cropping it flush against text or colored blocks is one of the most common reasons a perfectly good code won't scan.

 Static vs. Dynamic QR Codes

This tool produces static codes: your data is encoded directly into the pattern. That means no expiry, no dependency on any service, and complete privacy — but also no scan statistics and no way to change the destination after printing.

Dynamic QR services encode a short redirect URL they control, so you can retarget the destination and count scans — at the cost of a subscription, a dependency (if the service dies, every printed code dies with it), and a tracking hop for every user. You can get the best of both without a service: append UTM parameters to your URL (or use your own domain's redirect), then encode that URL statically here. Analytics happen at the URL layer; the code itself stays yours forever.

 Styling Without Breaking Scannability

  • Contrast is non-negotiable: dark modules on a light background. Most scanners handle inverted (light-on-dark) codes poorly, and low-contrast pastel combinations fail in dim lighting.
  • Rounded and dot styles are safe as long as modules stay visually distinct — scanners threshold the image back to a grid. The three corner finder patterns matter most; keep their shape recognizable.
  • Size for the scanning distance: a rough rule is distance ÷ 10 — a code scanned from 1 m should be at least 10 cm wide. Export SVG for posters so it scales without pixelation.
  • Test before mass printing: one proof print, scanned with both an iPhone and an Android device, catches ink bleed, curvature, and lamination glare before they cost you a print run.

 Quishing: QR Phishing Awareness

Because a QR code is opaque to humans, attackers exploit it — pasting fraudulent stickers over legitimate codes on parking meters and restaurant tables, or emailing QR codes to route victims past URL filters. If you publish codes, make them verifiable: use your own branded domain rather than an anonymous shortener, print the full destination URL next to the code, and periodically check physical placements for sticker-over-sticker tampering. As a scanner: read the address bar before interacting, and treat any scanned page that asks for card numbers or one-time codes as hostile until proven otherwise.

 Frequently Asked Questions

How do Wi-Fi QR codes work?

Pick the Wi-Fi type above and fill in the network name, security type (WPA for virtually all modern networks), and password. The tool builds the standard WIFI:S:…;T:WPA;P:…;; payload and escapes special characters (\ ; , : ") that break hand-written payloads. iOS and Android camera apps prompt to join the network on scan — no typing.

Which download format should I pick?

PNG for general use — web, slides, documents. SVG for anything printed large; it's vector, so it scales infinitely. WebP for size-optimized web embedding, with the caveat that some older software can't open it.

Does anything I enter get uploaded?

No. Encoding and rendering happen entirely in your browser — URLs, phone numbers, and Wi-Fi passwords never leave your device.

Why won't my code scan?

In order of likelihood: it's too small for the scanning distance, the contrast is too low (or inverted), the logo covers more than ~25%, the content is so long the modules became tiny, or the quiet zone got cropped in layout. Shortening the URL and regenerating fixes more scan failures than any other single change.