QR Code Generator (PNG & SVG)

Create high-resolution, print-ready QR codes as PNG or vector SVG for links, text, Wi-Fi and contact cards.

100% Client-Side • 100% Free

QR Code Generator (PNG & SVG)

Generate high-resolution PNG and SVG QR codes for links, text, Wi-Fi credentials, and contact cards in pure client-side code.

Scan will open this web address in the device's browser.

Customization & Design

Colors & Theme
Error Correction LevelHigher recovery allows the QR code to be scanned even if damaged, dirty, or obstructed.
Resolution & Dimensions512 × 512 px
Quiet Zone (Margin)Blank border space around the QR code required for optical readers.
QR Code Preview
v2-M512px

100% Private & In-Browser: QR codes are created locally in your browser. No data is sent to external servers.

In-Depth Technical Guide•8 min read•2RUN Engineering Team
100% Client-Side • Zero Upload

QR Code Generator: ISO/IEC 18004 Engine, Reed-Solomon Error Correction & Custom Styling

⚡How to Generate Custom QR Codes in Your Browser

1

Select Your Content Type

Choose between URL, Plain Text, Wi-Fi Network, Contact Card (vCard), Email, SMS, or Cryptocurrency address.

2

Enter Your Information

Fill in the required fields (such as website URL, Wi-Fi SSID and password, or vCard contact details). The QR preview updates in real time.

3

Customize Colors, Error Correction & Dimensions

Choose your preferred color palette or custom hex colors, select Error Correction Level (L, M, Q, or H), and set your desired resolution and quiet zone margin.

4

Export High-Resolution Vector or Raster Files

Click 'Download SVG' for infinite-resolution vector print artwork, or 'Download PNG' for digital web marketing and mobile sharing.

Quick Response (QR) codes have revolutionized physical-to-digital interactions across the globe, powering contactless payments, restaurant menus, Wi-Fi onboarding, digital boarding passes, multi-factor authentication (MFA), and interactive marketing campaigns. Standardized under ISO/IEC 18004, a 2D QR code matrix can encode thousands of alphanumeric characters into a compact optical grid readable from any angle by standard smartphone camera sensors.

However, creating robust QR codes for commercial print and digital displays demands rigorous engineering. Generating a code with inadequate Reed-Solomon error correction, illegal mask patterns, or un-scannable color combinations leads to disastrous scanning failures in real-world lighting. Our browser-native QR Code Generator implements a complete ISO/IEC 18004 engine in pure client-side TypeScript. Create customized QR codes for URLs, Wi-Fi networks, vCards, SMS, emails, and crypto wallets with precision error correction levels (L, M, Q, H), customizable quiet-zone margins, custom color palettes, and crisp SVG/PNG export. Executing 100% locally in your browser, your private credentials and sensitive contact details never touch an external cloud server.

Read the full technical guide

The ISO/IEC 18004 Matrix Architecture: Grid Anatomy & Functional Patterns

Unlike linear 1D barcodes that encode data across a single horizontal axis, a QR code is a two-dimensional matrix symbol consisting of square modules arranged in an overall square grid. The specification defines 40 discrete symbol versions, ranging from Version 1 ($21 \times 21$ modules) up to Version 40 ($177 \times 177$ modules). Each successive version adds 4 modules per side: $\text{Dimension} = 21 + 4 \times (V - 1)$.

Every compliant QR code contains standardized functional patterns that must never be obscured: • Finder Patterns: The three prominent concentric square targets located at the top-left, top-right, and bottom-left corners. With a module ratio of 1:1:3:1:1, they allow camera software to detect the code's physical location, size, and 360-degree rotational orientation instantly. • Timing Patterns: Alternating dark and light modules running horizontally and vertically between the finder patterns on row 6 and column 6, establishing the coordinate grid system. • Alignment Patterns: Sub-targets placed in regular intervals across larger QR codes (Version 2 and higher) to correct for perspective distortion when scanning curved surfaces (such as beverage cans or wrinkled paper). • Format Information: Redundant bits adjacent to finder patterns encoding the error correction level and mask pattern index, protected by BCH(15,5) error-correcting codes.

Reed-Solomon Error Correction: Mathematical Resilience Against Damage

The defining engineering breakthrough of the QR code is its remarkable resistance to dirt, smudges, tears, and physical occlusion, achieved through Reed-Solomon cyclic polynomial error correction. When data is encoded, the engine calculates Galois Field $GF(2^8)$ error-correction codewords that are interleaved throughout the bitstream.

Our generator supports all four ISO-standardized Error Correction Levels (ECL): • Level L (Low): Recovers up to ~7% of corrupted or occluded data codewords. Offers the highest data capacity and smallest physical matrix size; ideal for clean digital displays. • Level M (Medium): Recovers up to ~15% of corrupted data. The industry default, providing an optimal balance between density and reliability for general marketing. • Level Q (Quartile): Recovers up to ~25% of corrupted data. Recommended for high-wear environments, outdoor street posters, and industrial factory floors. • Level H (High): Recovers up to ~30% of corrupted data. Recommended for high-wear environments or outdoor signage, ensuring the code scans reliably even if partially obscured or smudged.

Data Encoding Modes & Efficiency Optimization

To maximize data storage within the smallest possible matrix version, the QR code specification defines four primary data encoding modes: • Numeric Mode: Encodes digits 0–9 by packing triplets of decimal digits into compact 10-bit binary words (max 7,089 characters in Version 40-L). • Alphanumeric Mode: Encodes 45 characters (digits, uppercase letters A–Z, and 9 special punctuation symbols: space, `$`, `%`, `*`, `+`, `-`, `.`, `/`, `:`) by packing pairs of characters into 11-bit words (max 4,296 characters). • Byte Mode: Encodes raw 8-bit binary data (such as UTF-8 text, URLs, and multi-byte unicode characters) with 8 bits per character (max 2,953 bytes). • Kanji Mode: Encodes Shift-JIS double-byte characters into 13-bit words (max 1,817 characters). Our generator automatically analyzes your input text and selects the most compact encoding mode, preventing unnecessary grid complexity and keeping module dots comfortably large for effortless camera scanning.

Data Masking Algorithms: Preventing Scanner De-Synchronization

If a raw QR bitstream contains large clusters of identical dark or light modules (or inadvertently mimics the 1:1:3:1:1 ratio of a finder pattern), optical camera sensors lose tracking synchronization. To prevent this, the ISO specification mandates that the encoded matrix undergo mathematical masking.

The engine evaluates eight standardized mask patterns (Patterns 0 through 7) by applying a bitwise XOR operation against matrix coordinates (e.g. Mask 0: $(x + y) \pmod 2 == 0$; Mask 3: $(x + y) \pmod 3 == 0$). The masked matrices are scored against four penalty rules that penalize long runs of identical modules, $2 \times 2$ blocks, and pseudo-finder sequences. Our engine evaluates all eight masks and automatically deploys the optimal mask with the lowest penalty score.

Custom Aesthetics: Color Palettes, High-Contrast Theming & Quiet Zones

Modern brand marketing demands visually engaging QR codes that match your brand identity while maintaining flawless optical readability. Our tool provides streamlined design customization while safeguarding ISO compliance: • Curated Color Palettes: Select from designer color presets (Midnight Navy, Forest Emerald, Royal Indigo, Deep Crimson) or configure custom hex foreground and background colors, including transparent backgrounds for overlays. • High-Contrast Luminance: Optical camera sensors require strong contrast between dark modules and light backgrounds. Our generator ensures high luminance contrast so your codes scan instantly in dim ambient lighting or bright sunlight. • Quiet Zone Margins: Customize quiet zone margins (0 to 4 modules) to guarantee smartphone camera algorithms isolate the matrix reliably against busy backgrounds.

Supported QR Data Types: Wi-Fi, vCard, URLs & Crypto

Our tool features curated schema generators for the most popular real-world QR use cases: • Wi-Fi Network Access: Formats standard `WIFI:S:MyNetwork;T:WPA;P:Password123;;` strings, allowing guests to join secured Wi-Fi networks by simply pointing their camera at the code. • Digital Contact Cards (vCard 3.0): Formats full `BEGIN:VCARD` records containing names, job titles, phone numbers, email addresses, and website links for seamless mobile address book import. • URLs & Deep Links: Encodes direct web addresses, app store download links, and social profile links. • Cryptocurrency Payments: Formats Bitcoin (`bitcoin:address?amount=...`), Ethereum, and Solana URI schemas for instant digital payments.

100% In-Browser Privacy for Passwords & Personal Contact Data

Generating QR codes for sensitive office Wi-Fi passwords, private executive phone numbers, crypto wallet addresses, or confidential internal portal URLs should never involve sending your plaintext data to remote cloud servers. Traditional 'free online QR generators' routinely log, catalog, and monetize submitted data.

Our QR Code Generator executes 100% locally inside your web browser. Built entirely in client-side TypeScript with zero external server dependencies, all matrix construction, polynomial division, and image rendering take place in device RAM. No data ever leaves your computer, ensuring complete data security and total compliance with GDPR, HIPAA, and corporate security guidelines.

💡Professional Best Practices for Flawless QR Code Deployment

  • •Choose Level M or Q for balanced reliability: Level M (15% recovery) is ideal for standard marketing, while Level Q (25% recovery) guarantees resilience on outdoor printed posters exposed to dirt or physical wear.
  • •Maintain high contrast: Ensure the foreground dots are substantially darker than the background; never invert colors (white dots on a black background) as many legacy scanners fail on inverted codes.
  • •Keep URLs short: Shorter URLs produce simpler, lower-version QR codes with larger dots, which scan much faster from greater distances and under poor lighting.
  • •Leave adequate quiet zones: Maintain at least 4 modules of blank space around the entire perimeter of the QR code to ensure phone cameras can isolate the symbol.
  • •Test on multiple devices: Before printing thousands of brochures or posters, test scan the physical printed code with both iOS (Apple Camera) and Android (Google Lens).
  • •Use vector SVG for large format printing: When printing billboards, trade show banners, or packaging, use SVG to guarantee razor-sharp module edges.
  • •Consider scan distance: As a general rule of thumb, the scanning distance should be roughly 10 times the width of the printed QR code (e.g. a 2cm code scans from ~20cm away).

🛡️Technical Specifications & ISO/IEC 18004 Pipeline

The browser-native QR code generator executes through a complete ISO/IEC 18004 algorithmic pipeline: 1. Mode Selection & Bitstream Assembly: Input data is analyzed and mapped to the optimal encoding mode (Numeric, Alphanumeric, Byte, or Kanji). Mode indicators, character count indicators, and data bits are packed into 8-bit codewords with standard padding bytes (`0xEC` and `0x11`). 2. Reed-Solomon Error Correction Codewords: The data bitstream is partitioned into blocks based on the matrix Version (1 through 40) and Error Correction Level (L, M, Q, H). Generator polynomials in Galois Field $GF(2^8)$ compute the cyclic redundancy error-correction codewords, which are interleaved with data blocks. 3. Matrix Construction & Pattern Placement: An empty matrix of dimensions $21 + 4 \times (V - 1)$ is populated with mandatory functional patterns: 3 Finder Patterns ($7 \times 7$), Timing Patterns, Alignment Patterns (from `ALIGNMENT_PATTERN_LOCATIONS`), and Dark Module at $(8, 4V + 9)$. 4. Optimal Masking Evaluation: The remaining data modules are placed using a zigzag 2-column traversal. All eight ISO mask patterns are applied and evaluated across four penalty functions ($N_1$ adjacent runs, $N_2$ $2 \times 2$ blocks, $N_3$ 1:1:3:1:1 patterns, and $N_4$ dark module balance). The lowest-penalty mask is selected. 5. Vector & Canvas Rendering: The final matrix is converted into an SVG vector document (with crisp crispEdges geometry) or drawn to an OffscreenCanvas for 300 DPI PNG raster export.

Stack: WebAssembly • Multi-threaded Web Workers • HTML5 Canvas API

Privacy: Files never leave your device or touch a cloud buffer; analytics run only with your consent.

Why choose client-side browser tools?

When you compress an image or merge a PDF on 2run tools, the code executes inside your browser tab using WebAssembly and Web Workers. We never stream your bytes to a remote cloud server. Your private financial reports, personal photos, and legal agreements never leave your device.

Total PrivacyIn-Browser
Instant ProcessingFast RAM
Truly UnlimitedZero Limits

Frequently Asked Questions

What is the best error correction level to choose?▾

Level M (15% recovery) is ideal for standard web and marketing print use. Level H (30% recovery) should be selected for outdoor materials exposed to heavy wear, smudges, or tear.

Do these QR codes ever expire?▾

No! Our generator creates static QR codes that encode your text, URL, or credentials directly into the optical matrix. Because there are no intermediate redirect servers, the QR codes will work forever without subscription fees or expirations.

Can I customize the color and size of the QR code?▾

Yes! Our generator allows full color customization with hex color pickers, transparent background support, resolution up to 2048x2048 pixels, and vector SVG export for crisp printing at any scale.

How small can I print a QR code?▾

For standard smartphone scanning, a printed QR code should never be smaller than 2cm x 2cm (0.8 inches x 0.8 inches). If your code contains a large amount of data (higher version matrix with smaller dots), print it larger.

Can I change the destination of my QR code after printing?▾

Static QR codes encode the destination URL permanently into the matrix. If you want the ability to change the link later, encode a short URL that you control (e.g. your own domain redirect link) into the QR code.

Why won't my camera scan a colored QR code?▾

Scanning failures on colored QR codes are almost always caused by poor contrast or color inversion. Ensure the dots are significantly darker than the background (e.g. navy blue dots on a white background). Avoid light yellow or gray dots, and never use white dots on a dark background.

Are my Wi-Fi passwords and personal contacts stored on your server?▾

Never. All QR generation and image rendering take place 100% locally in your web browser. Zero information is transmitted across the internet, guaranteeing absolute privacy.

Sites Loading Under 0.8s
100/100 Lighthouse web engineering
Audit
Dev Arm for Design Agencies
White-label • Bilateral NDA
Partner
Technical SEO by Code
Deep Schema • Zero waste
Scale SEO
Custom Web Apps & SaaS
100% code ownership • Edge scale
Build
Turn Traffic into Sales
+34% sales lift • Fix bottlenecks
Audit