Turn any text into a scannable QR code in seconds
Type or paste any text — a note, a coupon code, a phone number, a secret message — and this text QR code generator turns it into a scannable image instantly. No account needed, no watermark, completely free.
Everything happens in your browser. Your text is never uploaded to any server, so sensitive content stays private on your device.
How to use this text QR code generator
- Type your text into the input field above. It can be anything: a word, a sentence, a string of numbers, or a short paragraph.
- Adjust size and colours if you want. Pick a foreground and background colour, and drag the size slider to make the QR larger or smaller.
- Preview updates live — the QR code redraws as you type, so you always see the latest version.
- Download as PNG or SVG. PNG is great for documents, presentations, and printing. SVG scales perfectly to any size without going blurry.
- Test it with your phone camera before using it anywhere important. Any modern smartphone can scan a QR code with the built-in camera app.
QR codes generated here are free to use for personal or commercial purposes. They never expire — the data is encoded directly into the image, with no link, redirect, or third-party service involved.
Worked example
Say you are printing name badges for an event and want each badge to carry a scannable code that reveals the attendee's seat number. Your input might look like this:
SEAT-B12 | Hall 3 | Session: UX Design Workshop
The generator encodes that exact string into the QR pattern. When someone scans it, their phone displays:
SEAT-B12 | Hall 3 | Session: UX Design Workshop
Nothing more, nothing less — the raw text appears on screen. No app is required to scan it; the standard iOS or Android camera app handles it natively.
How to generate a text QR code in code
If you need to automate QR code creation — for example, generating hundreds of codes from a spreadsheet — here are the simplest ways to do it in two popular languages.
Python (using the qrcode library)
# pip install qrcode[pil]
import qrcode
img = qrcode.make('SEAT-B12 | Hall 3 | Session: UX Design Workshop')
img.save('badge_b12.png')
That single call encodes the text and saves a PNG. The qrcode library on PyPI also supports colour, error-correction level, and SVG output with a few extra lines.
JavaScript (Node.js, using qrcode npm package)
// npm install qrcode
const QRCode = require('qrcode');
QRCode.toFile(
'badge_b12.png',
'SEAT-B12 | Hall 3 | Session: UX Design Workshop',
{ width: 300 },
(err) => { if (err) throw err; console.log('Done'); }
);
The same package works in the browser too (it renders to a <canvas> element), which is exactly how this tool generates your QR code client-side.
How it works
A QR code (short for Quick Response code) is a 2-D barcode defined by the ISO/IEC 18004 standard. It stores data as a grid of black and white squares, plus built-in error-correction that lets it remain scannable even if part of the image is damaged or obscured.
For plain text, the generator encodes your string using the QR byte mode, which supports any UTF-8 characters. The tool uses the QR error-correction level M by default (recovers up to 15% damage), which is a good balance between data capacity and scan reliability.
Longer text produces a denser QR code — more squares, so harder to scan at small sizes. Keep text under ~300 characters for reliable scanning from a normal printing distance. The ISO standard supports up to 2,953 bytes in byte mode.
When to use a plain-text QR code — and when not to
| Use plain-text QR when… | Use a different type when… |
|---|---|
| You want to display a short message, code, or reference number on screen | The text is a website address — use a URL QR code so phones open the link automatically |
| You're encoding machine-readable data (serial numbers, ticket IDs, asset tags) | You're sharing Wi-Fi credentials — a WiFi QR code connects the phone in one tap |
| You need a simple, no-redirect, offline QR that never breaks | You're sharing contact details — a vCard QR code lets people save them directly to contacts |
| You want the scanned result to be raw text, not a clickable action | You need payment or WhatsApp deep-links — use the dedicated UPI or WhatsApp QR types |
Tips for the best scan results
- Keep contrast high. Black on white scans fastest. If you use custom colours, make sure the foreground is much darker than the background.
- Add quiet zone. Leave a small white border around the QR when placing it in a design. Crowding it against other elements hurts scan rates.
- Print at least 2 × 2 cm. Anything smaller gets unreliable at a normal arm-length scan distance.
- Use SVG for print. Download the SVG version so it stays razor-sharp at any size, from business cards to posters.
- Test before publishing. Always scan the saved file — not just the on-screen preview — with a real device.
Your text QR code is ready the moment you finish typing — hit the download button above and you're done.