Bulk QR Code Generator: How to Create Multiple QR Codes at Once (Free Methods, 2026)
Making one QR code takes ten seconds. Making two hundred — one per table, product SKU, or warehouse shelf — is a different problem. Here are three free ways to do it, from a spreadsheet formula to a proper CSV upload.
Making one QR code takes ten seconds in any generator. Making the fiftieth one — a unique code for every restaurant table, every product SKU, every warehouse shelf, every seat at a conference — is a different problem entirely. Doing it by hand, one form submission at a time, turns into an afternoon of copy-pasting.
This guide covers three free ways to generate QR codes in bulk, from a five-minute spreadsheet trick to CSV-upload platforms, plus how to decide which one is actually worth your time.
Why You'd Need Bulk QR Codes in the First Place
A handful of situations account for almost every "I need dozens of these" request:
- Restaurants and cafés — one code per table linking to a digital menu, sometimes with the table number embedded in the URL so orders route correctly. See our guide to QR codes for restaurant menus for the single-code version of this setup.
- Retail and e-commerce — a code per SKU linking to a product page, spec sheet, or warranty registration, often generated straight from a product export.
- Events and conferences — badges, session check-ins, or table assignments, each with a unique code. Our QR codes for events guide covers the single-event workflow this scales up from.
- Real estate — a code per listing or per yard sign, linking to that property's page.
- Asset and inventory tracking — a code per pallet, shelf, or piece of equipment, usually paired with a phone scanner for lookups. See phone barcode scanning for inventory.
- Warranty, manuals, and product passports — increasingly relevant under frameworks like the EU Digital Product Passport and GS1 Sunrise 2027, both of which assume a code per product, not per SKU family.
In every case, the underlying task is the same: take a list of destinations (URLs, IDs, or text) and turn each row into its own scannable image.
Method 1: One at a Time (Fine for Small Batches)
If you need fewer than about 10–15 codes, don't overthink it. Our free QR Code Generator runs entirely in your browser — paste a URL, download the PNG, rename it, repeat. For ten codes this takes about three minutes and nothing gets uploaded anywhere.
The moment this stops being pleasant is somewhere between 15 and 30 codes, when the repetitive paste-generate-download-rename cycle starts eating a real chunk of your afternoon. That's the signal to move to Method 2.
Method 2: The Spreadsheet Formula Trick (Free, No Signup)
This is the fastest genuinely free method for turning a list of 20–500 URLs into QR codes, and it uses a feature already built into Google Sheets: the IMAGE() function pointed at a QR-generating image URL.
- Column A: list your destination URLs, one per row (e.g., product pages, table-specific menu links, or listing pages).
- Column B: in the first data row, enter:
=IMAGE("https://api.qrserver.com/v1/create-qr-code/?size=300x300&data="&ENCODEURL(A2)) - Fill down column B for every row in column A. Sheets renders a live QR code thumbnail in each cell within a second or two.
- Export — for a handful of codes, right-click each thumbnail and "Download image." For larger batches, use File → Download → Web Page (.html), which saves every rendered image as a separate file inside a folder, or a Sheets add-on that batch-exports cell images to a ZIP.
This works because ENCODEURL() safely escapes special characters in your destination URL before it's passed to the QR-generating endpoint, and IMAGE() renders whatever that endpoint returns directly in the cell. It's the same trick spreadsheet users have used for years to pull in any dynamically generated image.
Limitations: you're relying on a third-party image API to actually generate each code, so double-check the destination URLs are correct before you print anything, and avoid encoding sensitive data (payment links, private documents) this way since the URL is sent to an external server. For anything sensitive, use Method 1 with an on-device generator instead.
Method 3: A Bulk QR Code Platform (CSV/Excel Upload)
For a few hundred to several thousand codes — or if you need scan analytics per code, dynamic (editable-after-print) links, or branded templates applied consistently across the whole batch — dedicated bulk QR platforms exist for exactly this. You upload a CSV or Excel file with one row per code, map the columns (destination URL, optional label, optional custom data), and the platform generates and packages every code, usually as a ZIP of PNGs or a print-ready sheet.
These platforms are worth paying for when you need any of the following, which the free methods above don't cover:
- Per-code scan tracking at scale — knowing which of 300 table codes actually got scanned, and when.
- Dynamic codes — the ability to redirect an already-printed code to a new URL later without reprinting. See static vs dynamic QR codes for when this matters.
- Consistent branding across hundreds of codes — logo, colors, and frame applied automatically to every one.
- Team management — multiple people generating and organizing codes under one account.
If you only need the raw images and don't need tracking or editability, the spreadsheet method in Method 2 gets you 90% of the way there for free.
Choosing a Method
| Method | Best for | Cost | Setup time |
|---|---|---|---|
| One at a time | Under ~15 codes | Free | A few minutes |
| Spreadsheet formula | 20–500 codes, static content, no tracking needed | Free | ~10 minutes |
| Bulk CSV platform | Hundreds–thousands, need tracking/dynamic/branding | Usually paid above a free tier | ~15–30 minutes |
What to Put in Each Code (Numbering & Tracking)
Bulk batches fail in the field for one recurring reason: nobody can tell which code is which after they're printed and mounted. Before generating anything, decide on a naming and numbering scheme:
- File names that match a real-world identifier —
table-07.png,sku-48213.png— notqrcode(14).png. - URL parameters that make each destination traceable even without a paid analytics platform. Append a unique UTM tag to each URL with our free UTM Link Builder before generating the code, and you can see per-source performance in Google Analytics without paying for per-code scan tracking.
- For genuinely free scan counts per code, see our guide on tracking QR code scans without a subscription.
Print & Size Considerations at Scale
A sizing mistake that's invisible on one test code becomes an expensive reprint order across 300 of them. Two things to check before you send a bulk batch to print:
- Minimum print size for the scan distance — a code on a table tent scanned from 30cm needs far less size than one on a yard sign scanned from a car. Our QR code size guide has the distance-to-size ratios.
- Data capacity — long URLs generate denser, harder-to-scan codes. If your bulk list has long destination links, run one through our QR Code Capacity Calculator first, or shorten the URLs before generating the batch.
Frequently Asked Questions
What's the fastest free way to make 50 QR codes?
The Google Sheets IMAGE() formula method (Method 2 above). List your 50 URLs in one column, add the formula in the next, fill down, and export. It takes about 10 minutes total and requires no signup or paid tool.
Can I bulk-generate QR codes without a computer, just from my phone?
For small batches (under ~15), yes — generate them one at a time in a mobile browser or app. For true bulk generation from a spreadsheet, you'll need a device that can edit a CSV or Google Sheet, though you can then download the resulting images to your phone.
Do bulk-generated QR codes expire?
Codes made with a free, static method (Methods 1 and 2 here) never expire — the destination is baked directly into the code and works as long as that URL exists. Dynamic codes from paid platforms route through the platform's redirect service, which means they stop working if you cancel the subscription.
Is it safe to use a free online QR API to generate hundreds of codes?
For non-sensitive destinations — product pages, menus, public listings — yes, this is a standard and widely used technique. Avoid it for anything containing private data, payment details, or personal information, since the destination URL is sent to a third-party server to render the image.
Can I add my logo to every code in a bulk batch for free?
Not easily with the spreadsheet method, which uses a plain QR-generating API without branding options. Consistent branded logos across a large batch generally require either a paid bulk platform or scripting your own generation with a library that supports logo overlay.
How do I know which QR code goes where after printing hundreds of them?
Name every file after a real-world identifier before you print — table number, SKU, listing ID — rather than a generic sequential name. Match that naming scheme in whatever spreadsheet or system tracks where each physical code gets placed.
The Short Version
Under 15 codes: use a free one-at-a-time generator. Between 20 and a few hundred, with no need for tracking or edits after printing: the Google Sheets formula trick costs nothing and takes minutes. Above that, or if you need scan analytics, dynamic redirects, or consistent branding across every code: a paid CSV-upload platform earns its cost. Whichever method creates the codes, scan a sample from the actual printed batch before the full print run — a formatting mistake caught on one code is a five-minute fix; caught after 300 are printed, it's a reprint.