Utility

Free QR Code Generator

Generate free custom QR codes for URLs, WiFi networks, vCards, email, phone, and SMS. Pick colors, choose size, download as PNG or SVG. No signup, no watermark.

Error Correction Level

4 modules

What is a QR Code?

A QR code (Quick Response code) is a two-dimensional barcode that encodes data — such as a URL, contact card, or WiFi credentials — as a pattern of black and white squares. Smartphones can scan QR codes instantly using the built-in camera app, with no extra app required on modern devices.

How to Generate a QR Code (4 Steps)

  1. Choose your input type — select URL, Text, Email, Phone, SMS, WiFi, or vCard from the tabs above.
  2. Enter your content — type the URL, WiFi credentials, or other information you want to encode.
  3. Customise (optional) — adjust colours, error correction level, and margin to match your brand.
  4. Download — click Download PNG for print or digital use, or Download SVG for vector graphics.

QR Code Use Cases

Choosing the Right Error Correction Level

LevelData RecoveryCode DensityBest For
L (Low)~7%SmallestDigital screens, perfect conditions
M (Medium)~15%ModerateGeneral purpose — recommended default
Q (Quartile)~25%LargerPrinted materials, slight wear expected
H (High)~30%LargestLogos overlaid, harsh environments

Tips for High-Quality QR Codes

Frequently Asked Questions

Are these QR codes free to use commercially?

Yes — completely free for personal and commercial use with no attribution required. QR codes themselves are an open standard (ISO/IEC 18004). This tool generates standard QR codes with no watermarks and no licensing restrictions. You can use the generated codes on product packaging, marketing materials, business cards, or any other commercial purpose.

Do QR codes expire?

Static QR codes — like the ones generated here — never expire. The QR code encodes data directly into the pattern, so it works forever as long as the destination (e.g., the URL it points to) remains active. Dynamic QR codes, offered by third-party services, redirect through their servers and can expire if you stop paying — but this tool generates static codes that are permanently yours.

What is the maximum data a QR code can hold?

The maximum capacity depends on the data type and error correction level. At error correction level L (lowest): up to 7,089 numeric characters, 4,296 alphanumeric characters, or 2,953 bytes of binary data. Higher error correction levels (M, Q, H) reduce capacity in exchange for better scan reliability if the code is damaged or partially obscured. For URLs, the practical limit is around 2,000–3,000 characters.

Why is my QR code not scanning?

Common causes: (1) Low contrast — make sure the foreground and background colors have sufficient contrast, ideally dark on light. (2) Too small — QR codes need to be at least 2cm × 2cm when printed. (3) Too much data — long URLs create denser QR codes that are harder to scan; try shortening the URL first. (4) Insufficient quiet zone — ensure there is a white border (quiet zone) of at least 4 modules around the code. (5) Camera focus — test with multiple devices and QR scanner apps.

What's the difference between static and dynamic QR codes?

A static QR code encodes data directly — the destination is permanently baked into the pattern and cannot be changed. A dynamic QR code encodes a short redirect URL, and the actual destination is managed on a server. Dynamic codes allow you to change where the QR points without reprinting, and they support scan analytics. However, dynamic codes require a paid subscription to a QR code service and stop working if you cancel. This tool generates static codes.

Can I track scans of my QR code?

Not with static QR codes generated here — they encode data directly with no tracking. To track scans, use a URL shortener with analytics (like Bitly) as the QR code destination, or use a dynamic QR code service. This approach lets you see scan counts, times, and locations while keeping the QR code itself simple and fast.

More Free Tools

🔗
URL Encoder
Encode or decode URLs and query strings instantly. Supports encodeURIComponent, encodeU…
🔐
Password Generator
Generate a strong, random password instantly — no download, no sign-up. Set length up t…
🎨
Color Picker
Pick any color and instantly get HEX, RGB, HSL, and CMYK values. Generate complementary…
← All tools