Free tool/Campaigns & links

Free QR code generator

Make a QR code for a link, Wi-Fi network, email, text message or contact card. Pick your colours and download a crisp PNG or SVG. No sign-up, no watermark, and it never expires.

  • Free forever
  • No watermark
  • Never expires
  • PNG & SVG

Content

What should the code open when someone scans it?

We add https:// if you leave it out. Test the link before you print.

Design

Colours, damage tolerance and border

Error correction

The usual default. Up to 15% can be damaged. Good for most print and screens.

4 modules

The blank border scanners use to find the code. The QR spec calls for 4 modules.

PNG download size

SVG is vector, so it stays sharp at any size.

Preview

Updates as you type

Your QR code appears here

Fill in the content on the left. The code updates live.

No watermark, no expiry. It's a static code made in your browser, so nothing is sent to a server and it keeps working forever.

Encoded content

Nothing yet

Want to count scans?

A QR code can't count scans by itself: it just opens what it encodes. Point it at a short tracked link instead, and every scan shows up as a click you can count.

Create a tracked link

Want scans in Google Analytics? Add UTM tags first with theUTM builder so scans show up in GA4 as their own campaign.

How it works

QR code generator in 3 steps

  1. 1

    Choose what it opens

    A link, plain text, an email draft, a phone call, a text message, a Wi-Fi network or a contact card.

  2. 2

    Style it and check it

    Set your colours, error correction and border. Live checks flag low contrast, inverted colours and dense codes before you print.

  3. 3

    Download and test

    Grab a PNG up to 2048 px or a vector SVG, then scan it with two different phones before it goes to print.

What you get

A QR code generator without the catches

Many free QR generators route scans through their own redirect and stop working when a trial ends. These codes contain your content directly, so they keep working.

Seven content types

URL, text, email, phone, SMS, Wi-Fi and vCard contact, each encoded in the format iPhone and Android cameras recognise.

Correct escaping

Wi-Fi names with semicolons or quotes, contacts with commas, and email subjects with ampersands are escaped properly so they scan exactly as typed.

Print-ready exports

PNG at 512, 1024 or 2048 px, rendered at full size rather than upscaled, plus a vector SVG for any size.

Brand colours with guardrails

Any foreground and background colour, with warnings for low contrast, inverted colours and a too-small quiet zone.

See exactly what's encoded

The raw content inside the code is shown in full, so you can check the link or Wi-Fi details before you print thousands of copies.

Private by design

Everything is generated in your browser. Your Wi-Fi password, links and contact details are never sent to a server.

Guide

How to make a QR code that always scans

A QR code is a grid of dark and light squares, called modules, that stores a short piece of text. Phones read that text and act on it: open a link, join a Wi-Fi network, start an email. Getting a code that scans every time comes down to a few choices, most of which this tool handles for you.

Static vs dynamic QR codes

The codes made here are static: your content is stored in the pattern itself. They never expire and don't depend on any service staying online, but they can't be edited after printing and they can't count scans.

"Dynamic" QR codes sold by other services are static codes that point at the service's own short link. You can get the same flexibility yourself: encode a short link you control, and change its destination whenever you need. The Atlis link tracker gives you short links with click counts, so each scan is counted as a click.

Error correction levels

QR codes include redundant data, so a code still scans when part of it is dirty, scratched or covered. More redundancy means more modules for the same content.

LevelRecovers up toUse it for
LAbout 7%Screens and clean print where a smaller code matters
MAbout 15%The sensible default for most uses
QAbout 25%Packaging, stickers and anything handled a lot
HAbout 30%Outdoor signs and rough surfaces

Keep the quiet zone

The QR specification calls for a blank border of 4 modules on every side. Scanners use it to find where the code starts. Most phones cope with 2, but a code printed flush against text or a busy photo often fails. Keep the default of 4 unless space is really tight.

Size it for the distance

For anything scanned up close, such as a business card or a product label, print the code at least 2 cm (0.8 in) wide. For signs and posters, a common rule of thumb is a 10:1 ratio of scanning distance to code width: a code read from 3 metres away should be about 30 cm wide. Longer content makes more, smaller modules, so shorten long links before you encode them. For large print, use the SVG so the edges stay sharp.

Contrast and colour

Scanners look for dark modules on a light background. Brand colours are fine as long as the foreground is clearly darker. Aim for a contrast ratio of at least 4:1, and avoid inverted codes (light on dark), which some scanners and older phones can't read. Plain white behind the code is the safest choice on a coloured design.

Test before you print

  1. Scan the downloaded file with the camera app on at least one iPhone and one Android phone.
  2. Check the result is exactly right: the full link, the Wi-Fi network joins, the contact saves with the right name.
  3. Print one proof at the final size and scan it from the distance people will really be standing.

Attribute scans with UTM parameters

Visits from a QR code usually arrive with no referrer, so analytics tools record them as direct traffic. Add UTM parameters to the link before you make the code, for example ?utm_source=conference&utm_medium=qr&utm_campaign=spring_launch, and the scans show up in GA4 under that campaign. The UTM builder builds and checks those links, and a separate campaign for each placement tells you which poster or flyer actually works.

FAQ

Frequently asked questions

Can't find your answer? Read the Atlis docs.

Is this QR code generator really free, with no sign-up?

Yes. There's no account, no watermark and no limit on how many codes you make. The code is generated in your browser and the content is encoded directly into the image, so it doesn't depend on our servers and never expires.

Do these QR codes expire?

No. These are static QR codes: the link or text is stored in the pattern itself. As long as the destination (for example your web page) still exists, the code keeps working. Codes only 'expire' on services that route scans through their own redirect and switch it off.

Can I change where a QR code points after printing it?

Not with a static code, because the destination is part of the pattern. If you may need to change it later, encode a short link you control instead and update the short link's destination. The printed code stays the same.

How do I make a Wi-Fi QR code?

Choose Wi-Fi, enter the network name and password, and pick the security type (WPA/WPA2 for almost every modern network). Most iPhone and Android cameras offer to join the network when they scan it. Special characters in the name or password are escaped for you.

Can a QR code track how many people scanned it?

Not on its own. A QR code is just an image that tells the phone what to open, so nothing is counted. To count scans, point the code at a tracked short link, or add UTM parameters to the URL so the visits show up as their own campaign in Google Analytics.

PNG or SVG: which should I download?

SVG for print and design tools, because it's vector and stays sharp at any size. PNG for slides, documents, websites and social posts. The 2048 px PNG prints sharp up to about 17 cm (6.8 in) wide at 300 dpi.

What size should a printed QR code be?

At least 2 cm (0.8 in) wide for something scanned up close, like a business card. For longer distances, a common rule of thumb is a code width of about one tenth of the scanning distance, so a poster read from 2 metres away needs a code around 20 cm wide.

Can I use my brand colours?

Yes, as long as the foreground stays clearly darker than the background. The tool warns you when contrast drops below about 4:1 or when the colours are inverted, because many scanners struggle with either.

Atlis

Your QR code brought them in. Now keep them.

Atlis tracks what each new user does after signup and sends lifecycle emails automatically: onboarding nudges, re-engagement, churn recovery and failed-payment recovery for Stripe and Paddle.

Start free

Free plan · No credit card · 10-minute setup