Free QR code generator
A free QR code generator turns a link into a scannable pattern entirely in your browser, with no account, no watermark, and no expiry on the download.
Paste a link, pick a style, and download a print-ready file. Nothing you type ever leaves your browser.
Everything happens in your browser. Your Wi-Fi password and contact details never leave it.
This code is static: once printed, where it points can't change. An editable DexURL QR can. Read does a QR code expire.
How it works
Paste your link
Type or paste the URL you want the code to open. It gets an https:// prefix automatically if you leave the scheme off.
Style it
Choose module shape, colors, a frame, and an optional logo. The preview updates as you go.
Check the density readout
A live count under the preview shows the payload size and the smallest size it will still print clearly at.
Download
Export as PNG, SVG, PDF, JPEG, or WebP at up to 4096 px, ready for print or the web.
| Aspect | Static | Dynamic |
|---|---|---|
| What is encoded | The destination itself — the URL, text, or contact details are inside the pattern. | A short link that forwards to the destination. |
| Can change after printing | No. The pattern is fixed the moment it is printed. | Yes. Repoint the short link and every printed copy follows. |
| Works without any service | Yes — nothing has to keep running for the code to keep working. | No — it depends on the link service continuing to resolve. |
| Needs an account | No. | Yes, to create and manage the short link. |
| Scan counts | Not measurable — nothing passes through a service that could count it. | Measurable, since scans pass through the short link. |
| Best for | Fixed content that will never need to change, such as a contact card or a product manual link. | Anything printed where the destination, schedule, or password might change later. |
When an editable code is the better tool
| Situation | Static code | Editable code |
|---|---|---|
| A campaign poster or packaging run | A typo or an offer change means every printed copy is wrong until it is thrown out. | Fix the typo or swap the offer, and the same printed code starts working correctly. |
| A menu or price list | A price change means reprinting every table tent or laminated page. | Update the destination page once; the printed code keeps pointing at the current menu. |
| A business card | A new phone number or job title means every card in circulation is out of date. | Repoint the code to updated contact details without reprinting a single card. |
| Wi-Fi in a rented space | A password reset (a new tenant, a router swap) leaves the printed code connecting to nothing. | Update the network details behind the code without touching the sign on the wall. |
| Event signage with a schedule | A room or time change means the printed code sends people to the wrong place. | Update the schedule page; the code on the signage keeps working. |
| Anywhere scan counts matter | A static code cannot tell you whether anyone scanned it at all. | Scans pass through a link you control, so they can be counted. |
FAQ
Does this QR code expire?
No. The file you download is a static image with the link built into the pattern. It works for as long as that link works, with no expiry, no account, and no scan cap from DexURL.
Why is my QR code so dense?
A long URL or one with tracking parameters needs more modules to encode, which makes the pattern harder to scan at small sizes. Shortening the link, or removing tracking parameters, produces a sparser, more reliable code.
Can I add a logo?
Yes, free, with no watermark. Upload an image and crop it in your browser; the error-correction level is raised automatically so the code still scans with the logo in place.
Does the code ever change after I print it?
No — a static code you print is fixed forever. If you want to fix a typo or change the destination later without reprinting, use an editable DexURL QR instead.