Add QR Codes & Barcodes to PDF in Bulk

Stamp QR codes, barcodes and serials from CSV on each page

1Choose file2Settings3Process4Save

Choose a PDF and its contents will be analyzed and shown here.

Files are processed only in this browser. Nothing is uploaded to a server.

Stamp QR codes, barcodes and serial numbers on each page from CSV values

Continue in another tool
Task settings
Settings
Leave empty to use serial numbers only. Comma, tab and semicolon separators are detected automatically
Puts one row (number) on each selected page in order
Preview

Remove the password from an encrypted PDF first. The whole file is rewritten, so any existing digital signature becomes invalid. Keep the original and check the result.

About Add QR Codes & Barcodes to PDF in Bulk

Use this when every copy of a certificate, ticket, asset label or exam paper needs its own QR code or Code 128 barcode. Values come from a template: {n} is a serial number, {page} the page number, and {column name} the value from that CSV row.

There are two modes: stamp one row per page into a PDF that already has many pages, or duplicate a one-page template once per CSV row. Codes are drawn as vector rectangles, not images, so edges stay sharp at any print size.

Module width is what decides readability

Here the barcode width is fixed and the number of bars depends on the value. A longer value means a thinner narrowest bar (the module), and below about 0.19 mm ordinary office printers blur it, so the tool warns you. Code 128 switches long digit runs into its numeric subset (Code C), which packs two digits per symbol, so an all-digit value prints much bolder at the same width.

QR error correction levels L, M, Q and H recover roughly 7, 15, 25 and 30% damage. Higher levels add redundant data, so modules get smaller at a given size. A short ID reads better at small sizes than a full URL; let your server prepend the address. Code 128 covers ASCII only, so use QR for accented or non-Latin values.

Serial padding and the check character

Setting {n} to 4 digits prints 1 as 0001. Spreadsheets and scanner software that sort as text then keep 0010 after 0002, and every barcode has the same length, so bar widths stay constant across the run.

Code 128 appends a check character computed modulo 103. If a scanner misreads one bar, the check fails and the scan is rejected, so a wrong number rarely slips in silently. The check character is not shown in the human-readable text.

Worked examples

Code 128 on a 30 mm asset label

Input
Value "ASSET-000123"
Output
145 modules, module width about 0.207 mm

The first six characters use subset B and the six trailing digits become three Code C symbols. Without that switch it would be 167 modules, about 0.18 mm, which triggers the warning.

Rows and pages do not match

Input
120-page survey stack, 118 CSV rows, one value per page
Output
Codes on 118 pages, 2 pages reported as unused

Pages and rows are paired from the start and the shorter list wins. To use every row, pick one copy of the document per value.

How to use it

  1. Open the PDF, choose QR or Code 128, and paste the CSV and value template.
  2. Set the mode, position and size, and scroll the preview to the longest value.
  3. Print a few pages, scan them with a real scanner or phone, then print the lot.

Frequently asked questions

Can I load an Excel file directly?

Save it as "CSV UTF-8" and load that, or copy the cells and paste them; pasted cells are read as tab-separated.

Are bookmarks and signatures kept?

The document is rebuilt, so bookmarks, form links and digital signatures may be lost. Sign after stamping.

What is the white background option for?

It fills the quiet zone (2 modules around a QR code, 10 modules each side of a barcode) with white so scanners can find the code's edges over a patterned background.

Sources

Last reviewed:

Privacy and how data is handled