Code 93Linear (1D)Reference onlyIntroduced 1982

Code 93

A denser, more secure sibling of Code 39 offering full ASCII and two mandatory check characters, used mainly in logistics and by the Canadian postal system.

Code 93 Specification

Character set0-9, A-Z, minus, period, space, $ / % +; full ASCII via shift characters
Data lengthVariable; practical limit ~70 characters
Check digitTwo mandatory check characters (C and K, modulus 47)
Density≈20 alphanumeric characters per inch at 0.19 mm X-dimension
Module width (X-dimension)0.19-0.50 mm typical
Print ratioVariable-width bars and spaces (no fixed wide:narrow ratio)
MagnificationNot fixed by the standard; scales with X-dimension
Quiet zone10X on each side
StandardANSI/AIM BC5-1995 (AIM USS-93)
OriginIntermec (Laurer-era Intermec engineering), 1982

Not generated by barcodegen.net

Code 93 is documented here for completeness, but our free generator does not produce this symbology. The closest supported format is Code 39.

What Is Code 93?

Code 93 was designed in 1982 by Intermec to answer Code 39's two weaknesses: low density and weak error detection. Each Code 93 character spans 9 modules with three bars and three spaces, packing roughly 30% more data per inch than Code 39. Two check characters — a "C" modulus 47 and a "K" modulus 47 — are mandatory in every symbol, catching nearly all substitution and transposition errors that a Code 39 Mod 43 check (when used at all) can miss.

Full ASCII is covered through four shift characters ($, %, /, +) rather than Code 39's extended escape scheme. In practice Code 93's adoption stayed regional: it is mandated by Canada Post for postal routing and appears in some legacy logistics and electronics labeling, but Code 128 — which matches its density with a cleaner ASCII mechanism — captured most general-purpose use. Encoders and scanners almost universally support it.

Common Applications

  • Canadian postal routing codes
  • Legacy logistics and electronics component labels
  • High-density alphanumeric internal tracking