How to Generate QR Codes Offline — No Internet Required
Methods for creating QR codes without an internet connection. Desktop tools, browser-based generators, and development libraries for air-gapped environments.
Most QR code generators are web apps. You type your data into a website, it generates the code, and you download it. That works fine 90% of the time. But there are real reasons you might need to generate QR codes without sending your data to someone else's server.
Why Generate QR Codes Offline?
- Privacy — you're encoding sensitive information (WiFi passwords, internal URLs, access credentials) and don't want it touching a third-party server
- Air-gapped networks — military, government, healthcare, and financial environments that have no internet access by policy
- No internet available — you're at a venue, on a plane, or in a location with no connectivity
- Speed — generating thousands of codes locally is faster than hitting an API for each one
- Cost — no API rate limits or subscription fees
Method 1: QRMax PWA (Progressive Web App)
QRMax works as a PWA, meaning you can load it once while online, and the QR generation engine caches locally. After that, basic QR code generation works offline. The encoding happens in your browser — your data never leaves your device even when online.To set it up:
- Visit QRMax while online
- Your browser caches the application
- Disconnect from the internet
- Generate QR codes as normal
This is the simplest path for most people.
Method 2: Python with qrcode Library
If you write code (or are willing to copy-paste), Python's qrcode library works completely offline after installation.
import qrcode
qr = qrcode.QRCode(
version=1,
error_correction=qrcode.constants.ERROR_CORRECT_M,
box_size=10,
border=4,
)
qr.add_data('https://example.com')
qr.make(fit=True)
img = qr.make_image(fill_color="black", back_color="white")
img.save("my_qr_code.png")
Install it while you have internet: pip install qrcode[pil]. After that, the library works entirely offline.
For bulk generation, loop through a CSV file and generate one code per row. I've used this approach to generate 15,000 unique QR codes for event badges in under 3 minutes on a standard laptop.
Method 3: JavaScript Libraries (Node.js or Browser)
The qrcode npm package runs in Node.js without any network calls:
const QRCode = require('qrcode');
QRCode.toFile('./output.png', 'https://example.com', {
width: 300,
margin: 2,
color: { dark: '#000000', light: '#ffffff' }
});
For browser-based offline generation, qrcode-generator is a zero-dependency library that encodes QR codes entirely in client-side JavaScript. Bundle it into a local HTML file and you have a fully offline QR generator.
Method 4: Desktop Applications
Several desktop apps generate QR codes without internet:
| Application | Platform | License | Notes |
|---|---|---|---|
| QR Code Studio | Windows | Free | GUI-based, supports batch generation |
| Zint Barcode Studio | Windows, Linux | Open source | Supports 50+ barcode types including QR |
| QReate | macOS | Free | Simple macOS-native QR generator |
| LibreOffice + Zint extension | Cross-platform | Open source | Generate QR codes inside documents |
Method 5: Command-Line Tools
For scripting and automation:
# Using qrencode (Linux/macOS, installable via apt/brew)
qrencode -o output.png -s 10 'https://example.com'
# Using zint
zint -b 58 -d 'https://example.com' -o output.svg
These are ideal for automated pipelines — generating QR codes as part of a build process, document generation, or label printing workflow.
Security Considerations
When you use an online QR code generator, consider what you're sending:
- WiFi passwords — your network credentials are being transmitted to a server
- Internal URLs — you're revealing your internal infrastructure
- vCard data — personal contact information
- Authentication tokens — if you're encoding access credentials, this is a security incident waiting to happen
When Online Is Fine
Let's be practical. If you're encoding a public URL for a marketing flyer, the privacy concern is zero. The URL is public anyway. Use QRMax online and save yourself the setup time.
Offline generation matters when the data is sensitive or the environment demands it. For everything else, the web is easier.
Related Tools
- QR Code Generator — browser-based generation with PWA offline support
- Bulk QR Generator — batch codes for large-scale needs
- WiFi QR Code — encode network credentials securely