PureDevTools

QR Code Generator

Generate QR codes for URLs, text, WiFi, vCard, email, and more — download as SVG or PNG

All processing happens in your browser. No data is sent to any server.

QR Code Type

Content

Customization

Preview

Version 2 · 25×25 modules

Download & Export

<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 300 300" width="300" height="300">
  <rect width="300" height="300" fill="#ffffff"/>
  <rect x="36.36" y="36.36" width="9.09" height="9.09" fill="#000000"/>
  <rect x="45.45" y="36.36" width="9.09" height="9.09" fill="#000000"/>
  <rect x="54.55" y="36.36" width="9.09" height="9.09" fill="#000000"/>
  <rect x="63.64" y="36.36" width="9.09" height="9.09" fill="#000000"/>
  <rect x="72.73" y="36.36" width="9.09" height="9.09" fill="#000000"/>
  

What Is a QR Code?

A QR code (Quick Response code) is a two-dimensional matrix barcode invented by Denso Wave in 1994. Unlike traditional one-dimensional barcodes that only encode numbers, QR codes can store hundreds of characters of text, URLs, contact information, and structured data. Smartphones with cameras can scan QR codes in milliseconds, making them the fastest way to transfer information between the physical and digital worlds.

QR codes are defined by the ISO/IEC 18004 standard. The black and white square modules are arranged in a specific pattern, with three distinctive “finder” squares in the corners that allow scanners to locate and orient the code regardless of the viewing angle.

How to Create a QR Code

  1. Choose the QR type — URL, plain text, WiFi, vCard, email, phone, or SMS
  2. Enter the content — type your URL, network credentials, contact details, or message
  3. Customize — select foreground/background colors, error correction level, and output size
  4. Download — save as SVG for scalable vector graphics, or PNG for raster image

The QR code updates in real time as you type. All generation happens in your browser using a custom-built Reed-Solomon error correction encoder — no data is sent to any server.

QR Code Types

URL QR Codes

URL QR codes are the most common type. They encode a web address that opens directly in the phone’s browser when scanned. Use them on business cards, printed materials, product packaging, restaurant menus, and event posters to give people instant access to your website.

Best practices:

WiFi QR Codes

WiFi QR codes encode network credentials in the format WIFI:T:<encryption>;S:<SSID>;P:<password>;;. When scanned, iOS 11+ and Android 10+ devices can connect to the network automatically without typing a password. This is perfect for guest networks, public WiFi at cafes or offices, and home network sharing.

Supported encryption types:

vCard Contact QR Codes

vCard QR codes (using the vCard 3.0 format) allow people to save your contact information directly to their address book with a single scan. They support name, phone number, email address, organization, website URL, and mailing address. This is the modern replacement for paper business cards at conferences and networking events.

Email QR Codes

Email QR codes generate a mailto: link that opens the phone’s email app pre-filled with the recipient address, subject line, and body text. Useful for feedback forms, support requests, and event RSVPs.

Phone and SMS QR Codes

Phone QR codes encode a tel: link that opens the dialer app. SMS QR codes use the sms: scheme and can include a pre-written message. Both make it easy for customers to contact you from printed materials without retyping phone numbers.

Error Correction Levels

QR codes include redundant data that allows them to be read even when partially damaged, smudged, or obscured. The Reed-Solomon error correction algorithm can recover data from a damaged portion of the code. There are four levels:

LevelRecovery CapacityUse Case
L (Low)7%Clean, indoor environments; digital displays
M (Medium)15%General purpose; most common choice
Q (Quartile)25%Industrial environments; logos overlaid on QR codes
H (High)30%Outdoor use; harsh environments; maximum durability

Higher error correction creates more data redundancy, resulting in a denser, larger QR code. Level M is recommended for most uses. Use Level H if you plan to overlay a logo on the QR code (the logo obscures part of the pattern, but error correction recovers the data).

SVG vs PNG Download

SVG (Scalable Vector Graphics) is the preferred format for most uses:

PNG is useful when SVG is not supported:

How QR Encoding Works

Each QR code module (square) stores 1 bit of information. The encoding process:

  1. Mode selection — the encoder automatically picks the most efficient mode: Numeric (for digits only), Alphanumeric (for uppercase letters and a limited character set), or Byte (for arbitrary UTF-8 text)
  2. Data encoding — the input is encoded into a bit stream according to the selected mode
  3. Error correction — Reed-Solomon codewords are generated. These are computed using Galois Field GF(256) arithmetic, allowing decoders to reconstruct data from a partially damaged code
  4. Interleaving — data and error correction codewords are interleaved across “blocks” to distribute burst errors
  5. Module placement — codewords are placed into the matrix, avoiding reserved areas (finder patterns, alignment patterns, timing patterns, format information)
  6. Masking — eight mask patterns are evaluated; the pattern with the lowest penalty score is applied to improve scanner readability
  7. Format information — error correction level and mask pattern are encoded into the format information strips

Privacy and Security

This QR code generator runs entirely in your browser. The QR encoding algorithm — including Reed-Solomon error correction and module placement — is implemented from scratch in TypeScript with zero external dependencies. Your URLs, WiFi passwords, contact information, and email addresses are never transmitted to any server.

The generated SVG code is available to copy directly. Since QR codes are images, the data is embedded in the image file itself — there is no server-side redirect or tracking.

Frequently Asked Questions

How large can the QR code content be? QR codes support up to version 40, which can encode up to 2,953 bytes (Byte mode, error correction L) or 7,089 numeric digits. For URLs, this is far more than needed. Very long vCard entries or email bodies may require higher versions and produce larger, denser codes.

Can I add a logo to the center of a QR code? Yes — this works because of error correction. Use Error Correction Level H (30%), which allows up to 30% of the QR code to be obscured. Download the SVG and overlay your logo in a vector editor. Test thoroughly — logo placement can fail if the covered modules are critical.

What QR code version does this tool generate? The encoder automatically selects the minimum version (1–40) that fits your content at the selected error correction level. Smaller content = lower version = simpler, less dense QR code. The current version and module count are displayed in the preview.

Are QR codes permanent? A static QR code encodes the URL directly in the pattern — changing the destination requires generating a new code. For dynamic QR codes (where you can change the destination after printing), use a URL shortener that supports redirects.

Why does my QR code fail to scan? Common causes: too high contrast issue (use pure black on white), printing too small (minimum 2cm × 2cm for most scanners), low error correction on a damaged or dirty code, or incorrect format for the data type (e.g., missing https:// prefix).

Related Tools