Skip to main content

PDF417 Barcode Generator

Encode text, IDs, or shipping data into a PDF417 2D barcode — configurable error correction, columns, row height, and module scale, output as a scalable SVG. Runs entirely in your browser.

Input

Output

SVG source
 
PDF417 Barcode

Your PDF417 barcode will appear here.

Was this helpful?

Guides

Turn text, an ID, or shipping data into a PDF417 barcode — a stacked 2D symbology that packs far more data than a 1D barcode while staying scannable on plain paper. Tune the error correction level, column count, row height, and module scale, then copy the SVG or use the preview image directly. Everything runs locally in your browser.

How to use it

  1. Type or paste the data you want to encode — an ID card record, a shipping label, a URL, or any text.
  2. Choose an error correction level. Higher levels add more redundancy, so the barcode stays scannable even if part of the printed label is smudged or damaged, at the cost of a larger symbol.
  3. Set columns if you need a specific width (0 lets bwip-js pick the most compact layout automatically).
  4. Adjust row height and module scale to fit your label size and printer resolution.
  5. Copy the SVG source, or download it directly from the preview.

About PDF417

PDF417 ("Portable Data File, 417") is a stacked linear barcode — several rows of narrow bar-and-space patterns stacked on top of each other, each row starting and ending with its own guard pattern. That structure is what lets it hold up to about 1.1 KB of data (versus a few dozen characters for a 1D barcode like Code 128), which is why it's the format printed on US driver's licenses, boarding passes, and shipping labels. Reed–Solomon error correction, set by the error correction level here, means a barcode can still scan correctly even with some print damage or dirt.

Which error correction level should I use?

Level 2 is a solid default for clean, digitally-printed labels. Go higher (5–8) for labels that will be handled a lot, printed on lower-quality printers, or exposed to wear — each step up roughly doubles the redundancy, which also increases the symbol's size.

Why does the barcode look wider or narrower after I change columns?

PDF417 fits your data into a grid of columns and rows. Fixing the column count forces the encoder to use exactly that many columns, which changes how many rows it needs — useful when a label template expects a barcode of a specific aspect ratio. Leaving columns at 0 (auto) lets the encoder pick the layout that best balances width and height.

Is my data uploaded anywhere?

No. Barcode generation runs entirely in your browser (or, for API calls, isomorphically in the request handler) — nothing is sent to a third-party service.

Need a different barcode format?

Use the QR Code Generator for QR codes, the Data Matrix Generator for Data Matrix codes, or the Aztec Code Generator for Aztec Codes.

pdf417barcode2d barcodegenerator

Love the tools? Lose the ads.

One payment clears every ad from your account, for good. No subscription, no tracking.