Free QR Code Generator
Make a real QR code in your browser. Nothing uploads, nothing gets tracked, and the download is true vector SVG that stays sharp from a business card to a billboard.
Enter a URL or any text to generate a QR code.
A quick planning estimate — exact specs and pricing come with your quote. Request a free quote →
QR code FAQ
When the code is ready, we design and produce the pieces it goes on — postcards, table tents and signage for businesses across Buffalo and the West Metro.
Not the ones from this tool. The code encodes your URL directly into the symbol, so there is no middleman service sitting between the scan and your website. Many free generators encode a short link that routes through their servers — if that company shuts down or starts charging, every code you printed goes dead. Yours cannot be switched off.
A PNG is a fixed grid of pixels. Blow it up past its native size and the module edges soften, which is exactly the failure that kills codes at print size. An SVG stores the code as shapes, so it stays perfectly crisp at any scale — a business card or a billboard. Send the SVG to your printer whenever you can.
M is the right default for most jobs — 15% recovery without much size penalty. Go up to Q or H only when the code will take real abuse: a window decal baking in the sun, a code sitting near a fold, or one with a logo covering the middle. Higher levels make the grid denser, so the printed code has to get bigger.
No. The whole tool runs in your browser — the code is generated on your own device, and the URL you type never leaves it. There is no account, no email gate, and no scan tracking. It is free because we design the printed pieces QR codes end up on, and useful tools bring people here.
How QR codes actually work
A QR code is not a picture — it is a grid. Every dark or light square in that grid is a module, and modules are the only thing a scanner actually reads. The grid size is set by the symbol version: version 1 is 21×21 modules, and each step up adds four modules per side, so version 2 is 25×25, version 3 is 29×29, and so on to version 40 at 177×177. Version is not a quality setting you turn up. It is simply the smallest grid your data fits into, and this tool picks it for you automatically.
More data means more modules. Every character you encode has to live somewhere in that grid, so a longer URL forces a higher version, and a higher version packs more, smaller squares into the same printed footprint. Error correction pushes in the same direction. The four levels — L, M, Q and H — recover roughly 7%, 15%, 25% and 30% of the symbol, and they do it by encoding redundant data alongside your content using Reed-Solomon coding. Nothing is stored twice as a backup file; the redundancy is woven through the whole symbol, so any damaged region can be reconstructed from what survives. That redundancy occupies real modules, which is why raising error correction grows the code.
Here is what that trade costs in practice. Take a 60-character URL. At level M, the smallest symbol that holds it is version 4 — a 33×33 grid. Switch to H and those same 60 characters no longer fit until version 7, which is 45×45. Every symbol also needs a quiet zone: four modules of empty light space on all four sides, which is what lets a scanner find the code’s edges at all. Print both examples at 1.5 inches square including that margin and each module shrinks from roughly 0.037 inch to about 0.028 inch. Shortening the URL is usually a better lever than dropping error correction — it shrinks the grid and enlarges every module at once.
Two more rules decide whether the thing scans at all. First, dark modules on a light background, in that order. Most readers assume that polarity, and inverted codes — light on dark — fail on a meaningful share of phones even when the measured contrast looks fine. Keep the dark-to-light contrast above roughly 4:1, and be honest about ink on paper, which never reads as cleanly as a screen. Second, scanners resolve modules, not pixels. A code is big enough when each module survives printing, not when the file has a large number in it — which is why the download here is vector. Check the physical size with the QR code size calculator before it goes onto a postcard or a banner.
Ready to start your project?
Tell us what you need and we'll put together a custom quote — no cost, no commitment.