Free QR code generator

No account, no watermark. The static code is generated instantly, right in your browser — what you type here never leaves it — and it never expires. Need to change the link after printing? The Dynamic tab does that.

Example — start typing and your code appears instantly.

Fill in the form to download your code.

Live preview — updates as you type.

Templates

One click applies everything: colours, eyes, frame. All of it stays editable afterwards.

Social networks

The platform's colour with its logo in the middle. Put your page link in the field above.

Frame with text (optional)· 4 styles

A frame with a call to action (“Scan me”) increases the number of scans. The frame is part of the downloaded files, both PNG and SVG.

Customise· colours, shapes, logo
Module shape

The thumbnails show a close-up of a fragment of the code, so the difference between shapes is visible.

Eye shape (the detection corners)
#1a2420
#ffffff
Gradient on the code (optional)

Create a QR code in 3 steps

  1. Pick the content type — a link to a website, free text, Wi-Fi access, a business card (vCard), a WhatsApp conversation, an email or a phone call.
  2. Fill in the form — the preview updates on every keystroke. You can change the colours, the module shape and add a logo in the centre.
  3. Download and use it — PNG at 1000 px for the web, PNG at 3000 px or vector SVG for print. Press “Test the code” to confirm it scans correctly.

Need to change the link after the code is printed?

The codes generated above are static: the content is written into the code itself, it never expires and it does not depend on us. If instead you need to change the destination after printing — a seasonal menu, this month’s offer, a page that moves — you need a dynamic code: the code on the poster stays the same, and you change where it points, anytime.

Dynamic QR codes — free

  • Change the destination anytime, without reprinting
  • Aggregate statistics: total scans, unique scans, top location (no tracking of individuals)
  • A short link on yqr.ro, our dedicated link domain
  • Portability kit: we export the full map of your redirects whenever you ask. The printed address stays on yqr.ro, though — full portability, on your own domain, comes with Portable.
Create a dynamic code →

Free: up to 10 dynamic codes per account and 10 destination changes per day. No card. You can generate the first one without an account (it stays active for 24 hours); the account, also free, only needs an email — no password. How dynamic QR codes work →

Your QR stays yours, forever

Many “free” generators actually create dynamic codes: the QR goes to their server first, which then redirects to your address. When the trial expires or you stop paying, the code dies — even if it is already printed on hundreds of menus or flyers. With us, the staticcode — the one in the generator’s default tab — has no intermediary at all: the information is encoded directly into the QR drawing. Once downloaded, it works independently of us, with no expiry and no further cost.

We do offer dynamic codes too, because sometimes you genuinely need to change the destination after printing — but we keep them free and we tell you plainly where there is an intermediary and where there is not. The rule is simple: print a static code when the link is final, and a dynamic one only when you really want to be able to change it.

  • Keep strong contrast: a dark code on a light background. We check it automatically and warn you if the combination is risky.
  • In print, the code needs at least 2 × 2 cm and a clear margin around it (we leave the correct one in the downloaded files).
  • With a logo in the centre, use error correction level H (we set it automatically) and test the code before sending it to print.
  • Shorter links produce simpler codes, which scan more easily from a distance.

Read the full printing guide →

Frequently asked questions

Is it really free? Are there hidden limits?
Yes, it is completely free: no account, no watermark, no cap on the number of codes and no trial period. The codes generated here are static — the content is written into the code itself, so your QR works forever and does not depend on us.
Do the generated QR codes expire?
No. The generator on this page creates static QR codes: the information (the link, the text, the Wi-Fi password) is encoded directly into the image. The code stays yours and keeps working indefinitely, even if our site disappeared.
What is the difference between a static and a dynamic QR code?
In a static code the link is written into the drawing itself: it never expires and depends on nobody, but you cannot change it after printing. A dynamic code points at a short link we host on yqr.ro, and you can change the final destination at any time — useful when the offer, the menu or the page changes but the posters are already printed. Ours are free, with aggregate scan statistics (total scans, unique scans, top location).
How do I create a dynamic QR code I can edit later?
In the generator, switch to the “Dynamic” tab. We pick a short link for you on yqr.ro — in the form yqr.ro/your-name — which you can customise, you type the destination and press “Download QR code”: only then do we create the link and check its destination. You can make the first code without an account and it stays active for 24 hours; to keep it permanently, change its destination and see the statistics, create a free account with your email, no password. The printed code stays the same — only where it leads changes.
Is my data sent to a server?
For static codes, no: both the generation and the scannability test happen locally, in your browser, and links, Wi-Fi passwords and contact details never leave your device. Dynamic codes work differently, by their very nature: the destination you type does reach us, we store it (otherwise there would be nowhere to redirect) and we check it automatically with a security scanner, so that yqr.ro does not become a phishing channel. Separately from both, we measure aggregate site traffic (page visited, referrer, country, device type), with no cookies and no access to what you type — see section 6 of the Terms.
Should I download PNG or SVG?
For the web, social media or documents, PNG at 1000 px is plenty. For print (posters, menus, business cards) use SVG — it is vector and stays perfectly crisp at any size — or PNG at 3000 px.
Can I put my company logo in the middle of the QR code?
Yes. Upload it in the “Customise” section and we automatically raise the error correction level to maximum, so the covered centre does not affect scanning. Then check it with the “Test the code” button.
Why am I getting a colour warning?
Cameras read the code by the contrast between the modules and the background. If you pick colours that are too close, or a light code on a dark background (an inverted code), many phones will not be able to scan it. The warning appears in exactly those situations.
Can I add a frame with text, like “Scan me”, around the code?
Yes. Pick a frame style (simple, rounded corners, speech bubble or solid band), a preset text or your own up to 30 characters, and the position, top or bottom. The frame is part of the downloaded files — both PNG and SVG — scaled correctly even at 3000 px for print.
Do gradients or differently coloured eyes break scanning?
Not if you keep the contrast. Our check runs automatically on the lightest colour in the gradient and on the eye colour: if either drops below the safe threshold against the background, you get a warning immediately. And the “Test the code” button actually decodes the generated code, gradient and custom eyes included.

Received a QR code and want to see what it hides, safely? Scan a QR code online →

Need a classic barcode — EAN for the shelf or Code 128 for labels? Open the barcode generator →