Free static codesNo accountMade in your browser
QR codes
worth printing.
Your logo or photo inside the dots, not stuck on top. Every code is checked with a real scanner before you download it.
Free · No account · About a minute

Scan it. That is our logo inside the code.
A picture inside, not on top
Most tools paste an image over the dots and hope. We split every dot into a grid so your photo lives between the data the camera reads.
Picture codes →Tested like a phone would
Five conditions: clean, printed small, out of focus, faded, at an angle. Real decoder, your exact design, before you download.
Test any code →Need to edit it later? From €10 a year.
An editable code with a short link you can repoint whenever you like. No subscription and no auto-renewal: pay for a year, or pay once and never think about it again.
How editable codes work →What a QR code generator should have done all along
A QR code is a grid of dark and light squares. The three big squares in the corners tell a camera where the code is, the small squares in between carry your link plus a layer of error correction that lets the code survive a smudge, a fold or a logo. That is the whole trick, and it is why a static code generated here will work in twenty years without anyone’s server being involved.
Everything in the design panel is built on top of that grid rather than painted over it. Dot shapes, eye shapes, gradients, outline shapes and the picture mode all change how the grid is drawn, never what it says. Then the scan check draws your exact design to pixels and asks a real decoder to read it five different ways, the way phones will in the wild. If a shape or a colour pushes the code over the edge, you see it here, not on a thousand printed flyers.
Use the tabs above the form for Wi-Fi, contact cards, WhatsApp, calendar events, SEPA payments and more. Each one encodes the exact format iPhone and Android cameras expect. For links to Instagram, Google reviews, LinkedIn or your menu, the pages in the footer start you off with a fitting look and a sensible frame text.
Questions people ask
Is it really free? What is the catch?
The codes you make on this page are static: your link is encoded straight into the dots, the file is generated in your browser, and nothing is stored on our side. There is no account, no watermark, no scan limit and nothing that can expire. We earn from lifetime editable codes, which are a separate thing you only buy if you need to change the destination after printing.
Will this QR code expire?
No. A static code cannot expire because there is no server in the middle. It keeps working for as long as the link it points to exists. Codes that "expire" are dynamic codes whose provider turned off the redirect.
Which file should I download?
PNG for screens, documents, Canva and social media. SVG for anything a printer or designer will handle: it stays sharp at any size. PDF if the print shop asks for one at a fixed width in millimetres.
How big should I print it?
Divide the scanning distance by ten. A code read from 30 cm (a menu, a card) needs about 3 cm. A poster read from 2 metres needs 20 cm. Picture codes and codes with a logo want a bit more. Our guide on print size has the full table.
Why do you test the code before I download it?
Because a QR code that looks lovely and does not scan is worse than an ugly one. The scan check rasterises your exact design and runs a real decoder on it under five conditions: a clean scan, a small print, an out-of-focus camera, faded low-contrast print and a scan at an angle.
Can I put a photo inside the code?
Yes, that is the Picture tab. Each dot is split into a tiny grid; the centre keeps the data, the rest shows your image. Phones read the centres, people see the photo. Use error correction H and print it at 5 cm or larger.
What do you collect?
Nothing from the generator: it runs entirely on your device. We use privacy-friendly aggregate analytics to see which pages are used. The full details are in the privacy policy.