Decode one
Scan or paste a barcode and see every part of it.
Make one
Generate a valid barcode from fields.
Where you’ll see it
- Mobile train tickets, on many European rail networks.
- Airline boarding passes, especially on phones.
- Transit and event tickets.
Anatomy
Aztec is read from the center out:Compact and full-range
Aztec comes in two forms:
The largest full-range code holds up to 3,832 digits, 3,067 letters and digits, or 1,914 bytes.
No quiet zone
Because a scanner finds the code from its center, Aztec doesn’t need a margin around it. That makes it easier to fit on a busy ticket, and more forgiving when a phone screen is cropped or partly covered.Error correction
Aztec’s error correction is a percentage of the data, from 5% to 95%. The recommended minimum is 23% plus 3 codewords. Use the minimum for tickets on screens, and 50% or more for codes printed on things that get handled roughly. See How much error correction should I use? The bullseye isn’t protected by error correction. If it’s damaged, the scanner can’t find the code.Variants and related types
- Aztec Runes: tiny 11×11 codes that hold a single byte, used as markers.
- QR Code: needs a quiet zone and finds the code from its corners rather than its center.
- PDF417: the other common barcode on boarding passes, especially printed ones.
Gotchas
- Something over the center. A logo, a fold or a thumb over the bullseye makes the code unreadable, however much error correction it has.
- Mistaken for QR Code. Both are square and black and white. If your app reads tickets, enable both.
Scanning it in your app
Specification
- ISO/IEC 24778: the Aztec barcode specification.