Encode any plain text — notes, serial numbers, instructions — into a code that works with no internet and never expires. Generated entirely in your browser.
A text QR code stores literal characters — no link, no app hand-off. Scan it and the phone simply displays the text. Because nothing needs fetching, it works with no internet connection, forever: the message lives entirely inside the image.
That makes it the right type for things that aren't web pages: serial numbers and asset tags, coupon or voucher codes read at a till, equipment instructions, safety notes, scavenger-hunt clues, or a message on the back of a gift.
The QR standard tops out near 3,000 characters at the lowest error-correction level, but that's a theoretical ceiling — codes that full are a dot-soup few cameras read reliably. In practice, keep it to a few hundred characters and watch the scanability tag under the preview. Raising error correction makes the code tougher against damage but reduces capacity, so long text and high ECC pull in opposite directions. Unicode and emoji work fine (the text is encoded as UTF-8), though multi-byte characters spend capacity faster.
If your text is a web address, use the URL type instead — phones then offer a tap-to-open banner rather than just showing characters. Use the text type precisely when you don't want a link: the scanner sees exactly what you wrote, nothing more.
Technically almost 3,000 characters at the lowest error-correction level, but codes that full scan poorly. Keep it to a few hundred characters, watch the scanability tag under the preview, and print larger if you need more.
No. The text is stored inside the image itself, so it displays with no connection at all — nothing is fetched from a server.
Yes — the text is encoded as UTF-8, so accents, non-Latin scripts, and emoji all work. Multi-byte characters do consume capacity faster, so the density warning may appear sooner.
A URL code makes phones show a tap-to-open banner; a text code just displays the characters. If you're encoding a web address, use the URL type — use text when you want the content shown, not opened.
No. The code is generated entirely in your browser; the text never leaves your device unless you sign in and explicitly save the code.
A free QR code generator — no account required.
Every code is generated entirely in your browser. Nothing is uploaded.
Batch generate: have a whole list? Hit Batch in the toolbar to turn a CSV into a ZIP of codes — one per row — using your current style. "Scan me" frames aren't applied to batch output, so batch codes always export bare. Grab the sample CSV inside to see the format.
Recent codes: Reticle automatically keeps a history of your last 10 codes on this device. Hit Recent in the toolbar to browse and reload them.
Have a code already? Hit Scan in the toolbar to read one back — from an uploaded image or your live camera — and jump straight into editing it here.
Optional: sign in with your Google account to save and name codes, then reload them on any device.
Reticle v5f0d922
Generate many codes at once from a CSV, using your current URL settings (colors, shape, size). Each row becomes one QR; the ZIP downloads when it's done.
New to this? Download a sample CSV for this type — fill it in, then upload it below. Column headers must match the sample.
Note: your “Scan me” frame is not applied to batch codes — each code exports as a bare QR.