Skip to content

QR Code Generator

Generate QR codes for websites, WiFi networks, contact cards and more. Codes point directly at your content with no tracking redirect, so they never expire and nobody counts your scans.

Runs in your browser · Files never uploaded

Higher survives more damage but holds less data. Use High for anything printed.

The SVG download is resolution-independent.

Fill in the fields to
generate a QR code

Generated entirely on your device. WiFi passwords and contact details typed here are never sent anywhere — unlike most QR services, which create the code on their servers.

How to create a QR code

  1. Choose what the code should do — open a website, join a WiFi network, save a contact, start an email or text message, or just carry plain text.
  2. Fill in the fields. The preview updates as you type.
  3. Set error correction and size. Use High correction for anything printed.
  4. Download as PNG or SVG. PNG for screens, SVG for print.

Everything is generated on your device. Nothing you type is uploaded.

When you would need this

Sharing WiFi with guests. A code taped inside a cupboard door is far better than reading out a 20-character password. Guests scan and connect without typing anything.

Putting a link on something physical. Posters, flyers, packaging, business cards, table tents, vehicle signage. Anywhere someone might want to reach a website but cannot click.

Sharing contact details. A vCard code on a business card or an email signature saves the recipient typing your details into their phone.

Event check-in and menus. Tickets, seating, digital menus — all standard uses now.

Linking physical to digital instructions. A code on equipment pointing at a manual, a code on a product pointing at setup instructions.

What most free QR generators do not tell you

Search for a QR generator and most of the top results have the same business model, and it is worth understanding before you print anything in quantity.

The code often does not point where you think. Rather than encoding your URL directly, many services encode a link to their domain, which then redirects to yours. This is presented as a feature — it lets them show you scan statistics, and lets you change the destination later. What it also means is that your code depends permanently on their infrastructure. If the service shuts down, gets acquired, or moves that feature behind a subscription, every code you printed stops working. This has happened repeatedly, sometimes to organisations with thousands of codes in the field.

"Free" frequently means free until you have committed. Some services offer dynamic codes free, then begin charging once you have printed them and cannot change them.

Scans are counted. A redirect means the service knows how many people scanned your code, roughly where they were and what device they used. That may be fine, or it may be information about your customers that you would rather not hand to a third party.

The codes generated here encode your content directly. There is no redirect, no tracking, no account, and nothing that can expire — the trade-off being that you cannot change the destination after printing, and there are no scan statistics. For most uses, permanence is the more valuable property. If you genuinely need a changeable destination, point the code at a short URL on a domain you control, so the redirect stays under your control rather than someone else's.

Tips for codes that actually scan

Test before you print. Scan the finished code with at least two different phones, ideally one iPhone and one Android, at the size it will actually appear. A code that works on screen can fail at business-card scale.

Mind the minimum size. As a rule of thumb, a code needs to be about a tenth of the distance it will be scanned from. Scanned from two metres, it wants to be around 20cm across. Codes on posters are routinely printed too small.

Keep the quiet zone. The blank margin is part of the specification — scanners use it to locate the code. Cropping it tight or placing the code against a busy background is one of the most common reasons a code fails.

Shorten your URLs. Fewer characters means a sparser grid, which scans faster and from further away. Strip tracking parameters, or use a short link on your own domain.

Keep dark on light. Scanners expect dark modules on a light field. Inverting it fails on many readers, and low-contrast colour schemes fail on most.

Print in vector. Send the SVG to your printer. A PNG scaled up in a layout program produces soft edges that reduce scan reliability, particularly at small sizes.

Limits and requirements

Capacity is finite and less than the maximum. Roughly 4,296 alphanumeric characters at the lowest correction level, but pushing anywhere near that produces a code too dense to scan comfortably. If content is too long for the chosen settings, the tool says so and suggests what to change.

Destinations cannot be changed after printing. These are static codes by design. Point at a URL you control if you might need to redirect it later.

WiFi codes do not work everywhere. Android and iOS both support WIFI-format codes through the camera, but some older devices and third-party scanner apps do not. Enterprise networks using 802.1X are not covered by the format.

Contact cards vary between phones. The vCard format is standard, but which fields a phone imports and how it labels them differs. Test with the devices your recipients are likely to use.

Logos are added separately. The tool generates the code; use an image editor to overlay a logo, and choose High error correction first.

Privacy: how this tool handles your data

Everything is generated in your browser, on your device. Nothing you type is transmitted, logged or stored.

This is not an abstract benefit here. Consider what people put into QR generators: WiFi network passwords, personal phone numbers, home addresses on contact cards, private event links. Generating a WiFi code on a typical online service means typing your network password into a form that posts it to a server you know nothing about, so that it can send back an image your own browser was perfectly capable of drawing.

You can verify the difference rather than trusting it. Open your browser's developer tools, switch to the Network tab, and generate a code — no request carries your content. Or load this page, disconnect from the internet, and keep generating. It still works, because everything needed is already running on your machine.

Frequently asked questions

Do these QR codes expire?

No, and they cannot. The code encodes your content directly, so there is no link to a service that might shut down or start charging. Many free QR generators quietly point the code at their own domain first and redirect from there — which lets them count scans, and means the code stops working if they go out of business or move it behind a paywall. Scanning a code made here shows your real destination, not ours.

Is the data I enter sent to your servers?

No. The code is generated in your browser on your own device. This matters most for WiFi and contact codes: generating a WiFi QR code elsewhere usually means typing your network password into a form that posts it to a stranger's server. Here it never leaves your machine, which you can confirm in your browser's Network tab.

Should I download PNG or SVG?

PNG for anything on a screen — websites, slides, social posts. SVG for anything printed. SVG is vector, so it scales to a poster or a business card with no loss, whereas a PNG enlarged past its pixel size becomes blurry and can fail to scan. If you are sending the file to a printer, send the SVG.

What is error correction and which level should I use?

QR codes store redundant data so they still scan when damaged. The four levels recover from roughly 7%, 15%, 25% and 30% of the code being obscured. Higher levels cost capacity, so the same content produces a denser grid. Use Medium for screens and High for anything printed, where scuffing, folding and poor lighting are realistic — and High is what makes it possible to place a small logo over the centre.

Can I put a logo in the middle?

Yes, using any image editor, but choose High error correction first and keep the logo under about 25% of the code's area. QR codes tolerate obstruction because of the redundancy described above, not because the centre is unused. Always test the finished code with more than one phone before printing it in quantity.

Why does my code look so dense and scan badly?

Too much data. QR codes grow in fixed steps as content lengthens, and a denser grid needs a better camera or a closer scan. Long URLs with tracking parameters are the usual culprit. Shortening the URL, or lowering the error correction level, produces a sparser and more reliable code.

Can I change the colours?

Yes, but keep strong contrast between foreground and background, and keep the foreground darker than the background. Scanners look for dark modules on a light field, so inverting that — light on dark — fails on many readers. Also keep the quiet zone: the blank margin around the code is functional, not decorative, and cropping it is a common reason codes stop scanning.

How much data can a QR code hold?

At the lowest error correction level, roughly 4,296 alphanumeric characters or 7,089 digits; at the highest, around a third of that. In practice you want far less than the maximum, because capacity and scannability pull in opposite directions. For a URL, aim for under 300 characters and prefer a short link.

Written and maintained by Shekhar PLast updated