194 tools

Web Developer Tools · · 4 min read

How to Make a QR Code for Free (Links, Wi-Fi, Contacts and More)

Make free QR codes that never expire — links, Wi-Fi, email, SMS and contacts — plus the size, contrast and error-correction settings that scan reliably.

To make a QR code, open a QR code generator such as the Toolbench QR Code Generator, paste a link (or pick a template like Wi-Fi or vCard), and download the code as a PNG or SVG. The code is generated in your browser, and because it's a static QR code with the content encoded directly in the pattern, it never expires and doesn't depend on any redirect service.

This guide covers what you can put in a QR code, the settings that matter for printing, and how to make sure every code actually scans.

Static vs. dynamic QR codes

Many "free" QR services create dynamic codes: the pattern contains a short link to their server, which then redirects to your page. That lets you change the destination later, but if the service shuts down or starts charging, every printed code breaks.

A static code stores your content directly. Nothing sits in between, so it works forever. The trade-off is that you can't change the destination after printing — so it's worth linking to a page you control and keep stable.

How to create a QR code with Toolbench

  1. Open the QR Code Generator.
  2. Type a link or text, or click a template: URL, Wi-Fi, Email, Phone, SMS or vCard. Replace the example details with yours.
  3. Set the size in pixels, the quiet zone (the blank border), and the error correction level.
  4. Pick foreground and background colours if you want to match your brand.
  5. Click ↓ PNG for web or quick use, ↓ SVG for print, or Copy SVG to paste into a design tool.

The preview shows the code's grid size (for example "33 × 33 modules") so you can see how dense it is.

What you can put in a QR code

Template What happens when scanned Format
URL Opens the web page https://example.com
Wi-Fi Offers to join the network WIFI:T:WPA;S:NetworkName;P:password;;
Email Opens a new email mailto:hello@example.com?subject=Hello
Phone Offers to call the number tel:+15555550123
SMS Opens a pre-filled text message SMSTO:+15555550123:Hello
vCard Offers to save a contact BEGIN:VCARD … END:VCARD

Plain text works too — the phone just displays it.

Choosing the right error correction level

QR codes contain redundant data so they still scan when part of the code is dirty, scratched or covered. More redundancy means a denser code.

Level Can recover from Best for
L (Low) ~7% damage Clean screens, very long content
M (Medium) ~15% damage Most uses — the default
Q (Quartile) ~25% damage Small prints, rough surfaces
H (High) ~30% damage Codes with a logo over the centre, outdoor signage

Printing tips that prevent scan failures

  • Keep strong contrast. Dark code on a light background is the rule. Light-on-dark and low-contrast brand colours cause more failures than anything else.
  • Leave the quiet zone. The blank border (4 modules is the standard) lets scanners find the code. Don't crop it or place text right against it.
  • Size for distance. A common rule of thumb is that the code's width should be at least a tenth of the scanning distance — around 2 cm (0.8 in) for a business card, much bigger for a poster across a room.
  • Shorter content, simpler code. Long URLs produce dense codes that are harder to scan when printed small. Link to a short, stable URL instead.
  • Use SVG for print. SVG is vector, so it stays sharp at any size.
  • Test before you print. Scan it with two different phones, from the real distance, in the real lighting.

Tracking scans without a dynamic code

Because static codes don't pass through a redirect service, they don't count scans on their own. Add UTM parameters to your link with the UTM Builder — for example utm_source=poster&utm_medium=qr — and scans will show up in your analytics as a separate source.

Frequently asked questions

Do QR codes from this generator expire?

No. They're static codes with your content encoded directly in the pattern. They'll keep working as long as the destination (like your web page) exists.

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

Not with a static code. If you might need to change the destination later, point the code at a page on your own site that you can update or redirect.

Can I put a logo in the middle of a QR code?

Yes, as long as you set error correction to H (High) and keep the logo small — well under 30% of the code's area — then test that it still scans.

Is my data sent anywhere when I create a QR code?

No. The code is drawn in your browser. The only download is the open-source QR library itself, fetched from a CDN the first time you use the tool.

How do I read a QR code from a screenshot?

Use the QR Code Decoder — drop in an image or screenshot and it shows the encoded content.

More guides

All guides →