Let information travel. Keep your data local.
QRGrain is a free static QR workspace. No account, ads, watermarks or behavioral tracking.
QRGrain generates QR codes, reads images, processes CSV batches and lays out labels in your browser. It suits individuals and small teams who want to work locally without an account.
Choose the right QR tool
Feature details checked on
Free QR code generator
- Input
- A URL, plain text or Wi-Fi credentials. Useful for sharing pages, guest Wi-Fi and item identification.
- Output
- PNG or SVG images with custom colors, a logo or image blending.
- Limits
- Static QR codes only: no scan analytics, hosted redirects or remote editing after generation.
Online QR code reader
- Input
- PNG, JPEG or WebP images and screenshots, including multiple QR codes in one image.
- Output
- Original text, URLs and CSV results, with options to generate new QR codes or print labels.
- Limits
- Up to 100 images per list; 10 MB and 40 megapixels per image. Images with a longest edge above 3,000 pixels are downscaled for decoding.
Batch QR code generator
- Input
- Multiple lines of text or a UTF-8 CSV up to 5 MB, with content, filename and label column mapping.
- Output
- A ZIP of PNG/SVG images and a results.csv manifest. Only verified items are included by default.
- Limits
- Up to 500 entries per batch and a 180 MB image memory budget. XLSX files are not read directly.
QR code label printing
- Input
- QR codes added from the generator or batch workspace, with paper and label dimensions in millimeters.
- Output
- The browser’s system print dialog, with Save as PDF where supported.
- Limits
- Uses your installed printer and driver. Select actual size / 100% and test one page first.
These limits describe the current version; practical capacity also depends on device memory and the browser. QR content is not saved persistently. Download what you need before closing or refreshing.
Is my content uploaded?
No. Text, URLs, Wi-Fi passwords, images, logos, CSV files, QR verification and ZIP creation are processed in your browser. Hosting serves the app files, not your content. Your inputs are not saved to long-term browser storage; refreshing or closing the page loses them. Downloaded files, the clipboard and printing are under your control.
Your language choice is remembered only in this browser. This does not save your QR content.
When can I use it offline?
Open the production site online once and wait for “Ready offline”. Pages, app code and the local reader must all finish caching. You can then reopen offline to create, read, batch, blend, export and lay out labels. Clearing browser storage requires another online visit. Development previews do not enable offline caching.
Do QR codes expire?
These are static QR codes: the image stores the content directly and QRGrain sets no expiry. You cannot edit a downloaded code remotely; changes need a new download. Whether an encoded URL opens depends on the destination website, and opening it usually requires internet access.
What does “Verified” mean?
QRGrain decodes the final image and compares it with the original content character by character. A pass means the local reader recovered the same content, not that every phone, lighting condition or print will work. Test on real phones and a small print run before production.
Why are some images unreadable?
Codes may be blurry, reflective, covered or too small. Use a clear, complete image. Images above 3000 px on their longest edge are downscaled; files over 40 megapixels or 10 MB must be reduced first. A list supports 100 images. Multiple codes are kept by position, including those with identical content.
How can I make image blends easier to scan?
Blending combines a local image with QR dots while preserving finder patterns and the quiet zone. Use a gentle blend, dark dots and a light background. If verification fails, enlarge the dots, reduce the blend or restore the basic style. Choose either blending or a center logo, not both.
How do CSV and batch downloads work?
Text mode creates one code per nonempty line and preserves spaces. Use CSV for multiline content, with a header row and mapped content, filename and label columns. A batch supports 500 items with a fixed style. ZIP defaults to verified images plus results.csv, without original content in the report. Formula-like CSV cells receive a protective text prefix; original values stay intact. At the 180 MB image memory budget, remaining rows report a resource limit. Export finished items and continue in smaller batches.
How do I print labels at the correct size?
Paper and labels use millimetres and share the same layout in preview and print. In the system dialog, choose the right paper, actual size / 100%, and turn off headers and footers. Save as PDF if available. The page can open system printing but cannot confirm physical output or install printer drivers.
Help
Check that you have permission to share your content and that it is accurate. The app does not visit encoded URLs automatically; only clicking “Open link” goes to the destination. Treat QR codes, CSV files and ZIPs containing passwords or private data as carefully as the original content.
Margins and error correction: why test a scan?
Keep a blank border at least four QR modules wide on every side, including when printing or cropping. DENSO WAVE calls this the quiet zone; it separates the code from surrounding content.
DENSO WAVE: QR dimensions and margins
Error correction describes recovery of codeword data, not a percentage of the image that you can safely cover. Logos, low contrast and print defects can still prevent scanning. Check the verification result before downloading and test with a real phone before printing.
DENSO WAVE: how QR error correction works
These references explain general QR principles. QRGrain’s limits describe its current implementation. A verified result means the final image was decoded locally and matched the input; it is not third-party certification.