Web Development
QR Code Generator / Reader
Generate a QR code from text or a URL, or read the content of an uploaded QR code image.
The QR code will appear here.
A QR code is a two-dimensional barcode that encodes text, a URL, or other data so a camera can read it instantly. This tool generates a QR code from text you type and, the other way around, reads the content out of an uploaded image — all in the browser.
How to use it
- Generate: type text or a URL and the QR code appears immediately, ready to download as an image.
- Read: upload an image containing a QR code and the tool decodes and displays its content.
- Raise the error-correction level if the code will be printed small or placed on an uneven surface.
Common uses
- A QR code on a business card, poster, or package that links to a website or contact page.
- Sharing a Wi-Fi password with guests without typing it manually (enter a WIFI:T:WPA;S:name;P:password;; string to encode it).
- Checking what a suspicious QR code actually contains before scanning it with a phone and opening the link.
Things to keep in mind
A higher error-correction level (H instead of L) makes the code more resistant to damage but also denser — it holds less data at the same physical size.
A QR code doesn't hide its content — anyone can read it the same way you did, so never encode passwords or private data in one.
Article about this tool: QR codes: how a link fits inside a square of pixels
Frequently asked questions
What does the error correction level (L/M/Q/H) change?
Higher levels, up to H at about 30%, keep the QR code readable even if part of it is damaged or obscured, but they also reduce how much data fits at a given size — L at about 7% fits the most data but tolerates the least damage.
Why can't it read my QR code image?
Reading uses the jsqr library to decode the image locally; it can fail on blurry, angled, or glare-heavy photos, so a clear, straight-on shot with good contrast works best.
Is my data or image uploaded anywhere?
No, both generating and reading QR codes happen entirely in your browser using JavaScript libraries — nothing leaves your device.
Why does how much data a QR code can hold depend on the type of content?
A QR code supports several encoding modes — numeric, alphanumeric, and byte — and each uses a different number of bits per character; numeric mode (digits only) is the most compact, while byte mode for arbitrary text (like non-Latin scripts) takes up the most space, so it fits fewer characters into a code of the same size.
What's the maximum number of characters a QR code can hold?
It depends on the code's version and error correction level — the largest version (40) with the lowest correction level L can hold up to 7,089 digits or 4,296 alphanumeric characters, but in practice, reliable scanning rarely uses more than a few hundred characters.