Home/ Tools/ QR code generator

QR generator · free, no signup

QR codes that actually scan.

A free QR code generator. Paste a URL, get a clean SVG or PNG that scans from across the room, and looks good on stickers, posters, packaging and slides. Runs in your browser. Nothing you type leaves the page.

QR code generator

Any URL works, though a short slsh.me link means fewer modules and a QR that scans cleaner when printed.

Customize
Keep it dark on a light background so scanners can lock on.

Higher tolerates more damage (logos, scratches, dirt) but adds modules.

Paste a URL on the left and your QR will render here.

Generated locally. Nothing uploaded.

The technical truth

Short URLs make for smaller, scannable QR codes.

Every character of your URL adds modules to the QR matrix. A long, tracked URL produces a dense forest of tiny dots; a short link produces a sparse grid with big, forgiving ones. Same printed size, dramatically more reliable at distance, off-angle, or under glare.

Tracked URL 49×49 modules
https://example.com/spring-launch-2026-flagship-store?utm_source=poster&utm_medium=print&utm_campaign=spring-launch&utm_content=corner-qr

Dense matrix. Needs a bigger print and a closer scan, fails first under angle or print smudge.

slsh.me short link 25×25 modules
https://slsh.me/spring

Big modules. Prints small, scans from the back of the room, survives a thumbprint.

Where it matters

Four places a scannable QR earns its keep.

A QR code is only useful if a phone actually reads it. The cleaner the matrix, the more the street, the wall, the room or the lens can fight it and still lose.

Real-estate sign

It’s in the window and the buyer is across the street.

Ten meters of pavement and traffic between the sign and the camera. Big modules read from the opposite sidewalk.

Posters

You’re printing a 6-foot festival poster.

Bigger modules read from 5 meters back. A 21×21 QR for a slsh.me link beats a 45×45 monster for a tracked URL every time.

Packaging

It has to fit on a coffee-bag seam.

A short link prints at 1.5 cm and still scans clean. Long URLs need 4 cm to render the same dot size, and there isn’t the real estate.

Slides

The audience is in row 12, the room glare is bad.

A short link means dots big enough that even the back row catches it in two seconds. Don’t make people stand up to scan.

A note on how QRs work

A QR code is just a resilient URL.

Under the hood: 21 to 177 black-and-white modules per side, error-correction blocks that let scanners recover from a logo or a scratch, and a tiny header that tells the phone how to decode the rest. The longer the URL you stuff in, the more modules the encoder has to add (or the higher the error-correction level it needs), and both make the printable dots smaller for any given size.

The fix is upstream of the QR itself. Use a slsh.me short link as the destination, encode that, and the matrix collapses to its smallest viable size. Bonus: every scan becomes a real-time data point in your slsh.me analytics (country, city, device, browser, time) without you instrumenting anything.

And because the QR points at the short link rather than the underlying URL, you can change the destination later. Printed the wrong URL on 10,000 stickers? Update the slsh.me link in 10 seconds. The QR keeps working.

Questions

The honest answers.

What size should I print a QR code?
Rule of thumb: the QR’s smallest dimension should be at least 10% of the expected scan distance. From 1 m: 10 cm minimum. From 5 m: about 50 cm. A QR for a short link can run smaller because the modules are bigger to start. On a business card a slsh.me-link QR can sit at 1.5 cm and still scan; a long tracked URL would need closer to 3 cm to read at the same module pitch.
What does “error correction” actually do?
QR codes pad your URL with redundant data so the scanner can still recover the original if part of the matrix is damaged or hidden. L recovers about 7%, M 15%, Q 25%, H 30%. Higher tolerance adds modules. Use M for clean digital scans, Q or H if you’re putting a logo on top or printing on a surface that takes abuse.
Do QR codes expire?
The QR itself never expires. It’s just an encoded URL. What changes is the destination. If the QR encodes a long URL directly, you’re married to whatever lives at that address. If it encodes a slsh.me short link, you can update the destination later without reprinting anything. Print once, retarget forever.
Can I add a logo to the QR?
This basic generator produces an unbranded QR. Putting a logo over the center means masking ~20% of the matrix, which only works if you raised the error-correction level to Q or H first. A full QR styler (logos, colors, eye shapes) is on the slsh.me roadmap.
Why does my QR fail to scan sometimes?
Three usual suspects: the printed size is too small for the scan distance, the encoded URL is so long the modules are crammed together, or the contrast between foreground and background is too low. Fix in order: shorten the URL (slsh.me), pick a dark foreground on a clearly lighter background, and add a 4-module quiet zone around the code. If you’re printing on a curved or shiny surface, bump error correction to Q.
Is this tool free?
Yes. The QR generator is free, no signup, no watermark, and it runs entirely in your browser. Nothing you type touches slsh.me’s servers. We remember your last URL and options in your browser’s local storage so you don’t have to retype. Shortening the URL with slsh.me first requires a free slsh.me account.

Same QR. Half the modules.

Short link in, smaller QR out. Free forever, real-time analytics on every scan, change the destination after the stickers are printed.

Shorten with slsh.me

See what live click analytics look like: tour the analytics · see pricing