Generate QR codes on Mac without uploading links
QR codes are small, but the links inside them can be private. Generate the code locally when the URL is a launch draft, customer note, demo table link, or internal route.
The short answer: use an offline QR code generator on Mac when the text or URL should not be pasted into a random website. Generate from the final link, export a PNG at the size you actually need, scan it with a phone, and keep a typed fallback URL when the code will be printed or shown at a demo station.
TeenyTool is my app, so the bias is clear. Its QR Code Generator is useful when the QR input belongs near your other local utilities. The app is a $14.99 lifetime Mac menu bar toolbox with a 3-day trial, and the homepage lists QR Code Generator among its 75+ tools.
This article is the TeenyTool spoke for the TeenyApps Mac demo station checklist for QR codes and displays. If the same station uses an external monitor, pair it with the TeenyDisplay guide to fix external monitor resolution that is too small.
Offline QR code decision table
| QR input | Use local generation? | Reason |
|---|---|---|
| Public homepage or public help article | Optional | The link is already public. Use a trusted online tool if the workflow is faster. |
| Launch draft, pre-release route, or campaign URL | Yes | The link may expose timing, route names, or tracking values before launch. |
| Customer support note or account-specific link | Yes | Customer IDs and private paths should stay off third-party QR sites. |
| Demo table signup link | Usually | You can generate, export, scan, and keep the fallback URL in one local pass. |
| Plain text Wi-Fi note or internal instruction | Yes | The text may not belong on a website even if it is not a URL. |
01Use the final input
QR codes make stale links look finished. Before generating the code, open the destination in a clean browser session. Confirm the route is final, the page does not require your private login session, and any campaign parameters are deliberate.
If the QR code contains plain text, paste the final text into a scratch note first. Watch for accidental signatures, internal names, copied Markdown, and line breaks that should not be part of the code.
When the input is a private link, keep it local. TeenyTool's normal network exceptions are license validation, update checks, IP Address, and DNS Lookup. QR generation is not one of those network tools.
02Generate the QR code locally
The TeenyTool source uses Apple's Core Image QR generator. The QR view takes text or a URL, waits briefly while you type, creates PNG data off the main actor, and updates the preview only if the latest render has not been canceled.
That behavior matters for practical use. You can edit a link, see the preview update, and avoid an older render overwriting the newer one after rapid changes. It is a small implementation detail, but it prevents the worst QR bug: exporting the wrong code because a previous input was still rendering.
The tool uses QR error correction level M, which is a balanced default for normal text and links. It is not a design studio for branded QR codes or logo overlays. If you need heavy styling, use a dedicated design workflow after you verify the plain code.
03Pick a PNG size for the real surface
TeenyTool offers Small, Medium, and Large QR sizes, mapped in source to 256, 512, and 1024 pixels. The best choice depends on where the code will be used.
| Output | Start with | Check |
|---|---|---|
| Internal note or support doc | 256 px | Scan from the displayed document, not just the preview. |
| Slide, small sign, or demo table card | 512 px | Scan from the actual viewing distance. |
| Printed sign or image that may be scaled | 1024 px | Export once, place it in the design, then scan the final version. |
Do not judge scan quality inside the app preview alone. The final surface is what matters: the slide, PDF, printed card, website, or monitor.
04Copy or save deliberately
TeenyTool supports both quick copy and PNG download. Copy Image writes the generated image to the macOS pasteboard. Download PNG opens a save panel, defaults the filename to qrcode.png, and writes PNG data to the chosen location.
For a one-off note, copying is fine. For a demo station, sign, printed card, or launch checklist, save the PNG with a meaningful name: demo-station-signup-2026-06-29.png is better than a pile of files named qrcode.png.
If the link changes after you export, regenerate the image and delete the stale file. Do not keep both versions in the same handoff folder.
05Scan before you share
Scan the QR code with a phone before printing, uploading, or sending it. Use the final surface whenever possible. A QR code can scan in the app preview and fail after compression, scaling, low contrast, glare, or a poor print.
For a demo table, keep a typed fallback URL beside the code. QR codes are convenient, not universal. Bad lighting, low camera focus, a cracked screen, or a cautious visitor can make the fallback path the difference between a lead and a shrug.
If the QR code belongs to a page with display instructions, use the broader TeenyApps demo-station checklist linked above. It covers the external monitor and visitor-distance reading pass.
Five-minute offline QR workflow
- Open the destination in a clean browser session.
- Copy the final URL or final text, not a draft value.
- Generate the QR code locally in TeenyTool.
- Choose 256, 512, or 1024 px based on the final surface.
- Copy the image for a quick note or save a named PNG for reuse.
- Scan the code from the final surface with a phone.
- Add a typed fallback URL when the code will be public, printed, or displayed.
Sources checked
- TeenyTool claims were checked against the TeenyTool homepage and local Swift source for QR Code Generator, Core Image QR generation, 256/512/1024 px sizes, pasteboard copy, PNG saving, trial length, price, and network exceptions.
- Apple Developer Documentation: CIQRCodeGenerator.
- Apple Developer Documentation: NSPasteboard.
- Apple Developer Documentation: NSSavePanel.
FAQ
Can I generate QR codes offline on Mac?
Yes. A local Mac QR generator can create a QR image from text or a URL without sending that input to a website.
What QR code size should I export?
Use a smaller PNG for notes and internal docs, a medium PNG for slides or small signs, and a larger PNG when the code may be printed or scaled up.
When is an online QR generator fine?
An online generator is fine for public, non-sensitive links when you trust the service. Keep pre-launch, private, customer, internal, or token-like links local.
Create QR codes without handing private links to a website.
teenytool includes QR Code Generator plus local utilities for URLs, JSON, Base64, text cleanup, images, PDFs, colors, and developer snippets.