Excel · Google Sheets · CSV · TXT
Excel & CSV to QR Code Generator
Import data from Excel, CSV or Google Sheets and generate hundreds of QR codes instantly. Perfect for data-driven batch creation.
Under the hood
Exactly how the importer reads your file
The "Upload TXT/CSV file" button does not guess. It follows a small set of fixed rules, and knowing them is the fastest way to get the result you expect on the first try.
Two file types, chosen by name
Files ending in .csv go through the CSV parser. Files ending in .txt are loaded line by line, one QR code per non-empty line. The check ignores capitalization, so .CSV and .TXT work too. Anything else, including .xlsx, is ignored.
Every cell becomes a value
The CSV parser walks the file row by row and, inside each row, cell by cell from left to right. Every cell that is not empty becomes one line in the text box, and therefore one QR code.
Commas separate cells, quotes protect them
Only the comma is treated as a separator. A cell wrapped in double quotes can contain commas and line breaks, and a doubled quote ("") inside it becomes a single literal quote.
Spaces trimmed, empty cells skipped
Leading and trailing spaces around each cell are removed, and cells that end up empty are dropped. Empty rows and empty columns therefore produce no codes.
Any line ending works
CSV and TXT files saved on Windows (CRLF), macOS or Linux (LF), and older Mac formats (CR) are all read correctly as separate lines, with no hidden characters left at the end of each value.
The header row is not special
There is no header detection. A first row with titles such as "name" or "url" is imported like data, so remove it in the sheet or delete it from the text box afterwards.
This CSV file…
sku,url SKU-001,https://example.com/p/1 SKU-002,"https://example.com/search?q=red,blue" ,https://example.com/p/3
…becomes these 7 lines (7 QR codes)
sku url SKU-001 https://example.com/p/1 SKU-002 https://example.com/search?q=red,blue https://example.com/p/3
Notice three things: the header cells "sku" and "url" became codes, the quoted URL kept its comma, and the empty first cell of the last row was skipped. After the import you can edit the box freely, for example deleting the first two lines. One more detail: if a quoted cell contains a line break, it is split into two lines in the box and produces two codes, because the text box always works one value per line.
Preparing the data
Get your sheet ready in Excel or Google Sheets
The cleanest input is a single column containing exactly what each QR code should hold, with no header. Everything else is optional.
1. Build the final value in one column
If each code should open a product page, build the full link with a formula, for example ="https://example.com/p/"&A2, and fill it down. Always include https:// so phones recognize the value as a link.
2. Freeze formulas as plain values
CSV export saves the calculated results, so formulas are fine. Still, if you plan to move the column to a new sheet, use Paste Special → Values first so the references do not break.
3. Protect IDs from auto-formatting
Set ID columns to Text before typing or pasting. This keeps leading zeros, prevents long numbers turning into 1.2E+12 and stops codes like 3-4 being converted to dates.
4. Clean the edges
Use Data → Remove duplicates if each code must be unique, and =TRIM() to remove stray spaces inside cells. Delete totals or notes rows at the bottom of the list.
Exporting as CSV UTF-8
Excel (Windows / Mac)
File → Save As (or Save a Copy) → choose "CSV UTF-8 (Comma delimited) (*.csv)". Avoid the plain "CSV (Comma delimited)" option if your data has accents.
Google Sheets
File → Download → Comma-separated values (.csv). Exports the current tab in UTF-8, always with commas.
Apple Numbers
File → Export To → CSV, open Advanced Options and choose Unicode (UTF-8) as the text encoding.
LibreOffice Calc
File → Save As → Text CSV, tick "Edit filter settings", then pick UTF-8 and a comma as field delimiter.
Shortcut: for a single column you do not need a file at all. Select the cells in Excel or Sheets, copy, and paste into the text box. Each cell lands on its own line. If you copy several columns at once, the cells of a row are joined with tabs into one value, so copy one column at a time.
Troubleshooting
Common import problems and how to fix them
| What you see | Why it happens | Fix |
|---|---|---|
| Nothing happens after choosing the file | The file is not a .csv or .txt file (for example .xlsx, .xls or .numbers). Capitalization does not matter, so .CSV and .TXT are fine. | Export or save the sheet as CSV, then choose the new file. |
| Accents look like é or � | The file was saved as plain "CSV (Comma delimited)" in a legacy encoding. | Save again as "CSV UTF-8 (Comma delimited)". |
| A whole row shows up as one value with ; inside | Your regional settings make Excel use semicolons as separators. | Export one column only, or use Google Sheets to create the CSV. |
| Extra codes for "sku", "url" or other titles | The header row is imported like any other row. | Delete the first lines from the text box before downloading. |
| Numbers like 1.23457E+12 | Excel saves long numbers in the format they are displayed in. | Format the column as Number with 0 decimals, or as Text, then export. |
| Leading zeros are missing (00123 became 123) | Excel converted the codes to numbers when they were typed or opened. | Format the column as Text before entering data, or rebuild with =TEXT(A2,"00000"). |
| One cell turned into two codes | The cell contains a line break; the text box is line-based. | Remove line breaks in the sheet (Find & Replace, Ctrl+J in Excel). |
| Many rows merged into one long value | A stray double quote opened a quoted cell that never closed. | Remove the lone " or write it as "" inside a quoted cell. |
TXT files are used line by line exactly as written, including any spaces at the start or end of a line. If a scanned code shows unexpected blank space, open the file in a spreadsheet and export it as CSV (which trims cells) or paste the list into the box instead. For more on planning large batches, see our guide to bulk QR code generation.
Use cases
Typical spreadsheets people turn into QR codes
SKU and asset lists
A product or equipment export with one ID per row.
Registration exports
Ticket or attendee IDs from your sign-up form.
Shipment references
Tracking or pallet numbers from a dispatch sheet.
Campaign link sheets
One tagged URL per flyer, store or channel.
Staff and room lists
Employee IDs, desk numbers or meeting-room links.
Batch ZIP download
Match the numbered PNGs back to your spreadsheet rows.
Common questions
Excel & CSV QR code generator — FAQ
Can I upload an .xlsx file directly?
No. The uploader only accepts files whose names end in .csv or .txt (uppercase .CSV and .TXT work too). Save or download your workbook as CSV first (in Excel, choose "CSV UTF-8 (Comma delimited)"). Alternatively, select the column in Excel and paste it straight into the text box, which skips the file step entirely.
Which column of my CSV becomes the QR code?
All of them. The importer reads every non-empty cell in the file, row by row and left to right, and each cell becomes its own QR code. If you only want one column, delete the others before exporting or keep a separate sheet with just that column.
Can I combine several columns into one QR code?
Yes, but do it in the spreadsheet. Create a new column with a formula such as =A2&" - "&B2 or =CONCAT("https://example.com/item/",A2), fill it down, then export only that column. The importer never merges cells on its own.
My file uses semicolons instead of commas. Will it work?
Only if it has a single column. The parser splits cells on commas only, so a row like SKU-1;Blue stays as one value, "SKU-1;Blue". Export a one-column file, change your system list separator to a comma, or download the CSV from Google Sheets, which always uses commas.
Can I edit the values after importing the file?
Yes. The import simply fills the text box with one value per line. You can delete the header, fix typos or add lines by hand, and the codes update after a short pause. Uploading another file replaces the current content of the box.
Will Spanish, French or other accented characters work?
Yes, as long as the file is saved as UTF-8. Characters such as á, ñ, ü or ç are encoded correctly in the QR code. If they appear garbled in the text box after importing, the file was saved in an older encoding; re-export it as CSV UTF-8.
Is my spreadsheet uploaded anywhere when I import it?
No. The file is read by your browser on your own device and turned into text in the box. MultipleQR does not send the file or its values to a server to generate the codes. The only way the values leave your device is if you choose to copy and send the "Share as URL" link.
How do I import a Google Sheets list?
Use File → Download → Comma-separated values (.csv). Google Sheets exports the current tab only, in UTF-8 and with commas, which is exactly what the importer expects. Make sure you are on the tab with your values before downloading.