Bulk QR Code Generator: Create QR Codes from a CSV
A bulk QR code generator turns a spreadsheet into many QR codes at once: one row in, one code out. In QRelix you upload a CSV of up to 1,000 rows, match its columns, check every row, and get dynamic codes that are trackable and editable after printing, plus a zip of every image. Bulk creation and bulk editing are part of the Team plan.
This guide covers when bulk creation makes sense, how to prepare the CSV, how to apply your design and Smart Routing to every code, how to download them all in one zip, and how to change hundreds of printed codes later.
When you need a bulk QR code generator
Making codes one at a time is fine for a flyer or a menu. It stops being fine when every printed item needs its own code:
- Packaging. One code per product or SKU, each opening its own instructions, reorder page, or warranty form.
- Asset tags. One code per laptop, tool, or machine, each opening that asset's record or maintenance log.
- Event badges. One code per attendee, speaker, or booth, so each badge opens the right profile or session list.
- Direct mail. One code per campaign version or region, so you can see which mailing drove scans.
Because every code is dynamic, each one gets its own scan analytics, and you can change where any of them points after printing.
Create QR codes from a CSV, step by step
- Open Bulk in the dashboard, or click Import from CSV on the dashboard.
- Drop in a CSV file. From Excel, Google Sheets, or Numbers, use File, then Download or Save As, then CSV. Not sure where to start? Click Download the CSV template.
- Match columns. QRelix guesses which column is which from the header names. Check each one, and set any column you do not need to Skip this column.
- Pick the defaults: a type for rows without one, a category, a design, and (if you have a custom domain) the scan link domain.
- Click Check rows. QRelix validates every row and lists anything that needs a fix, with the row number and column.
- Click Create QR codes. You can leave the page while the codes are created; progress shows on the Bulk page.
Rows that fail validation are never created. Import the ready rows right away, then click Download failed rows to get a CSV of only the failed rows with an error column. Fix them and upload that file. One tip: row 1 in error messages is the first row under the header, so it is line 2 in your spreadsheet.
Preparing the CSV
Only name is required. You can use the column names below or your own, since you match them in step 3.
- name: the code's name in your dashboard. Required.
- type: URL, WIFI, VCARD, EMAIL, PHONE, SMS, TEXT, MAPS, APP_STORES, or a link type such as INSTAGRAM, TIKTOK, WHATSAPP, VENMO, or GOOGLE_REVIEW. Leave it out and pick one default type instead.
- destination: the main value for the type, such as the web address for URL codes, the number for PHONE and SMS, or the network name for WIFI.
- category: a category name. New categories are created for you.
- description: an optional note for your team.
- Wi-Fi details: wifi_password, encryption (WPA, WEP, or none), hidden, and static.
- Contact card details: first_name, last_name, phone, email, company, job_title, website, and address.
- Email and app codes: subject and body for EMAIL; app_store_url and google_play_url for APP_STORES.
- Security: one option per code, either password, expires (a date such as 2026-12-31), or max_scans.
Web addresses without https:// get it added. File and calendar codes are not available in a CSV; create those in the wizard or with the API.
Designs and Brand Kits in bulk
Under Design in the import, choose a Brand Kit or a saved template, and every new code gets the same colors, dot and corner shapes, and logo. Your default kit is preselected. You can also pick an existing code and copy its design onto every new one. Either way, a set of 500 asset tags comes out matching, without opening 500 design screens. Read more about Brand Kits.
Smart Routing in bulk
If you use Smart Routing, add a route column with the route's name. The code made from that row then follows the route, for example sending iPhones to the App Store and Android phones to Google Play. Change the route later and every code that uses it follows, with no reprints.
Download every code in one zip
- After an import: click Download images (zip) on the import's progress card.
- From the dashboard: click Select above your QR code list, tick the codes (or Select all for everything your filters show), and click Download.
Choose SVG for print, PNG for screens (512, 1024, or 2048 pixels square), or both. The zip includes a manifest.csv with each code's ID, name, type, scan link, destination, and category, which is handy for mail merges and label printing. Zips are kept for 7 days, and recent downloads are listed on the Bulk page.
Worked example: a coffee roaster labels 300 bags
A small coffee roaster sells 12 blends in 25 shops and wants a code on every bag that opens brewing tips for that blend, tracked by shop.
- The owner builds a spreadsheet with 300 rows: name (for example "Ethiopia Light, Elm St Market"), type URL, a destination with the blend's brewing page, and a category per shop.
- She saves it as CSV and drops it into Bulk. QRelix matches name, type, destination, and category automatically.
- Under Design she picks the roaster's Brand Kit, so every code has the brown dots and bean logo.
- Check rows flags two rows with a typo in the web address. She imports the other 298 now, downloads the failed rows, fixes them, and uploads that small file.
- She downloads the zip as SVG and hands the files and manifest.csv to her label printer.
A month later, the brewing pages move to a new site. She clicks Select on the dashboard, then Select all, and changes the destination in one step. The bags on the shelves keep working, and each shop's scans still show up under its category.
Bulk editing after printing
On the dashboard, click Select, tick the codes, and use the bar at the bottom of the list:
- Destination: send every selected dynamic URL code to a new address. Printed codes keep working. Other types and round robin codes are skipped.
- Category: move the codes to a category, or to no category.
- Enable or Disable: disabled codes stop sending scans to their destination until you enable them again.
Each change is recorded in every code's history and sends the usual webhook events. For more on changing printed codes, see how to edit a QR code after printing.
Limits and when not to use it
- 1,000 rows per CSV file. Split bigger batches into several files.
- No file or calendar codes in a CSV. Use the wizard or the API for those.
- One security option per code in the CSV: a password, an expiration date, or a scan limit.
- Bulk destination edits apply to dynamic URL codes only. Other types and round robin codes are skipped.
- Zips are kept for 7 days, so download them soon after you create them.
- Roles matter. Owners, admins, and editors can import and edit; viewers can download zips.
- Making five codes? The regular QR code generator is quicker than a spreadsheet.
What it costs
- Free plan (no credit card): unlimited dynamic QR codes made one at a time, full scan analytics with CSV export, and the whole security suite. Each free code works for its first 50 scans, then pauses until you upgrade, and free scans show a brief QRelix screen.
- Pro, $5.99 a month or $59.99 a year: unlimited scans, no QRelix screen, Smart Routing, and a Brand Kit.
- Team, $19 a month with 3 seats ($6 a month per extra seat): everything in Pro plus bulk creation and editing from CSV, up to 10 Brand Kits, a shared workspace with roles, custom domains, the developer API, and Zapier and Make.
See the pricing page to compare plans.
Frequently asked questions
How many QR codes can I create from one CSV?
Up to 1,000 rows per file, one code per row.
Can I generate multiple QR codes at once from Excel?
Yes. Save the sheet as CSV from Excel, Google Sheets, or Numbers, and upload it on the Bulk page.
Are bulk QR codes trackable and editable?
Yes. Every code is a dynamic code with its own analytics, exactly like one made in the wizard.
What happens to rows with errors?
They are never created. Import the ready rows, then download the failed rows with an error column, fix them, and upload again.
Which plan includes the bulk QR code generator?
The Team plan, at $19 a month with 3 seats included.
Start your first bulk import
Download the CSV template from the Bulk page, fill in one row per code, and upload it. Full details are in the bulk QR codes docs. To see how bulk fits into team workflows, read our guide to a QR code generator for teams, or get ideas from QR codes for event marketing. Ready to go? Upgrade to Team from pricing.
Put this guide to work
Make one with the free trackable QR code generator: scan analytics, an editable destination, your logo. No credit card, no account up front.
Create a free QR code