Free QR Code Generator With a Built-In Scan Self-Check
Nine content types, real vector exports, and a QR decoder that reads every code back before you download it. Nothing is uploaded and no account is required.
Live preview
Enter a link to generate a code.
Running the scan self-check
Decoding the rendered code back at three sizes.
Download
millimeters
Recent codes
- Codes you generate appear here, on this device only.
Batch mode
Paste one link - or one line of any content - per row. Every row is generated with the style above, self-checked, and packed into a single ZIP file that is built here in your browser. Nothing is sent anywhere.
What QR Studio does
QR Studio is a QR code generator that runs entirely in your browser. Pick one of nine content types - link, plain text, Wi-Fi login, contact card, email, SMS, phone number, calendar event or map location - fill in a real form, and watch the code redraw as you type. Style it with square, dot or rounded modules, your own colors, custom corner eyes and a center logo, then export a PNG between 256 and 2048 pixels, a true vector SVG, a print-ready PDF, or a ZIP of hundreds of codes at once. Every code is decoded back by a real QR reader in a Web Worker at three different sizes before you download it, so you find out here if the styling broke it. Nothing is uploaded, no account is required, and the page runs offline after the first load.
- 9 content types, each with its own form and correct payload format
- 3 decode passes per code, at 2, 4 and 8 pixels per module
- 256-2048 px PNG, plus true vector SVG and millimeter-accurate PDF
- 70 KB of JavaScript, gzipped - a full first load is 81 KB gzipped
- 0 bytes sent to a server, 0 accounts, 0 usage limits, 0 watermarks
How to use QR Studio
- Pick a content type. Use the row of buttons at the top of the generator - URL, Text, Wi-Fi, Contact, Email, SMS, Phone, Event or Location. The form underneath changes to match, so you fill in fields instead of hand-writing a payload string.
- Fill in the form. The preview redraws on every keystroke. Escaping, vCard structure, Wi-Fi security flags and calendar date formats are handled for you.
- Style the code. Choose square, dot or rounded modules, set the foreground and background colors, restyle the three corner eyes, and drop in a center logo. The contrast readout warns you the moment a color pair stops being readable by a camera.
- Read the self-check. The badge under the preview turns green only when a real decoder has read your styled code back correctly at every test size. Amber means it works but needs to be printed larger; red means fix it before you ship it.
- Download. PNG at 256, 512, 1024 or 2048 pixels; SVG as true vector; PDF at an exact size in millimeters for a print shop. Or paste a list into batch mode and take the whole set away as one ZIP.
- Come back later. Recent codes and saved style presets are kept in this browser's localStorage, so your last session is still there next time. One button clears all of it.
Features
- Scan self-check. Every code is rendered and then decoded back by a real QR reader inside a Web Worker, at three sizes, and compared against what you typed - so a pretty code that no longer scans cannot slip through.
- Nine content types with proper forms. URL, plain text, Wi-Fi credentials, vCard contact, email, SMS, phone, calendar event and geo location, each written in the format phone cameras actually parse.
- Module and corner-eye styling. Square, dot or rounded modules; square, rounded or circular corner eyes and eye centers, with an independent eye color.
- Live contrast warning. A WCAG contrast ratio is computed on every color change, with separate warnings for low contrast and for inverted (light on dark) codes.
- Center logo with an automatic quiet zone. Whole modules are cleared behind the logo and the background is repainted there, and the app recommends the error-correction level that matches the coverage.
- Error-correction control with the trade-off explained. Levels L, M, Q and H, each with a plain-English note about what you gain and what it costs in code density.
- Real vector export. The SVG and the PDF are drawn from the same bezier path data as the on-screen preview - one path per color, no embedded bitmap.
- Batch mode with in-browser ZIP. Paste a list, get a ZIP of PNGs and SVGs assembled in the page itself, with the self-check run on every row.
- Private by construction. No upload, no generator API, no tracking redirect in the code, no watermark, no account and no usage cap. Recent codes and presets live only in your browser's localStorage.
- Works offline. After the first load the page is fully functional with the network disconnected.
Frequently asked questions
Is QR Studio free, and do I need an account?
It is free with no account, no sign-up, no email address and no usage limit. There is no paid tier to upgrade to and no trial to expire. The codes you generate are yours, they never expire, and they carry no watermark and no tracking redirect - the QR code points straight at whatever you typed.
What does the scan self-check actually do?
After every change, QR Studio renders the finished, fully styled code to a bitmap and hands the raw pixels to a real QR decoder running in a Web Worker. The decoder reads the image back at three densities - roughly a thumbnail, a normal on-screen code and a printed code - and compares what it read against what you typed. If the decode fails, or comes back different, you get a warning before you download the file instead of after you print a thousand stickers.
Does anything I type get uploaded?
No. Encoding, styling, decoding and every export happen in your browser with JavaScript, so your links, Wi-Fi passwords and contact details never leave the device. There is no generator API to call. Recent codes and saved style presets are kept in your browser's localStorage and can be cleared with one button. After the first load the page keeps working with the network switched off.
Can I add a logo without breaking the code?
Usually yes. QR Studio clears whole modules behind the logo and repaints the background there, so the logo always sits in a clean quiet zone rather than on top of half-covered modules. It also suggests the error-correction level that matches how much of the code the logo hides. A QR code can lose roughly 30 percent of its area at level H and still decode, but the finder patterns cannot be covered - which is why the self-check runs after every logo change and tells you if you have gone too far.
Which file format should I download?
Use PNG for screens, slides and social posts - pick a size between 256 and 2048 pixels. Use SVG for anything that will be resized, edited in Illustrator, Figma or Inkscape, or printed large; it is true vector, not a bitmap wrapped in an SVG tag. Use PDF for print shops and sticker vendors, and set the physical size in millimeters so the printed code comes out the size you intended. Batch mode packages one PNG and one SVG per row into a single ZIP built in your browser.
How was this app made?
QR Studio was generated from a single prompt on Quodara, an AI agent platform that turns a prompt into a deployed web app, and it was built and deployed on August 24, 2026. The QR encoder, the bezier geometry model shared by the canvas, SVG and PDF renderers, the ZIP and PDF writers and the self-check worker were all written in that one pass. The full write-up, including the prompt behind it, is at quodara-ai.com/showcase/qr-studio.
About this build
QR Studio was generated from a single prompt on Quodara and deployed on August 24, 2026. A full first load weighs 81 KB gzipped, of which 70 KB is JavaScript - the QR encoder, the jsQR decoder that powers the self-check, and hand-written ZIP and PDF writers that replaced two much larger libraries. There is no backend, no build-time content and no third-party script on the critical path. The full write-up of how it was specified and built is at quodara-ai.com/showcase/qr-studio.