Skip to content

PDF417 barcode generator

The stacked barcode that carries a paragraph rather than an identifier. If you have scanned the strip on a boarding pass or the back of a driving licence, you have scanned PDF417.

Generate a PDF417 barcode

#000000
#ffffff

SVG shape mask (decorative)

Upload an SVG — the barcode is clipped to its shape. A horse SVG makes a horse-shaped barcode.

Live preview

PDF417 stands for Portable Data File, and 4-17 describes its building block: each codeword is 17 modules wide and made of four bars and four spaces. Those codewords are stacked into between 3 and 90 rows, with a start and stop pattern down each side and row indicators that let a scanner reassemble the symbol even if it reads the rows out of order.

What sets it apart is capacity. A single PDF417 symbol holds up to 1,850 text characters, 2,710 digits or 1,108 bytes — enough for a full record rather than a pointer to one. That is why it ends up on documents that must remain readable offline: an AAMVA-compliant driving licence carries the holder’s name, address and licence details in the barcode itself, with no database lookup required.

Error correction is selectable from level 0 to level 8, adding progressively more Reed–Solomon codewords. Higher levels make the symbol bigger but let it survive folding, staple holes and the general abuse a paper document receives.

What PDF417 encodes

Character set Text, numeric and byte compaction modes; full binary supported
Capacity Up to 1,850 text characters, 2,710 digits or 1,108 bytes
Structure 3–90 rows × 1–30 data columns, each codeword 17 modules of 4 bars and 4 spaces
Error correction Reed–Solomon, selectable levels 0–8
Dimensions Two-dimensional (stacked linear)
Quiet zone 2 modules on every side
Standard ISO/IEC 15438

Where PDF417 is actually used

Driving licences and ID cards

The AAMVA standard for North American licences puts the full cardholder record in a PDF417 on the back.

Boarding passes

IATA BCBP encodes the passenger, flight and sequence data in a PDF417 or an Aztec code.

Shipping and customs documents

Waybills and manifests where the paper has to be self-contained.

Government forms

Tax and benefit forms that encode the printed values so they can be recaptured without OCR.

Rules this PDF417 generator enforces

  • Almost any content is valid; the practical limit is capacity and physical size.
  • Long payloads produce tall, wide symbols. Check that the result still fits your document before committing to a layout.
  • Raising the error correction level increases the symbol size. Level 5 is a reasonable default for printed paper.
  • If you only need to encode an identifier, a linear barcode or Data Matrix will be much smaller.

Printing a PDF417 symbol that scans

PDF417 is wide and short, so give it the full width of the area you have. Its row height is deliberately small relative to its width, which means vertical scaling matters: squashing rows together is a common cause of failed reads on documents that were resized to fit.

Print at 300 dpi or better. Each module is small, and a laser printer at draft quality can merge adjacent modules within a row. Export SVG for any document going to a commercial press.

PDF417 questions

How much text can PDF417 hold?

Up to 1,850 characters of text, 2,710 digits or 1,108 bytes in a single symbol, before error correction overhead.

Why is my PDF417 so large?

Because it carries the data itself rather than a reference. Reduce the payload, lower the error correction level, or use more columns and fewer rows to change the aspect ratio.

Can a phone scan PDF417?

Yes, most modern barcode apps decode it, though it needs a steadier, closer shot than a QR code because the modules are finer.

Other barcode formats