Inventory and asset tags
One code per asset ID, printed onto labels straight from the zip.
Bulk Generation
Upload a CSV file and turn every row into its own QR code — then download the whole batch as a single zip of PNG and SVG files. Free, no account required.
Loading QR generator
Create a spreadsheet with two columns: Name and Content. Name becomes the file name of each QR code; Content is what the code encodes. A sample CSV is available in the tool.
Drop the CSV into the generator. Each row is parsed into a pending QR code.
The preview table flags empty rows, invalid content, and duplicate rows before anything is generated, so bad data never reaches print.
One click renders every code with your chosen style and downloads a zip containing a PNG and an SVG for each row.
The CSV needs a header row with a Name column and a Content column. Content decides what each code does: a web address becomes a link QR code that opens in the browser, and any other text becomes a plain-text QR code — useful for serial numbers or asset IDs.
Duplicate content is detected across rows and flagged with the row it first appeared in, so you don't print two labels that scan to the same thing by accident. Everything runs in your browser: your CSV is parsed and rendered locally rather than being uploaded to a server.
Styling applies to the whole batch. Pick colors, a logo, and a frame once, and every code in the zip comes out matching — handy when the batch is going onto uniform labels or badges.
One code per asset ID, printed onto labels straight from the zip.
A personalized code per attendee row for check-in or profile links.
Per-SKU codes linking each product to its own page or manual.
A code per table pointing at the menu or ordering page.
Bin and shelf codes that encode the location ID for quick scanning.
Every code you create here can carry your brand: upload a logo for the center, pick your own colors and dot styles, and wrap the code in one of 20 frame templates with a call to action. The live preview updates as you edit, so you always see exactly what will print.
Download as PNG for digital use, SVG for design tools and large-format print, PDF for direct printing, or high-resolution PNG for signage. MoonQR is free with no account required — no sign-up, no watermark-hiding paywall, no expiring trial.
A header row with "Name" and "Content" columns, then one row per QR code. Name becomes the file name; Content is the URL or text the code encodes. You can download a sample CSV inside the tool.
A single zip containing a PNG and an SVG for every valid row — PNG for direct printing and digital use, SVG for designers and large-format output.
Yes. Colors, logo, and frame are set once and applied to every code in the batch, so the whole set comes out visually consistent.
The preview table flags them before generation — invalid rows show the reason, and duplicates show which earlier row they repeat — so you can fix the CSV instead of printing bad codes.
No. Parsing and QR generation happen locally in your browser, and the zip is assembled on your device.
Choose what your QR code should contain — website, WiFi, email, and more.
Upload a CSV file with Name and Content columns to generate multiple QR codes.
Upload a CSV with Name and Content columns. Preview rows before generating QR codes.
Name,Content Google,https://google.com YouTube,https://youtube.com GitHub,https://github.com
Drag and drop your CSV file here
.csv files only
Optional — pick a starter template to prefill fields, or keep customizing manually.
Starter layouts with matching frames. Selecting a template updates the frame instantly, fills only empty content fields, and never replaces text you already entered.
Go beyond the basics — personalize colors, frames, logos, and export options before you download.
Scroll down to unlock more customization options
Fine-tune colors, logos, frames, and theme presets.
Apply a color theme instantly. Manual color edits are still available below.
Choose how the main QR modules are drawn. Preview updates instantly.
Customize the three corner finder patterns independently from the body style.
Wrap your QR code in a decorative frame. This only changes the visual frame — your QR content stays exactly as you entered it.
Guided Setup
Step 1 of 4