QR Code Generator
Create a QR code from a URL or text with colors, square/dots/rounded styles, error correction L–H, a center logo, and PNG or SVG download.
Your inputs and files stay in your browser
Enter text or URL to encode...
Colors
Options
Logo (optional)
Drop logo here or click to select
Add a logo to the center of your QR code. Use high error correction (Q or H) for best results.
With a logo, use error correction H and test the code with several phone camera apps before you print or share it.
On this page
Create a QR code for a link, text or Wi-Fi string, choose colors, style, error correction and size, add a logo and download PNG or SVG. The code is generated in your browser.
Detailed Functionality
Content is encoded as UTF-8 bytes, so any script and emoji work. Error correction L, M, Q and H can recover about 7, 15, 25 and 30% damage; higher levels make the code denser. Capacity is up to 2953 bytes at L and 1273 bytes at H — longer content shows an error instead of a broken code.
The PNG is exactly 256, 512, 1024 or 2048 px with a quiet zone of at least four modules. Styles Square, Dots and Rounded change the data modules, while the three finder squares always stay square, so every style remains readable. A logo (PNG, JPEG or WebP) is placed in the center on a background pad; its size grows with the error correction level (up to 30% of the code width at H) — use Q or H with a logo and test the code with real phones; no logo size is guaranteed to scan. SVG is offered for the square style without a logo.
Colors are set with the picker or as a hex value (#RRGGBB); an invalid value is flagged, and the contrast between the two colors is shown with a warning when it is low or inverted. Generation runs with Rust/WebAssembly in the browser, and the preview updates automatically as you type or change an option.
Practical Examples
Website link: https://example.com with level M and 512 × 512 gives qrcode.png of exactly 512×512 px; QR Code Scanner reads it back with an Open Link button.
Wi-Fi access: WIFI:T:WPA;S:MyNet;P:secret123;; encodes network credentials that phone cameras offer to join.
Branded code: Branded code with a round logo, level H, the Rounded style and 1024 × 1024 still decodes to the original text.
Too much data: 3000 characters exceed the maximum capacity and the tool shows an error instead of a code.
How to Use This Tool
Enter content
Type a URL or text in Content.
Choose the look
Set QR Code Color and Background Color, then pick a Style, Error Correction Level and Image Size.
Add a logo (optional)
Drop a PNG, JPEG or WebP image under Logo (optional) and switch to Q or H.
Check and download
The preview updates as you type. When it is current, download PNG or, for the square style without a logo, SVG.
Tips and Best Practices
- Keep strong contrast: dark modules on a light background scan most reliably; inverted colors are not supported by some scanners.
- Shorter content gives a less dense code that is easier to scan from a distance — use a short URL when possible.
- With a logo use level H and test the code with a phone before printing.
- For print, take SVG (square style without a logo) or a 2048 px PNG.
- Leave the white border around the code: scanners need the quiet zone.