How to Generate Bulk QR Codes in Excel (Free Template Inside)

Generating one QR code online is fine. Generating 50, 100, or 200 of them one at a time is a special kind of misery. Most people open a free online generator, paste a URL, download a PNG, rename it, repeat. After 20 codes the will to live exits the building. Here is the faster way: use Excel as the source of truth, batch-generate everything in one click, and get a print-ready A4 sheet at the end. Free template included.

Why bulk QR codes are a real problem

Most QR code articles online are written for someone who needs ONE code. One menu link. One WiFi password. One business card. The internet is full of "how to make a QR code" tutorials, and they all assume you do it once.

Real businesses do not work like that. A restaurant chain has 30 locations and needs 30 menu codes. An event organizer has 200 attendees and needs 200 vCards. A property manager has 80 units and needs 80 maintenance request codes. A small biz owner has 50 product SKUs and needs 50 product page links printed on labels.

The moment your QR need crosses 10 codes, the manual approach falls apart. You spend an hour clicking buttons, then realize the colors don't match your brand, then realize you printed them at the wrong size, then realize one URL had a typo. You start over. You hate your life.

When you actually need 50+ codes

I have built this tool because I kept seeing the same scenarios repeat in customer requests. The pattern is always the same: someone needs many codes, fast, and they need them to print without falling apart.

Common thread: the data already lives in a spreadsheet. The customer list, the product catalog, the attendee table, the building register. It is all in Excel or Google Sheets already. The smart move is to generate the codes from where the data lives, not from a separate tool that requires you to copy-paste 200 times.

The three ways to generate them

1. Online generators with batch mode (paid)

Tools like QR Code Generator Pro, QR Tiger, or Beaconstac let you upload a CSV and generate codes in bulk. The catch: pricing starts around $10 to $30 a month, and many features (custom branding, dynamic codes with tracking, more than 50 codes per month) are locked behind higher tiers. If you generate codes weekly, the math works. If you generate them once a quarter, you are paying for nothing 90% of the time.

2. Custom code (Python, JavaScript)

If you can write a 30-line Python script that loops through a CSV and saves PNG files using the qrcode library, congratulations, you do not need this article. For everyone else, this option is theoretical. Setting up Python, installing libraries, debugging file paths, dealing with image sizing for print is a half-day project that you will never repeat.

3. Excel + VBA (one-time cost or free)

This is the sweet spot. Your data is already in Excel. The codes get generated in the same place. The print layout is a tab in the same file. Total cost: a few dollars one-time, or zero if you use a free template for evaluation. No subscription, no command line, no Python install.

The trade-off: it only works on Excel for Windows desktop because it relies on VBA macros. Mac Excel, Excel Online, and LibreOffice are not supported. If you are on Windows with Excel 2016 or later, this is the fastest path by a mile.

How to do it in Excel, step by step

Here is the workflow inside the ClicknFile QR Code Generator. Other Excel-based tools follow a similar pattern. The whole process for 200 codes is under a minute of your time, plus 30 to 40 seconds of waiting for the API to respond.

Step 1: open the file and enable macros

VBA-based tools come as .xlsm files. The first time you open one, Excel shows a yellow security banner: "Macros have been disabled". Click Enable Content. Save the file once. Macros stay enabled for all future opens.

Step 2: configure your defaults in Settings

The Settings tab holds the global defaults that apply to every code unless you override them per row. Set:

Step 3: fill the Input tab, one code per row

The Input tab is just a structured table. Each row becomes one QR code. Three columns are required:

Optional: a custom hex color in column E to override the default for a single row. Useful when you want most codes in your brand color but a few highlights in the accent color.

Step 4: click Generate All

One button. Wait 5 to 30 seconds depending on volume. Each row updates with a status:

If a row errors, fix it and click Generate All again. The tool only retries the failed rows, so you do not waste API calls on the codes that already worked.

Step 5: export as PNG files OR build the print layout

Two options at this point depending on what you need:

Pro tip

Always do a single test scan with two different phones before printing in volume. iPhone and Android handle edge cases differently. A code that scans on one but not the other is a printing disaster waiting to happen.

The 6 QR types and what they encode

Not all QR codes are URLs. The full QR spec supports several content types, each with its own format. Here is the cheat sheet.

TypeWhat scanning it doesContent format
URLOpens a websiteFull URL with https://
vCardSaves a contact to the phoneName|Org|Phone|Email
WiFiAuto-connects phone to networkSSID|Password|WPA
GeoOpens map at coordinatesLatitude,Longitude
PaymentOpens a payment pageFull URL (PayPal, Stripe, etc.)
TextShows plain text on scanAny string up to 600 chars

Length matters. Each QR code has a content limit before the pattern becomes too dense to scan reliably from a phone. URL and Payment cap at 500 characters. Text caps at 600. vCard caps at 700. WiFi at 200. Geo at 50. If you exceed a limit, a good tool will reject the row with a clear error rather than producing an unscannable code.

This is where most online generators fall short. They give you 200 PNG files in a folder. Now what? You open Word, paste them in, resize them by hand, add labels, fight with column widths, give up after 30 minutes.

The A4 print layout sheet is the difference between "I have my QR codes" and "I have my QR codes printed and on the table". A good layout fits 24 codes per A4 page in a 4-column grid with the label below each code. Margins are tuned so the codes scan without bleeding into the next one. Page breaks are clean. You hit Ctrl+P, you have your printed sheet.

For sticker labels, you can also use Avery-compatible templates. The standard Avery 8160 layout (1 inch by 2.625 inches) holds 30 stickers per A4 sheet, perfect for asset tags and product labels.

Mistakes that make QR codes unscannable

I have seen the same five mistakes destroy bulk QR projects over and over. Here is the list, in order of how often they happen.

1. Color contrast too low

Pretty pastel QR codes look beautiful and scan terribly. The QR pattern needs at least 50% brightness contrast between foreground and background. Stick to dark colors (navy, black, charcoal) on light backgrounds (white, cream, light beige). If your brand is light blue, use it for the labels, not the QR pattern itself.

2. Printing too small

The minimum reliable scan size for a phone at arm's length is about 1 cm (0.4 inches) per side. Below that, even the best ECC level cannot save you. For posters and signs viewed from further away, scale proportionally: at 1 meter scan distance, codes need to be at least 3 cm per side.

3. Putting a logo in the center without raising ECC

Logo-in-the-center QR codes look great in marketing decks. They also fail to scan if you don't raise the ECC level to H (30%). The logo physically obscures part of the data pattern. Without high error correction, the code becomes garbage. Always test scan after adding a logo.

4. URL too long

A 200-character URL becomes a dense, hard-to-scan QR code. Use a URL shortener (bit.ly, TinyURL, your own short domain) before generating the code. Bonus: you can change the destination later without reprinting.

5. Not testing before printing 500 of them

This is the catastrophic one. Always test scan a single sample with two different phones (iPhone and Android) and at the actual print size. Print one code at the final size, scan from your expected scan distance, in the actual lighting condition. Five minutes of testing saves a $200 reprint.

Try the free QR Code Generator Free

I built a free version of the ClicknFile QR Code Generator so you can evaluate the structure, see the print layout, and check that it fits your workflow before paying anything. Same Excel layout, 7 ready-to-use sample codes, full Print Layout A4 preview.

Get the free template โ†’

Free version vs Pro version

The free version of the ClicknFile QR Code Generator is a preview. It shows the full Excel structure, the 7 sample codes, the Print Layout A4 sheet, and the Settings tab. Perfect to see how the tool is built and decide if it fits your workflow. Batch generation, custom branding, multi-format export, and the full 200-code capacity are in the Pro version.

FeatureFreePro ($4.99)
Excel structure previewโœ“โœ“
7 sample codesโœ“โœ“
Print Layout A4 previewโœ“โœ“
Batch generation up to 200 codesโœ—โœ“
Custom brand colors per rowโœ—โœ“
Multi-format export (PNG, JPG, SVG)โœ—โœ“
Smart retry on errorsโœ—โœ“
Custom filename patternโœ—โœ“
Quick Start Guide (.docx)โœ—โœ“
Lifetime updatesโœ—โœ“

Bulk QR Code Generator (Pro) $4.99

Everything in the free version, plus full batch generation. Built for restaurants, event organizers, sales teams, and small biz owners who need volume without paying $20 a month for an online tool.

  • Generate up to 200 codes per batch in 30-40 seconds
  • Six types: URL, vCard, WiFi, Geo, Payment, Text
  • Custom brand colors with any hex code, per row
  • Output as PNG, JPG, or SVG
  • Print-ready A4 layout, 24 codes per page
  • One-time purchase, no subscription, lifetime use
Get the Pro version โ†’

Stop generating QR codes one at a time

Download. Open. Done.

Get the free template โ†’

FAQ

Can Excel really generate QR codes?
Yes. Excel does not have a built-in QR generator, but VBA macros can call a free QR API and embed the resulting image into the workbook. The ClicknFile generator uses this method to create up to 200 QR codes from a single click. No add-ins, no installations, no subscription.
Do I need to pay for an online QR generator?
Most paid online generators charge $10 to $30 a month for batch generation, dynamic codes with tracking, or custom branding. If you only need static codes (URL, WiFi, vCard, etc.) and you want to print them, an Excel-based bulk generator is a one-time purchase that does the same job without the recurring fee.
Are static QR codes safe to use?
Yes. Static codes contain the actual content (URL, contact, etc.) directly inside the code pattern. They never expire, do not require an internet connection to scan, and do not phone home. The trade-off is that you cannot edit the destination after printing, so always test scan before bulk printing.
What size should I print QR codes?
For printed QR codes scanned with a phone, the rule of thumb is 1 cm (about 0.4 inches) per square code at a 30 cm scan distance. Smaller works for short URLs but larger is safer for vCards or long content. For posters and large displays, scale proportionally to the expected scan distance.
Can I use my brand colors on QR codes?
Yes, but with a contrast rule: the foreground color must be significantly darker than the background. Navy on white, charcoal on cream, or any dark color on white works. Light colors on light or dark on dark will not scan reliably. Always test scan with at least two different phones before printing in volume.
What is ECC and which level should I use?
ECC (Error Correction Code) is the QR code's ability to remain scannable when partially damaged or covered. Levels are L (7%), M (15%), Q (25%), H (30%). M is the safe default for most uses. Use H if you plan to put a logo in the center or expect the printed code to get scuffed. Higher ECC means a denser pattern, which needs slightly more print space.