Static codes that never expire
Most “free” QR generators quietly make dynamiccodes: the QR points at a short redirect on their server, and the real link sits behind it. That’s how they can later charge you, cap your scans, or — worst of all — let the code die if they shut down or you stop paying. A code printed on a thousand flyers becoming a dead link is a genuinely expensive mistake.
This tool makes staticcodes. The destination is encoded straight into the pattern, so there’s no middleman, nothing to expire, and no one logging who scanned what. The trade-off is honest: you can’t change where a static code points once it’s printed. If the destination might move, point the code at a stable URL you control (a page on your own site) and update what lives there instead.
Want to track scans? Tag the link, not the code
You don’t need a dynamic QR subscription to know your codes are working. Build the URL with campaign parameters first, then encode that. Every scan arrives on a tagged link your analytics attributes to the QR — e.g. ?utm_source=flyer&utm_medium=qr. Generate the tracked link in our UTM builder, paste it in above, and you get reporting without the redirect dependency. Our guide to QR codes for social media covers the rest — destination, design, and placement.
Adding a logo without breaking the scan
A centre logo looks great and it’s safe — QR codes carry error correction that can rebuild a covered area. Three rules keep it scannable:
- Keep the logo small. Roughly the middle third, no more. The generator already bumps error correction to High when you add one, but covering too much still kills it.
- Hold the contrast. Dark dots on a light background scan most reliably. The live warning flags colour pairs a camera will fight with.
- Test before you print. Always scan the exported file with a real phone, at the size it’ll actually be used. Two minutes now saves a reprint later.
Where social teams put QR codes
The bridge from offline to your profiles. Print one on product packaging or an insert card to send buyers to your link-in-bio; put one on event signage, booth banners, or a conference badge to grow followers in person; add one to a business card or a slide so people can open your profile without typing a handle; or drop a branded code into a video or printed lookbook. Anywhere someone might want your link but can’t click, a QR code closes the gap.
How the generator works
- 1
Paste your link
Drop in any URL — a profile, a link-in-bio page, a product, a tracked campaign link. Plain text like a Wi-Fi name or email works too. The code renders instantly.
- 2
Match your brand
Set the dot and background colours to your palette and pick a dot style. A live contrast check warns you if the colours are too close to scan reliably.
- 3
Add a logo (optional)
Upload your logo to sit in the centre. Error correction jumps to High automatically so the code still scans with the logo covering part of it.
- 4
Download and test
Export PNG for web and print, SVG to scale to any size cleanly, or JPG for email. Then scan it with your phone before you publish or print it.
Frequently asked questions
Is this QR code generator free?
Yes — completely free, no sign-up, no watermark, and no limit on how many codes you make. Everything runs in your browser, so there's nothing to pay for and nothing to install.
Can I make a QR code for my Instagram or TikTok?
Yes — paste your profile or link-in-bio URL (for example instagram.com/yourhandle or tiktok.com/@yourhandle) and you get a branded QR code that opens it. Because it's static, the code never expires, so it's safe on packaging, business cards, event signage, or on screen in a video — anywhere someone can't tap your link. Style it in your colours and drop your logo in the centre so it looks like yours, not a generic black-and-white square.
Do the QR codes expire?
No. These are static QR codes: the link is encoded directly into the pattern, so there's no third-party redirect that could be switched off or lapse. Once you've downloaded the image, it works forever — which is exactly what you want on something printed.
What's the difference between a static and a dynamic QR code?
A static code holds the destination in the pattern itself — it never expires and nobody tracks the scans, but you can't change where it points after it's printed. A dynamic code points at a short redirect URL you can edit and track later, but it depends on a paid service staying online, and if that service dies the code dies with it. This tool makes static codes; if you need editable destinations, add a tracked link layer yourself (see the next answer).
Can I still track scans with a static QR code?
Yes — track at the link level instead of the code level. Build a URL with UTM parameters first, then turn that into a QR code here. Every scan lands on a tagged link your analytics can attribute to the QR campaign, with no dynamic-QR subscription. Our UTM builder does exactly that.
Can I add a logo in the middle?
Yes. Upload a PNG, JPG, or SVG and it's placed in the centre. When a logo is present the generator raises error correction to its highest level, which lets the code reconstruct the area the logo covers — so it stays scannable. Keep the logo to roughly the middle third and test before printing.
Which file format should I download?
Use SVG whenever you can — it's vector, so it scales to a billboard or a business card with no blur. Use PNG for web embeds and most print workflows. Use JPG only when something (like an old email client) demands it, since JPG can introduce edge artefacts that very dense codes don't love.
Does the generator upload my link or logo anywhere?
No. The encoding and image rendering happen entirely in your browser — your URL and your uploaded logo never leave your device, and nothing is stored or tracked. You can confirm it by switching off your connection after the page loads; the generator keeps working.
Why won't my QR code scan?
Almost always one of three things: the dots and background are too low-contrast (the live warning flags this — dark on light is safest), the code was printed too small (aim for at least 2×2 cm, larger from a distance), or a logo is covering too much of the centre. Fix those and always test with a real phone camera before you commit it to print.
