QR Code Generator

Turn a link, a note, an email address or a phone number into a QR code that any camera can read, then take it away as a crisp PNG or an infinitely scalable SVG.

Content / url

https:// is added automatically if you leave it out.

Higher levels survive scratches and logos, but pack in more modules.

Output idle
Your QR code will appear here
Encodes

Which error correction level should you pick?

Error correction decides how much of the code can be damaged before it stops scanning. L recovers roughly 7% and keeps the pattern sparse. H recovers around 30% and is the right choice if the code will be printed small, placed on a curved surface, or covered with a logo in the middle.

The trade is size. Higher recovery means more modules for the same text, and more modules means the camera has to get closer or the print has to get bigger. Start at M and move up only when something about the surface makes you nervous.

How big to print it

The working rule is ten to one: a code reads reliably from about ten times its own width. Everything else follows from that.

Printed widthReads from aboutTypical use
2 cm20 cmBusiness card, product label
5 cm50 cmMenu, flyer, packaging
20 cm2 mShop window, exhibition stand
50 cm5 mPoster, wall graphic

Leave the quiet zone alone. The empty margin around the pattern needs to be at least four modules wide for a scanner to find the edges, and both downloads here include it. Keep the code dark on a light background rather than the other way round, and avoid glossy stock that throws a reflection straight back at the camera.

What each content type produces

TypeWhat gets encodedWhat the phone offers
URLhttps://example.comOpens the link
TextThe text exactly as typedShows it, offers to copy
Emailmailto:you@example.com?subject=HelloOpens a pre-filled draft
Phonetel:+46701234567Offers to place the call

The encoder is built into this page, so your data is turned into a matrix locally and never sent to an image service. The codes keep working even if this site disappears tomorrow, because there is no redirect in the middle to disappear with it.

Do these QR codes expire?

No. The code is a direct encoding of your text or link. There is no redirect service in between, so it works for as long as the destination does.

PNG or SVG?

Use SVG for print and anything that gets resized, since it stays perfectly sharp at any scale. Use PNG for slides, chat messages and social posts, where a plain image is simply easier to paste.

Can I put a logo in the middle?

Yes. Download the SVG, set the error correction level to Q or H first, and keep the logo under about 20% of the width so enough modules survive underneath it.

Why will my code not scan?

Four usual suspects, in order of likelihood: it is printed too small for the distance, the quiet zone around it was cropped, there is not enough contrast between the code and the background, or the payload is so long that the modules became too fine to resolve. Shorten the text and print it bigger before you blame the scanner.

Can I see how many people scanned it?

Not with a plain code, because nothing reports back. Counting scans means pointing the code at a redirect or link shortener and reading its statistics, which buys you numbers at the cost of a service that can go away and take your code with it.

How much text fits in a QR code?

Up to roughly 2,900 bytes at the lowest error correction level, but that is a theoretical ceiling rather than advice. Past a few hundred characters the pattern gets dense enough that ordinary phone cameras struggle, so keep printed codes well under that.