What You Need Before You Start
All you need is a web browser, the destination you want to encode (a URL, WiFi password, phone number, etc.), and a smartphone for testing. No account, no software download, no credit card required.
Step 1: Choose Your QR Code Data Type
Your first decision is what should happen when someone scans your code. Each data type triggers a different action on the scanner's phone:
| Data Type | What It Does |
|---|---|
| URL | Opens a website link |
| WiFi | Connects to a wireless network automatically |
| vCard | Saves contact details to the phone's address book |
| Opens a pre-addressed email compose window | |
| SMS | Opens a pre-filled text message |
| Phone | Initiates a phone call |
| Text | Displays a plain text message (no internet needed) |
| Bitcoin | Opens a Bitcoin payment request |
Pick based on what you want the scanner to do, not what you want the code to look like.
Step 2: Enter Your Information
Type or paste your destination data into the generator field. Be exact - static QR codes cannot be changed after you save them.
- URL codes: paste the full address including
https:// - WiFi codes: enter the exact SSID (network name) and password - both are case-sensitive
- vCard codes: fill every field you want to share (name, phone number, email, company, website)
One common mistake: copying a URL from the browser address bar with tracking parameters appended (?utm_source=...). If you want a clean code, strip the tracking parameters first and encode only the core destination URL.
Step 3: Customise Your Design (Optional)
You can leave the code in standard black and white, or customise it to match your brand:
- Colour: Change foreground and background colours. Always maintain high contrast - dark pattern on a light background. Never reverse this.
- Logo: Upload your company logo to appear in the centre. QR codes use Reed-Solomon error correction, so covering up to 30% of the centre area doesn't break scanning.
- Frame: Add a call-to-action around the code ("Scan to Connect", "Scan for Menu").
- Corner style: Round or square corners are a purely aesthetic choice with no effect on scanability.
Step 4: Test Before You Download
Before saving, scan the live preview with both of these:
- iPhone - use the native Camera app (no third-party app needed on iOS 11+)
- Android phone - use Google Lens or the native camera (most models since Android 9)
If both scan correctly, you're ready. Skipping this step is the most common and most costly mistake - reprinting a batch of menus or business cards because the URL was wrong costs far more than 30 seconds of testing.
Step 5: Choose Your Download Format
Two formats are available. Choose based on where the code will appear:
- PNG: A pixel-based image. Use for digital sharing - websites, email signatures, social media, presentations.
- SVG: A scalable vector file. Use for printing - business cards, menus, posters, billboards. SVG files don't pixelate at any size.
Rule: If it will ever be printed, download SVG. If it's digital-only, PNG is fine.
How Do You Make a QR Code That Doesn't Expire?
Use a static QR code generator. Static codes store your data directly inside the code pattern - there's no server or subscription to maintain. A static QR code created today will still scan reliably in 2035.
Dynamic codes (offered by paid services) redirect through a server and can be updated, but stop working if you cancel the subscription. For most use cases - business cards, menus, product labels - static is the better choice. See our static vs dynamic QR code comparison for the full breakdown.
What Size Should You Print Your QR Code?
| Use Case | Minimum Size |
|---|---|
| Business card | 2 cm × 2 cm |
| Flyer / A5 poster | 3 cm × 3 cm |
| Restaurant table tent | 5 cm × 5 cm |
| Window / door sign | 10 cm × 10 cm |
| Large format / billboard | 20 cm × 20 cm+ |
The rule of thumb: your code should be at least 10% of the scanning distance. A code on a table scanned from 50 cm away needs to be at least 5 cm. See our full QR code print size guide for detailed recommendations.
Common Mistakes to Avoid
- Printing without testing: Always scan on two phones before any print run
- Low contrast colours: A light grey pattern on white won't scan reliably
- Encoding a redirect URL: Encode your final destination, not a URL shortener that chains to something else
- Making the code too small: Anything under 2 cm is unreliable on most phones
- Missing the https:// prefix: Without it, scanners may open the URL as a search query instead of a link
You now have every step. Choose your data type, enter the destination, test on two phones, then download the right format for your use case. Open the free generator - no account, no trial, no expiry.