Free Online QR Code Generator with Logo & Gradients
Paste an address, IBAN, phone number or e-mail and the right form opens by itself.
Anyone who photographs this code gets your Wi-Fi password.
What is inside the code
Style presets
Module shape
Code colour
Logo in the centre
Drop an image here or paste it with Ctrl+V
Or pick a symbolPicture in the code
Tinting takes module colours from the picture. The see-through mode splits every module into nine parts and keeps only the centre exact, so the photo shows through and the code still scans.
Frame
Error correction
Scan test
We read the finished image back the same way a reader would.
Smallest readable size
Code details
Print size
Link safety
Check with the camera
PDF for print
3D model
The code becomes a relief you can print or engrave.
Text art
Batch generation
One value per line. The result arrives as a ZIP archive.
Read an existing code
Upload a picture of any QR code. We read it and load the content into the editor so you can redesign it.
My codes
Nothing saved yet. Generated codes land here.
Share the settings
The link carries the design and content, but not uploaded pictures.
Fill in the fields and your QR code appears here
Everything runs in your browser. Nothing is uploaded, the code never expires and nobody tracks its scans.
Most QR code generators hand you an image and wish you luck. This one reads the finished QR code back before you download it — the same way a phone camera would — and tells you plainly whether it scans, how much of the QR code your logo is covering, and how small you can print it before it stops working.
Everything runs in your browser. The text you encode, the logo you upload and the finished QR code image are processed on your own device and never sent to a server. No account, no watermark, no paywall — and the QR code you get never expires.
Every QR code is scan-tested before you download it
Under the preview sits a badge that says either “Verified — the code reads correctly” or that it does not. That is not a guess. After each render the QR code image is passed through a real QR decoder, exactly as a scanning app would, and the decoded text is compared against what you typed. If a design choice breaks the QR code, you find out in the editor instead of after the print run.
The Check tab turns that single verdict into numbers you can act on:
- Smallest readable size — the QR code is progressively shrunk and re-decoded to find the smallest module size, in pixels, that still reads. A code that survives down to 2 px per module has a lot of headroom; one that fails below 6 px is fragile.
- Contrast — the WCAG contrast ratio between your QR code colour and the background, with a warning when a light-on-dark QR code is likely to be refused by readers.
- Covered area — what percentage of the QR code your logo, photo effect or cropping is obscuring, measured against what your error-correction level can actually repair.
- Code details — QR code version, grid size, mask pattern, bytes encoded and how much of the version’s capacity you have used.
Seventeen kinds of QR code, not just links
A QR code can carry far more than a web address, and scanning apps act on each format differently. Pick the type and fill in real fields instead of hand-writing cryptic strings:
- Website QR code — with optional removal of UTM and other tracking parameters, which also shortens the QR code.
- Wi-Fi QR code — network name, security type (WPA/WPA2, WPA3, WEP, open) and password. Guests join without typing anything.
- vCard QR code — name, company, job title, two phone numbers, e-mail, website, full postal address and a note. Phones offer to save the contact.
- E-mail, SMS and phone QR codes — pre-filled subject and body, message text, or a straight tap-to-call number.
- WhatsApp QR code — a wa.me link with your message already written.
- Location QR code — coordinates as
geo:or as a maps link. - Calendar event QR code — title, place, start and end, all-day switch and description, encoded as a proper iCalendar entry.
- SEPA payment QR code — the EPC069-12 standard European banking apps read.
- Czech and Slovak QR payment — SPAYD with IBAN, amount, currency, variable, specific and constant symbols and due date.
- UPI payment QR code (India) and PIX payment QR code (Brazil), the latter with the required EMV checksum.
- Crypto payment QR code — Bitcoin, Ethereum, Litecoin, Dogecoin, Bitcoin Cash or Monero with an amount.
- Social profile QR code — pick the network, type the username, get the finished link.
- Two-factor login QR code — an
otpauth://code for Google Authenticator, Authy, 1Password and the rest. - Plain text QR code — anything else, shown as-is after scanning.
Paste an address, IBAN, phone number or e-mail into the field and the right form opens by itself. A panel labelled “What is inside the code” breaks the finished payload down field by field, so you can see exactly what a scanner will receive.
QR code design that survives the scanner
The editor treats a QR code as a piece of graphic design, with the caveat that every option on offer has passed the scan test:
- 18 module shapes — square, rounded, dots, classy, diamond, star, heart, cross, triangle, hexagon, vertical and horizontal bars, weave, hand-drawn, chamfered, mosaic, and fluid, which merges neighbouring modules into one flowing shape with rounded and hollowed corners.
- 8 corner frames and 4 corner centres — circle, leaf, mirrored leaf, shield, chamfered and more. Shapes that break the 1:1:3:1:1 ratio a scanner uses to find a QR code are deliberately not offered, however pretty they look.
- Gradients — linear with a free angle, radial, conic or a full rainbow, optionally applied to the corner markers too, plus eight ready-made palettes.
- Separate corner colours — frame and centre of the position markers can be coloured independently of the data modules.
- Transparent background — PNG and SVG exports keep the alpha channel, so the QR code sits on any surface.
- Frames with a call to action — box, rounded, pill, speech bubble or a technical-drawing frame, with your own “SCAN ME” text above or below and a caption line under the QR code (handy for printing a Wi-Fi name and password beneath the code).
- Mask pattern and minimum version — eight equivalent ways to lay out the same data, and the option to force a larger grid for a finer pattern. Purely aesthetic, entirely safe.
- 16 one-click style presets — Classic, Minimal, Fluid, Blueprint, Neon, Gold, Sunset, Ocean, Retro, Corporate, Wedding, Nature, Cyber, Candy, Hand drawn and Stripes.
Function patterns — the timing lines and alignment squares a reader uses to lock onto the grid — are always drawn as solid squares no matter which decorative shape you pick. That single rule is what lets stars, hearts and hand-drawn modules scan at all.
Put a photo inside your QR code
Upload any picture and switch the QR code to see-through mode. Each module is split into nine parts; only the centre keeps the exact black-or-white value the decoder needs, while the surrounding eight take their colour from the photo, nudged toward that value. The result is a QR code you can genuinely see a picture through — and the scan test still says verified.
A gentler tint mode simply takes each module’s colour from the matching pixel of the image, turning the QR code into a mosaic of your artwork, with a strength slider and an option to fill the background too.
A QR code logo the scanner can see past
Drop a logo into the middle, or pick one of twelve built-in symbols (Wi-Fi, phone, envelope, chat, cart, pin, calendar, card, user, link, download, star). Then the important part: cut the modules out from under it. Instead of the logo simply covering data, the QR code is drawn with a real hole in it, which readers cope with far better. Size, padding, shape (square, rounded, circle) and a background plate are all adjustable, and the covered-area meter updates live so you can see exactly how much of the error-correction budget the logo is spending.
QR code error correction: the budget every design decision spends
QR codes carry redundant data (Reed–Solomon error correction) so they still scan when partially covered or damaged. You choose how much redundancy to include:
| Level | Recovers up to | When to use |
|---|---|---|
| Low | 7 % | Clean digital use, no logo, maximum data capacity |
| Medium | 15 % | Default for simple printed QR codes |
| Quartile | 25 % | A small logo or decorative module shapes |
| High | 30 % | A larger logo, a photo inside the code, or QR codes printed small |
Think of it as a budget. A centred logo covers modules, a light gradient reduces contrast, small print blurs edges — each spends part of the reserve. A logo at 30 % of the QR code with Low correction usually breaks it; the same logo at High correction on a longer URL scans fine. You no longer have to guess where the line is: the covered-area meter shows what you have spent, and the scan test confirms whether the QR code survived it.
QR code print size you measured, not guessed
Set the width you intend to print and the tool works backwards: how many millimetres one module ends up being, roughly how far away the QR code can be read (about ten times its width), and the recommended minimum size for that amount of data. Drop below 0.4 mm per module and it says so, because that is where printing turns unreliable regardless of how good the design is.
For the print itself, the PDF export renders the QR code losslessly at 600 DPI, keeps transparency through a proper alpha mask, and can lay out a whole sheet of copies — up to 10 columns by 14 rows on A4, A5, A6, Letter or a 50×50 mm label, with adjustable page margin and spacing.
Bulk QR code generation: hundreds of codes in one click
Paste a list — one value per line, or a CSV pasted straight from a spreadsheet with a semicolon, comma or tab separator. Add a template such as https://example.com/?id={{1}} to build full URLs out of bare IDs, choose PNG, SVG or both, and the whole batch of QR codes comes back as a single ZIP archive, each file named after its value. Your current design is applied to every QR code in the batch.
Read an existing QR code and redesign it
Upload a picture of any QR code — a screenshot, a photo of a poster, a competitor’s code — and it is decoded in your browser and loaded straight into the editor, split back into the right fields. From there you can restyle it, fix its colours or simply see what it actually contains before you trust it. There is also a camera check: switch the camera on and scan the printed QR code back with the same device you are designing on.
Export your QR code: PNG, SVG, PDF, WebP, 3D and text art
- PNG at 512, 1024, 2048 or 4096 px, with optional transparent background.
- SVG — a clean vector for large-format print, laser cutting and engraving.
- PDF — lossless, 600 DPI, single QR code or a full sheet of labels.
- WebP for lighter web assets.
- STL — the QR code as a 3D relief, with adjustable edge length, base thickness and relief height, and an invert option for engraving instead of embossing. Ready for any slicer.
- Text art — block characters for terminals, e-mails and README files.
- Clipboard — copy the QR code as an image, as SVG source, or as a data URL you can paste straight into HTML.
You can also save a design to My codes in your browser, export the whole configuration as a JSON preset, or copy a share link that carries the design and content in the URL fragment — which means the settings travel with the link but never reach any server.
Static QR codes: no expiry, no tracking, no account
Every QR code here is static: the data lives directly in the pattern of squares. There is no shortlink or redirect service in between, so the QR code never expires, keeps working regardless of whether this site does, and nobody can count or track your scans. Dynamic QR codes sold elsewhere can be edited after printing — but they also stop working the day the subscription lapses.
Because a QR code hides its destination by design, the tool also inspects the link for you and flags the classic tricks used in quishing (QR code phishing): a bare IP address instead of a domain, punycode that imitates another name, a URL shortener hiding the real destination, an unencrypted http:// connection, credentials embedded in the address, or a domain mixing alphabets. A Wi-Fi QR code gets its own warning, because anyone who photographs it gets your password.
One more practical touch: uppercasing the scheme and domain of a URL lets the QR code switch to a denser encoding mode. When that would actually shrink the grid, the tool tells you by how many modules.
Make a QR code in three steps
- Pick the type of QR code and fill in the fields — the preview updates as you type.
- Style it in the Design tab, then glance at the badge under the preview to confirm the QR code still scans.
- Download PNG, SVG or PDF and use the QR code anywhere, including commercially.