DIPAZE
Free tool

QR Code Generator

Make a QR code for a link, text, WiFi network, contact card, email, phone number or text message. Style it, add your logo if you like, and download it as a PNG or SVG. It runs in your browser and the codes never expire.

What should the code do?
We add https:// if you leave it out.

Style

128 to 2048. SVG scales to any size.
The blank border around the code. Scanners need one; keep it at 8 or more.
The file is read in your browser and never uploaded. A logo hides part of the code, so we switch to High error correction. Always test the scan.
Your QR code appears here

How to use this tool

  1. Choose a type and fill it inPick link, text, WiFi, contact, email, phone or SMS and enter the details. The code updates as you type.
  2. Style it and check the warningsPick colors and shapes. The tool warns you about long content, low contrast and logos.
  3. Download and testDownload a PNG or SVG, then scan the exact file with two different phones before you print or publish it.

What each type puts inside the code

A QR code is just a way to store a short piece of text. What the phone does with it depends on how that text starts. These are the formats this tool writes:

  • Link: the address itself, for example https://example.com. The phone offers to open it.
  • WiFi: WIFI:T:WPA;S:NetworkName;P:password;H:false;;. The characters \ ; , : " in the name or password are escaped with a backslash so they are not read as separators.
  • Contact: a vCard 3.0 card (BEGIN:VCARD to END:VCARD) with lines ending in CRLF, which is what the format requires.
  • Email: mailto:name@example.com?subject=...&body=... with the subject and message percent-encoded.
  • Phone: tel:+15551234567. Spaces and punctuation are removed.
  • SMS: smsto:+15551234567:Your message. Support for pre-filled text varies by phone and scanner app, so test it on both iPhone and Android.

Scanner apps decide what to show. A WiFi or contact code may need a tap to confirm on the phone, and older scanners may show the raw text instead.

Static vs dynamic QR codes

This tool makes static QR codes. Your content is written directly into the pattern. That has real advantages and real limits.

Static (this tool)

Content is inside the code

  • Never expires and never needs a subscription
  • Works offline for WiFi, text, contacts and phone numbers
  • No scan counts and no tracking
  • You cannot change the destination after printing

Dynamic (provider service)

Content is a redirect link on someone else's server

  • You can change where it points after printing
  • Scan counts are possible
  • Depends on the provider staying online; many charge a subscription and stop the redirect if you stop paying
  • The pattern is simpler, but the redirect adds a middleman

If you will print a code on something permanent, such as a sign, a vehicle or a menu, point it at a page you control (your own website address) so you can change what that page shows without reprinting. For link tracking without a dynamic code, tag the URL with the UTM Link Builder and read the results in your website analytics.

Making a code that scans

Contrast

The tool computes the WCAG contrast ratio between the code color and the background: (L1 + 0.05) / (L2 + 0.05), where L is each color's relative luminance, 1 for white and 0 for black. Black on white is 21:1. The 4:1 warning threshold is practical advice, not a rule from the QR standard: scanners need a clear difference in lightness between the squares and the background, and anything near or below 4:1 gets unreliable in poor light or on glossy print. A dark code on a light background is the safest. Colors with similar brightness (red on green, for example) can fail even if they look different to you.

Size and density

The more data, the more and smaller the squares. A short link makes a simple code that scans from far away; a long paragraph, a full vCard or a long link with tracking parameters makes a dense one that needs to be printed larger and held closer. As a rule of thumb, a code is easiest to scan from about ten times its width. A maximum of about 1,273 to 2,953 bytes fits in a QR code depending on the error correction level, and the tool warns when your content gets long and blocks it when it cannot fit. Shorten long links before you encode them.

Error correction and logos

Error correction adds redundant data so a damaged or covered code still reads. The standard levels recover roughly 7%, 15%, 25% and 30% of the code. A center logo covers part of the pattern, so use High and keep the logo small. Every logo and style change is a risk, so scan the finished file before printing.

Quiet zone

Leave a blank border around the code. Without it, scanners cannot tell where the code starts. Do not place text or images right up against it.

Frequently asked questions

Do these QR codes expire?
No. This tool makes static QR codes: the content (your link, WiFi details or contact card) is stored inside the pattern itself. There is no server in the middle, so nothing can expire, be switched off or run out of scans. The code works for as long as the thing it points to works.
What is the difference between a static and a dynamic QR code?
A static code contains your content directly. A dynamic code contains a short redirect link that belongs to the QR provider, and the provider sends the scan on to your real destination. Dynamic codes let you change the destination later and count scans, but they depend on the provider's service, and many providers charge a subscription and stop the redirect if you stop paying. This tool only makes static codes and does not track scans.
Can I track how many people scan my code?
Not with a static code, because nothing passes through a server. A practical workaround for links is to add campaign tags to the URL with the UTM Link Builder, then read the visits in your website analytics under that campaign name.
Which error correction level should I choose?
Medium is a good default. Higher levels add redundancy so a code still scans if it is dirty, scuffed or partly covered, at the cost of a denser pattern. Use High if you put a logo in the middle. Use Low only for short content that will be displayed large and clean, such as on a screen.
Why will my QR code not scan?
The usual causes are low contrast between the code and its background, a printed size that is too small for the amount of data, a logo that covers too much, a quiet margin that is too thin, or a light code on a dark background (inverted), which some scanner apps cannot read. Test the exact file you print with at least two different phones.
Is it safe to put my WiFi password in a QR code?
The password is stored in the code in readable form, so anyone who can scan the code can join your network. Share it only where you would be happy to share the password. The code is created in your browser and the password is not sent to us.
Should I download PNG or SVG?
SVG is a vector format, so it stays sharp at any size and is best for signs, vehicle wraps and print shops. PNG is a pixel image that is easiest to paste into documents, emails and websites; download it at a large pixel size if it will be printed.

More free tools