A mixed-SKU print run, counted and checked

Batch Label Print Run

One artwork per SKU. Exactly as many copies as your list asks for. Match your label images, check the sheet, then build a PDF and a traceable print-run manifest.

Local file processingMillimetre-based layoutNo signup

1Bring your quantity list + artwork

1. SKU quantity CSV

Up to 1,000 data rows. Map the SKU and quantity columns; filename is optional. Repeated exact SKUs add together, with every source row recorded.

2. Label images

PNG / JPEG only · up to 200 images · 10 MiB each · 100 MiB total · 20 megapixels each. Use the exact SKU as the filename stem, or an exact filename in your CSV.

No images loaded

    Three original geometric demo labels, with quantities 10, 5 and 15. They contain no customer data or functional barcodes.

    Your CSV, SKUs, filenames and artwork stay in this browser. No uploads or autosave. The PDF library loads from a pinned CDN; Google Analytics counts canonical page visits only.

    Import your CSV and images, or try the original demo.

    2Resolve every artwork match

    Matching is exact and case-sensitive. Filename column matches a full relative path or filename; otherwise SKU matches the filename stem. Missing, ambiguous and case-only artwork alternatives require a manual choice. Case-only SKU collisions and invalid quantities must be fixed in the CSV.

    Apply a CSV list to see each SKU, total quantity and source rows.

      3Set the physical layout

      Labels fill left to right, then top to bottom. A skipped cell is left empty on the first sheet only. One-label mode uses the label dimensions as the page size, without margins or gaps.

      PDF dimensions do not guarantee printer alignment. Printers may clip near the edges or scale the page. Test a plain-paper sheet before using label stock.

      Check the sheet preview

      All artwork uses contain fitting: no crop, no stretch. Grey dashed boxes show label cells in this preview only. A shape mismatch can leave white space inside the label.

      0Copies
      0Pages
      0Labels per sheet
      0Empty cells on last page

      A valid list, matched artwork and fitting layout will appear here.

      4Build the checked print run

      Adds an apostrophe before formula-like text cells in CSV. JSON keeps exact text. Source rows and each placement remain traceable.

      Download print-run.pdf, manifest.csv and manifest.json separately, or together in a ZIP. Up to 1,000 label placements. Any change invalidates the previous downloads.

      Add a valid list and resolve every artwork match before exporting.

      Print a calibration page first

      A separate A4 calibration PDF includes a 100 mm ruler and square. Print at Actual size / 100%, measure with a real ruler, and check sheet alignment. It cannot correct or certify your printer.

      From a quantity list to a checked batch

      For small production runs, mixed-SKU packing days and replenishment labels when finished artwork already exists. This tool repeats your images at a specified physical size; it does not design labels or validate barcode readability.

      1. Import a CSV and map its SKU and quantity columns. Use whole numbers from 0 to 1,000; zero-quantity rows are recorded but not printed. Repeated exact SKUs aggregate, while case-only collisions are rejected.
      2. Add the matching PNG or JPEG artwork. Review each exact match and manually assign any missing or ambiguous image. Check unused artwork before continuing.
      3. Set the sheet, label dimensions, margins, gaps and first-sheet offset. Or choose a single label-sized page for each copy. Check aspect-ratio and resolution warnings.
      4. Review the sheet preview and total copies. Build the PDF with its CSV and JSON manifests; download the ZIP if you want all three together.
      5. Print the separate calibration page at Actual size / 100%, measure its ruler, and test on plain paper. Check your printer margins and any print-dialog scaling before committing label stock.

      Before you print

      Will this fit my specific printer or label stock?

      You specify the dimensions. The PDF preserves those page and label sizes, but hardware margins, feed tolerances and print-dialog scaling vary. Measure the separate calibration PDF and test on plain paper. There is no printer-specific alignment guarantee.

      How do artwork matches work?

      Matches are exact and case-sensitive. An optional filename column matches the image’s relative path or filename, including its extension. Without it, SKU matches the filename stem. Multiple candidates need a manual choice. Repeated SKU rows must have consistent filename instructions.

      Are images stretched or cropped?

      No. Each image is fitted wholly inside the label and centred, preserving its aspect ratio. Different shapes leave blank space. The tool warns about shape mismatch and estimates the effective DPI at the placed size; it cannot guarantee a scannable barcode or readable fine print.

      What does the manifest contain?

      The exact SKU totals, input row references, assignments, page and cell positions, physical placement dimensions and effective DPI. JSON retains exact source text. The spreadsheet-safe CSV option escapes formula-like cells for safer opening in spreadsheet software.

      What are the limits?

      At most 200 PNG or JPEG images, 10 MiB each, 100 MiB total, and 20 megapixels per image. CSV input is limited to 1,000 data rows and a print run to 1,000 placements. Quantities must be non-negative whole numbers. Zero-quantity rows are recorded but do not print.

      Are files uploaded or saved?

      No file contents, SKUs, filenames or tool actions are sent to analytics. Processing uses browser memory; leaving, refreshing or changing language can lose work. The page loads scripts over the network, including pinned pdf-lib code from jsDelivr. Google Analytics records a canonical page visit without query strings or referrer. Full offline availability is not promised.