Menu
Sign up

Print labels from data: shipping, product and shelf labels as one-page PDFs

Generate shipping, product, shelf and name labels as one-page vector PDFs at the exact label size, from a CSV or your system's data. Sizes and limits.

Published November 7, 2026 · 4 min read

Labels are the most repetitive print job there is: the same layout, a different name, address, product or code on every one. With Shareglint a label is an HTML template at the label's exact size, and each row of your data becomes a one-page vector PDF — sharp text at any printer resolution, the right page size for the label printer, one file per label in a ZIP. Shipping labels from your own shop, product and shelf labels, name labels for an event, sample labels for a lab.

Size: the page is the template

A PDF render is exactly one page, the template's width and height in CSS pixels at 96 pixels per inch, with no margins (PDF generation). To get a label size, multiply inches by 96, or millimetres by 96 / 25.4 — CSS defines 1 inch as 96 pixels (CSS Values and Units):

Label Inches / mm Template size (px)
Shipping label 4 × 6 in 384 × 576
Large shipping label 100 × 150 mm 378 × 567
Address label 4 × 2 in 384 × 192 — too small, see below
Name badge 4 × 3 in 384 × 288
A6 105 × 148 mm 397 × 559

Limit: templates must be at least 200 pixels on each edge (divide by 96 for inches). Smaller labels — 2 × 1 inch product labels, 4 × 2 inch address labels, most jewellery and shelf-edge labels — cannot be a template on their own. For those, make a template the size of the full label sheet and lay the labels out on it yourself, or use label software.

A label per row

Save the template once (HTML and CSS at the label size, fields in {{ }}), then send the rows:

curl -X POST "https://shareglint.com/v1/batches" \
  -H "Authorization: Bearer sk_live_..." \
  -H "Content-Type: application/json" \
  -d '{
    "template": "shipping-label-4x6",
    "format": "pdf",
    "csv_url": "https://example.com/exports/todays-orders.csv"
  }'

The CSV has a column per field — name, address lines, order number, a barcode image URL — plus filename (the order number works) and id. Every row comes back as a PDF, and the ZIP holds them all, named by filename. Rows per batch by plan: Free 50, Starter 500, Pro 1,000, Scale 2,000, Business 5,000. For one label at a time — printing at the packing station as each order is packed — POST /v1/images?wait=true with "format": "pdf" returns the PDF in seconds.

Barcodes and QR codes

We lay codes out; we do not generate them. Make the code with a library — for barcodes, for example, bwip-js in JavaScript, which renders many barcode types including Code 128 and EAN-13 — upload the PNG or SVG, and pass its public URL to an image field. For QR codes, see QR code images.

Barcodes are less forgiving than text: scanners need sharp edges and a quiet zone. Generate the barcode image at a high resolution, keep it at its intended size in the template (do not stretch it), and test-scan a printed label before printing a batch. For carrier shipping labels, your carrier's API usually produces the label itself, with its own barcode rules; templates are better for your own labels around it — packing slips, return labels, product labels.

  • Print at 100 %, not "fit to page", or the label's size changes.
  • Thermal label printers (4 × 6 in) can usually print the PDF as is when its page size matches the label stock; check the printer driver's page size.
  • Colour: the PDF is RGB. Black text and barcodes print the same everywhere; for brand colours on professional print, ask your printer about conversion — we do not produce CMYK.
  • Fonts are the families installed on our renderer, embedded in the PDF; you cannot upload a font file.

Use cases

  • Shops: product labels, gift tags and packing slips at the label printer, one per order.
  • Events: name labels and badge inserts from the registration list (event graphics).
  • Warehouses and labs: shelf and sample labels with a code from your system — at sizes of at least 200 px per edge.
  • Retail: shelf signs and price cards (price-list and your own templates) for A6 or larger.

A packing-station setup

A common small-shop setup: when an order is marked as packed, the shop's system calls the API with the order's data and "format": "pdf", downloads the returned PDF and sends it to the label printer. The label arrives in seconds, from the same template every time. If a label has to be printed again, the same request returns the same PDF without using quota. For end-of-day batches — all of today's orders at once — the CSV batch above does the same and returns one ZIP for the printer queue.

Keep the template's fields close to the data you already have — order number, name, address lines, a code image — so the integration is a direct mapping, not a translation layer.

Cost

One render per PDF; repeats are free. Two hundred order labels a day is about 6,000 renders a month; compare that with the plans' monthly quotas (Starter: 2,000, Pro: 10,000). Fifty event name labels are 50 renders, once. The Free plan's 100 renders carry a watermark, which a label cannot have; Starter is $9 a month (pricing).

What it does not do

  • No labels smaller than 200 pixels on an edge as a template of their own.
  • No multi-label sheets: one label per PDF; imposing them on A4 or Letter sheets is a separate step.
  • No barcode or QR generation, no CMYK output, no direct printing.
  • No carrier integration: shipping labels with carrier barcodes come from the carrier's own API.

The event-badge template is a ready badge layout; copy it into your account and set its width and height to your label stock to start your own label.

FAQ

Can I generate labels as PDFs from a spreadsheet?

Yes. Make a template at the label's size, put one label per row in a CSV, and send it as a batch with format pdf. Each row becomes a one-page vector PDF exactly the label's size, all of them in one ZIP.

How do I set the label size?

The PDF page is the template's size in CSS pixels at 96 pixels per inch: a 4×6 inch label is a 384×576 template, a 100×150 mm label about 378×567. Templates must be at least 200 pixels on each edge.

Can it print several labels on one A4 sheet?

No. Each PDF is one label. Label sheets (several labels on A4 or Letter) need a PDF imposition step, which most label printing software and print shops do.

Do you generate barcodes?

No. Like QR codes, a barcode is an image you generate with a barcode library and pass by URL to an image field in your template.