Skip to content

QR code generator with logo, colours and SVG export

Create QR codes for links, text, phone numbers and more. Pick the size, colours, quiet zone and error correction, add a logo, then save PNG or SVG.

  • Runs in your browser
  • Nothing you enter is sent
  • Free, no account
What should the code contain?
Any text works. A URL is the most common use, but phone numbers, email drafts and coordinates all have their own schemes.
Try:
Appearance
px

The exported PNG is exactly this wide. The SVG is resolution-independent whatever you choose.

modules

The blank border around the symbol. The QR specification requires 4 modules; below that, scanners start to struggle.

Leaves the light modules unpainted. Only safe over a plain, light surface.

Error correction

Higher levels survive more damage and dirt but pack fewer characters into the same symbol size.

Contrast ratio 21.00:1 — comfortably scannable. #000000 on #ffffff.

Centre logo (optional)
A logo covers part of the symbol. Error correction is what makes that survivable, so raise the level when the logo grows.
Drop a logo imagePNG with transparency works best — the file is decoded on your device.PNG, JPG, JPEG, SVG, WEBP · up to 10 MB each
Your QR code
Version 225 × 25 modulesLevel M24 bytes
Encoded text — see exactly what is encoded
https://onthisdevice.com

How to make a QR code

  1. Type or paste what the code should contain — a URL is the usual case, but any text works.
  2. Set the export size. The PNG comes out at exactly that many pixels; the SVG is resolution-independent.
  3. Choose the colours. Keep the dark modules genuinely dark — the contrast readout tells you when you have gone too far.
  4. Raise the error-correction level if you are adding a logo, or if the code will be printed on something that gets scuffed.
  5. Download the PNG for screens and documents, or the SVG for print and anything that needs to scale.

Nothing is uploaded. The symbol is computed in this tab and drawn onto a canvas, which is why there is no rate limit, no watermark and no account. It also means the code has no redirect in the middle: it encodes your text directly, so it cannot expire or start showing an advert three months from now.

What you can put in a QR code

Phone cameras recognise a handful of URI schemes and act on them automatically. Everything else is treated as plain text and simply displayed.

What you want What to encode What the phone does
Open a web pagehttps://example.com/pageOffers to open the link
Call a numbertel:+15551234567Opens the dialler with the number filled in
Send an emailmailto:hi@example.com?subject=Hello&body=HiOpens a pre-filled draft
Send a textSMSTO:+15551234567:MessageOpens the messaging app
Show a locationgeo:48.858370,2.294481Opens the map at that point
Start a video callhttps://meet.example.com/roomOpens the meeting link
Plain textTable 14Displays the text

Error correction, and why it exists

A QR code stores its payload with Reed–Solomon error correction, the same family of codes used on compact discs and in deep-space telemetry. Redundant data is woven through the symbol so that a decoder can reconstruct the original even when part of it is unreadable. You choose how much redundancy to spend:

Level Recoverable Capacity cost Use it for
L~7%Smallest symbolClean screens, long payloads such as vCards
M~15%Slightly largerThe sensible default for most printing
Q~25%Noticeably denserLabels, packaging, anything that gets handled
H~30%DensestCodes with a centre logo, industrial environments

Redundancy is not free: at level H the same text needs a physically larger symbol than at level L. A dense, high-correction code printed small can scan worse than a sparse, low-correction one, because the camera can no longer resolve the individual modules. Pick the lowest level that survives your environment.

Adding a logo without breaking the code

A centre logo works because the decoder treats it as damage and repairs it. The rules that follow from that are simple:

  • Stay inside the budget. At level H roughly 28% of the symbol width can be covered. Beyond that you are asking the decoder to reconstruct more than the redundancy allows.
  • Cover the centre, never a corner. The three large squares are finder patterns and the small one is an alignment pattern; obscure any of them and the scanner cannot even locate the code.
  • Keep a plate behind the logo. A solid background under the logo gives the decoder a clean, obviously-damaged region rather than a half-visible module grid.
  • Test on real phones. Decoders differ. Before a print run, scan the final artwork with an iPhone camera, an Android camera and one third-party scanner app.

Choosing a size for print

The working rule of thumb is that a QR code needs to be about one tenth of the distance it will be scanned from. There also has to be a quiet zone — four modules of blank space on every side — or the decoder cannot tell where the symbol ends.

Scanning distance Minimum symbol size Typical use
10 cm1 cmProduct label, ticket stub
30 cm3 cmBusiness card, menu, packaging
1 m10 cmTable tent, shop window, flyer
3 m30 cmPoster, exhibition stand
10 m1 mBillboard, building wrap

Export the SVG whenever the code is going to print. It is a handful of vector paths, so the module edges stay perfectly crisp at any size, and the file will not develop the soft grey halo that comes from scaling a bitmap up in a layout program.

Colour, contrast and materials

Scanners threshold the image into black and white before they decode it, so what matters is luminance difference rather than hue. A pale yellow on white has plenty of “colour contrast” and almost no luminance contrast, and it will not scan. Aim for a ratio of at least 4:1 with the dark modules genuinely darker than the background — inverted codes fail on a large share of Android devices and on nearly all laser-based scanners.

Physical surfaces matter as much as colour. Glossy laminates throw back the camera flash, curved bottles distort the module grid, and matte dark paper swallows the contrast. Where the surface is difficult, go up an error-correction level and print larger rather than trying to fix it in the artwork.

Questions

Do these QR codes ever expire or need a subscription?

No. The code is a direct encoding of the text you typed — there is no redirect service in the middle, no tracking link and no account. Once you download the image it works forever, offline, with no dependency on this site.

How large can a QR code be before it stops scanning?

A symbol holds up to 4,296 alphanumeric or 2,953 binary characters, but long payloads produce dense codes that cheap cameras struggle with. In practice keep URLs under about 300 characters, and use a link shortener or a landing page for anything longer.

Will adding a logo break the code?

Not if you stay inside the error-correction budget. Level H can reconstruct roughly 30% of a damaged symbol, so a logo covering up to about 28% of the width is usually safe. The tool warns you when the logo grows past what the current level can recover, and you should always test the printed result with a real phone.

Why does my code stop working when I invert the colours?

Almost every decoder assumes dark modules on a light background. Light-on-dark codes fail on many Android cameras and most dedicated scanners. Keep at least a 4:1 contrast ratio with the dark colour genuinely darker — the tool shows the ratio and flags an inversion.

What size should I print it at?

A rough rule is that the symbol should be at least a tenth of the scanning distance: 3 cm for a 30 cm read on a business card, 10 cm for a metre, and much larger for posters. Export the SVG for print so the edges stay perfectly sharp at any size.