Never expires
Your link is written straight into the code, with no redirect service in between. Nothing can be switched off later, and you'll never be asked to “renew” a code you've already printed.
Free forever · No sign-up · Never expires
Add colours, shapes and your logo, check that it scans, then download a print-ready PNG or SVG. It all runs in your browser, so nothing you type is uploaded.
Paste or type a link and your code updates as you go.
Phones show this text when the code is scanned.
Guests scan to join without typing the password. The password stays on your device.
Include the country code (for example +44) so it works from anywhere.
Sample code: add your link to make it yours
Dots
Corners
Adding a logo switches error correction to High so the code still scans.
Error correction
Higher levels can survive more damage, but make the pattern denser. M suits most uses.
Why qr-gen
Your link is written straight into the code, with no redirect service in between. Nothing can be switched off later, and you'll never be asked to “renew” a code you've already printed.
Codes are made in your browser. Your links, Wi-Fi passwords and logos are never uploaded.
A built-in decoder scans every design as you edit it, so you know it reads before it goes to print.
Vector SVG for any print size, and crisp PNG up to 4096 pixels for screens and documents.
Six dot styles, four corner styles, gradients, your logo and a “Scan me” frame.
Make as many codes as you like and use them commercially, without an email address or a watermark. You can even install qr-gen as an app, and it keeps working offline.
How it works
Paste any web address. You can also choose text, Wi-Fi, email or phone.
Pick a preset or set your own colours, shapes, logo and frame. The preview updates as you go.
When the check turns green, download a PNG or SVG. Test it with your phone camera before a big print run.
Good to know
A static QR code holds your link directly, so it works forever and can't be tracked. A dynamic code holds a short redirect link that a company controls. That's why so many “free” generators end up asking you to pay to keep your codes working.
Tip: if your content will change, point a static code at a page you control, such as your website or a links page, and update that page instead.
FAQ
Yes. qr-gen is completely free, with no sign-up, no watermark and no limit on how many codes you make or how many times they're scanned. There's no trial and no paid tier that your codes depend on.
No. qr-gen makes static QR codes: your link is written directly into the pattern, with no redirect server in between. The code keeps working for as long as the page it points to exists.
Yes. Codes are generated entirely in your browser. Your links, Wi-Fi passwords and logos are never uploaded to our server. There are no accounts, no cookies and no analytics. Your last design is remembered on your own device only.
A static QR code contains your data directly, so it never expires and can't be tracked, but you can't change where it points after printing. A dynamic QR code contains a short redirect link owned by a service: you can edit and track it, but it stops working if that service shuts down or your subscription ends.
Yes. Upload a PNG, JPG, WebP or SVG and qr-gen places it in the centre. It switches error correction to High automatically so the code still scans. Keep the logo below about a quarter of the code's width.
Use SVG for print: it's a vector file, so it stays perfectly sharp at any size, from business cards to billboards. Use PNG for websites, social posts, slides and documents. qr-gen exports PNG at up to 4096 pixels.
Print it at least 2 cm (0.8 in) wide. A good rule is that the code should be at least one tenth of the scanning distance, so a poster read from 2 metres needs a code about 20 cm wide. Longer links make denser codes, which need to be printed larger.
The usual causes are low contrast between the code and its background, light-on-dark colours that some older scanners can't read, a logo that covers too much of the code, printing too small, or no quiet zone (empty margin) around the code. qr-gen decodes every design as you edit it and warns you before you download.
Not with a static code, because the link is part of the pattern. If you expect your content to change, point the code at a page you control, such as your website or a links page, and update that page instead.
Yes. Use them on menus, packaging, flyers, posters, business cards and adverts. No attribution is needed and there's no watermark.
qr-gen can also make codes for plain text, Wi-Fi networks (scan to join without typing the password), emails with a prefilled subject and message, phone calls and text messages.
From XVN
qr-gen is made by XVN Web Services. We design and build websites and apps, and our AI builder can put a one-page site online in minutes.