What is a bulk QR code generator?
A bulk QR code generator creates a whole set of QR codes in one job, reading the content for each code from a spreadsheet instead of making them one at a time. If you need a code for every product, table, room, asset or attendee, it saves hours and removes copy-paste errors.
The bulk QR code generator is part of the CardDeck batch generator, the same engine that produces ID cards and event badges from a spreadsheet. You can use it in a code-only mode, which outputs QR codes without designing cards around them.
What you can put in each code
- A URL per row, such as a product page, a ticket link or a feedback form for each location.
- Plain text, such as a serial number, asset ID or short instruction.
- A dynamic short link, so every code in the batch can be re-targeted and tracked later.
Who uses it
Retailers labeling shelves and products, warehouses tagging assets, event teams making a code per attendee, restaurants printing a code per table, schools tagging library books and equipment, and marketers giving every flyer drop or store its own trackable code.
How do I generate QR codes in bulk from a CSV or Excel file?
Upload your spreadsheet, map the content column, choose static or dynamic, apply a style and download. A batch of a few hundred codes takes minutes.
Step by step
- Export or build your sheet. One row per code. Save as CSV (UTF-8) or XLSX.
- Start a batch job in CardDeck and choose the QR code output.
- Upload the file. CardDeck reads the header row and shows a preview.
- Map columns. Choose the content column, the file name column and, optionally, a label column printed under each code.
- Pick static or dynamic. Static is unlimited. Dynamic uses your plan's dynamic QR allowance.
- Style the batch. Set colors, logo and corner shape once for every code.
- Review flagged rows. Fix empty cells, duplicates or content that is too long, either in CardDeck or in your sheet and re-upload.
- Generate and download a ZIP of individual files, a PDF sheet, or both.
Re-running a job
Keep a unique ID column, such as a SKU or asset number. When you re-import the same sheet with changes, CardDeck uses that column to update existing records instead of creating duplicates. Saved column mappings make repeat imports a two-click job.
How should you format your spreadsheet for bulk QR codes?
Use one row per code, one column per field, a header row with clear names, and a unique ID in every row. Save as CSV in UTF-8 encoding or as an Excel XLSX file.
A simple layout
- id: a unique value such as SKU-1042 or ROOM-204. Used for file names and updates.
- content: the URL or text to encode.
- label: optional text printed under the code, such as a product name.
Rules that prevent errors
- Full URLs. Include https:// so every phone treats the content as a link.
- No merged cells or blank rows inside the data.
- UTF-8 encoding for CSV files, so accented names and non-Latin scripts survive the import. In Excel, use "CSV UTF-8" when saving.
- Unique IDs. Duplicates are flagged, because two files with the same name would overwrite each other.
- Short content. Long text makes dense codes that need to be printed larger. Use dynamic codes if your URLs are long.
- Watch Excel auto-formatting. Long numbers such as barcodes or IDs can be turned into scientific notation. Format those columns as text before saving.
Example rows
- SKU-1042, https://example.com/p/1042, Oak Desk
- SKU-1043, https://example.com/p/1043, Walnut Shelf
Each row becomes one file, for example SKU-1042.svg, with "Oak Desk" printed underneath if you mapped the label column.
Should bulk QR codes be static or dynamic?
Make bulk codes static when each code's content is permanent, such as a serial number or a page that will never move. Make them dynamic when the destinations may change or when you want scan counts per code.
Static bulk codes
- Unlimited on every plan.
- Work forever with no account dependency.
- Best for asset tags, serial numbers, permanent product pages and internal labels.
Dynamic bulk codes
- Each code gets its own short link you can re-target later.
- Each code has its own scan count, so you can compare stores, tables or flyer drops.
- Count toward your plan's dynamic QR allowance: 2 on Free, 50 on Pro, 200 on Team and unlimited on Business.
A common pattern
Retailers and franchises often make one dynamic code per location. All codes point to the same page at launch. Later, individual locations can be re-pointed to local offers, and analytics show which locations get the most scans. Read more about dynamic QR codes and how editing works.
If you only need a handful of codes, the single QR code generator is quicker.
How many QR codes can you generate at once?
The number of rows per batch job depends on your plan: 25 on Free, 500 on Pro, 2,000 on Team and 25,000 on Business. You can run more than one job, and static codes are unlimited in total.
Limits by plan
- Free: 25 rows per job. Good for testing a layout.
- Pro ($8/month, or $6 billed yearly): 500 rows per job and 50 dynamic codes.
- Team ($6 per seat/month, or $5 billed yearly, minimum 3 seats): 2,000 rows per job and 200 dynamic codes.
- Business (from $199/month, or $149 billed yearly): 25,000 rows per job and unlimited dynamic codes, with custom pricing for higher volumes.
Larger sets
If you have more rows than your plan allows in one job, split the sheet into several files by category, store or date and run them as separate jobs. Keep the same column mapping so every file produces matching output. For full details, see CardDeck pricing.
Test small first
Before a large run, upload the first 20 rows as a test job. Print the result, scan a few codes and check the labels, then run the full sheet. It costs nothing on any plan and catches mapping mistakes early.
How do you download and print bulk QR codes?
Download a ZIP of individual PNG or SVG files for use in other software, or a PDF with codes laid out on A4 or Letter sheets for direct printing. Most teams use SVG for professional print and the PDF for in-house label printing.
Output options
- ZIP of SVG files. Vector files that stay sharp at any size. Best for packaging, signage and designers.
- ZIP of PNG files. Raster images for websites, spreadsheets and quick documents.
- PDF sheet. Codes arranged in a grid with optional labels, ready to print on paper or label stock.
Print checklist
- Print each code at least 2 × 2 cm (about 0.8 in) for close scanning. For longer distances, make the code about one-tenth of the scanning distance.
- Keep a quiet zone of at least four modules around each code. Do not let labels touch the pattern.
- Use dark codes on a light background.
- Print one test sheet, then scan codes from the top, middle and bottom of the page before printing the full run.
- Check a sample of codes opens the right row's content, not just that it scans.
Codes on cards and badges
If each code belongs on a card, such as a staff ID, a membership card or an event badge, use the batch generator's card output so the code is placed on the template with the person's name and photo in the same job.
Can you generate barcodes and QR codes in the same batch?
Yes. The batch generator can produce a QR code and a barcode for every row, which is useful when phones and dedicated scanners both need to read the same item. For barcode-only batches, use the bulk barcode tool.
When you need both
- Retail shelf labels: a barcode for the till scanner and a QR code that opens product details for shoppers.
- Asset tags: a Code 128 barcode for the inventory scanner and a QR code that opens the asset's record.
- Membership cards: a barcode for the front-desk reader and a QR code that verifies the card online.
How to set it up
- Add a column for the barcode value, such as an ID number, next to your QR content column.
- Map both columns in the batch job.
- Choose the barcode format, such as Code 128 for IDs.
- Download both codes per row, or place both on a card template.
See the bulk barcode generator for barcode formats, sizes and spreadsheet tips. Keep the two codes apart on labels, each with its own quiet zone, so a scanner does not pick up the wrong one.
Making QR codes one at a time vs in bulk with CardDeck
| Without CardDeck | With CardDeck | |
|---|---|---|
| 500 codes | Hours of copy, paste and download | Minutes from one spreadsheet |
| File names | Renamed by hand | Named from your ID column |
| Errors | Found after printing | Empty cells and duplicates flagged first |
| Consistent design | Depends on who made each code | One style applied to every code |
| Printing | Lay out each code manually | Print-ready PDF sheet |
| Editing later | Reprint everything | Re-point dynamic codes without reprinting |