How to Make a QR Code (Free Generator, No Signup)
A QR code is a square 2D barcode any phone camera can read. It can hold a link, plain text, Wi-Fi credentials, or a contact card. This guide makes one in under a minute and explains the single setting that decides whether it actually scans.
Make one now: open the free generator, choose QR Code, and type your data — no signup.
Step 1 — Enter what the code should contain
- A link: paste the full URL, including
https://. - Plain text: any message, a serial number, a note.
- Wi-Fi / contact: encode the standard string your use case expects (e.g. a
WIFI:orvCardpayload).
Keep it short. The more data a QR code holds, the denser it gets, and dense codes need to be printed larger to scan reliably.
Step 2 — Pick error correction (the setting that matters)
QR codes have four error-correction levels. Higher levels add redundancy, so the code still scans when it's smudged, partly covered, or has a logo on top — at the cost of a denser code.
| Level | Recovers | Use it for | |---|---|---| | L | ~7% | clean screens, max data in min space | | M | ~15% | the sensible default | | Q | ~25% | print, light wear | | H | ~30% | printed labels, or when you overlay a logo |
If you're putting the code on something physical, use Q or H. If you want to drop a logo in the middle, use H — that's what makes the overlay survivable.
Step 3 — Size and quiet zone
- Scale sets how many pixels each module is — bigger scans from farther away.
- Quiet zone (the blank border) is not optional. A QR code with no margin often won't scan. Keep at least a few modules of clear space around it.
Step 4 — Color and contrast
Dark code on a light background scans best. If you brand it with color, keep high contrast and don't invert it (light code on dark trips up many scanners). For labels, a transparent background lets the code sit on your design.
Step 5 — Download and test on real phones
Export the PNG (or SVG for print), then scan it with more than one phone before you commit to a print run. The screen preview is not a scan test.
Generate QR codes from your app (API)
bash
curl -X POST https://YOUR-DOMAIN/api/qr \
-H "Content-Type: application/json" \
-d '{ "payload": "https://example.com", "errorCorrection": "h", "scale": 6 }'
The response is a base64 PNG plus metadata. See the API docs for parameters and rate limits.
Common questions
- Do QR codes expire? A static QR code (which this tool makes) encodes your data directly, so it never expires. "Dynamic" QR codes that redirect through a tracking URL are a different product and can expire if that service stops.
- Can I add a logo? Yes — generate at error-correction H, then place a small logo over the center. Test that it still scans.
- Why won't my QR code scan? Usually low contrast, no quiet zone, printed too small for its density, or too much data at a low error-correction level.
- What's the smallest I can print it? It depends on data + scale; as a rule, more data means a larger minimum print size. Test before printing.
One thing we don't do
This is a tool for lawful QR and barcode generation and validation. It does not produce official identity-document or credential payloads.
Make your QR code
Open the free generator → — choose QR Code, set error correction to match where it'll live, and download a code that scans the first time.