Skip to content

NAAB sire codes

A NAAB code (NAAB uniform code) is the standard identifier for an AI sire in North America, assigned under the National Association of Animal Breeders coding system. It has three parts:

  1. Stud (semen producer) code: a number identifying the AI organization that collects and markets the bull, usually 1–3 digits.
  2. Breed code: two letters for the bull’s breed.
  3. Bull number: a number unique to that bull within the stud and breed, usually up to 5 digits.

Example format: 7HO12345 = stud 7, Holstein, bull 12345. (Illustrative; not a real bull.)

Common breed codes (NAAB uniform breed codes, as of Nov 2026):

Code Breed Type
HO Holstein Dairy
WW Red & White Holstein Dairy
JE Jersey Dairy
BS Brown Swiss Dairy
GU Guernsey Dairy
AY Ayrshire Dairy
MS Milking Shorthorn Dairy
XD Dairy crossbreeds Dairy
XX Dairy × beef crossbreeds Cross
AN Angus Beef
AR Red Angus Beef
SM Simmental Beef
CH Charolais Beef
LM Limousin Beef
HP / HH / HB Polled / Horned / Black Hereford Beef
BB Belgian Blue Beef
KB Kobe (Wagyu) Beef
XB Beef crossbreeds Beef

Note that WA is White Angus (Ona), not Wagyu. Composite beef sires marketed for beef-on-dairy usually carry their own breed code (e.g. BX Black Maximizer, NP Angus Plus) or XB; look each one up on the NAAB list.

Sexed semen is not a separate breed code. It is usually identified by a different stud code for the same bull (sexed product lines carry their own stud prefix), or by a separate semen-type field. Check how each stud codes it.

The breed code is the reliable way to classify a service:

  • Beef service: breed code is a beef breed (AN, AR, SM, CH, LM, …).
  • Dairy service: dairy breed code; split further into sexed and conventional.
  • Unknown: no code, a herd-local code (e.g. a cleanup bull “BULL”, “NS”), or a code that doesn’t parse.

The service sire is stored on each BRED event. DC305 keeps a sire list (table of bulls with NAAB code, name and breed), and BRED events reference it.

EVENTS BRED ID LACT FOR EDAY>-365 \2 breedings with sire, last 12 months
BREDSUM\S FOR LACT>0 conception rate by service sire
BREDSUM\Z FOR LACT>0 conception rate by breed of sire
BREDSUM\M FOR LACT>0 conception rate by sire manufacturer (stud)

To classify beef vs dairy, parse the breed letters out of the code, or map each sire in the herd’s sire list to a breed. Herds often type short names or local codes instead of the full NAAB code; map those in the herd’s private dc305-vocab page.

Herd context: US Holsteins, freestall or dry-lot, AI breeding with a mix of sexed dairy, conventional dairy and beef semen.

  • A herd uses tens to a few hundred distinct sire codes a year.
  • In herds that practice beef-on-dairy, beef services are often 25–50% or more of all cow services.
  • Leading zeros and formatting. 007HO12345, 7HO12345 and 7HO012345 can all be the same bull. Normalize stud and bull numbers (strip leading zeros) before matching.
  • Classifying by bull name. Names are not unique and are abbreviated differently; use the breed code.
  • Missing sexed semen. Sexed and conventional semen of the same bull have different codes or flags; group them separately for conception rate.
  • Local codes. Cleanup bulls, embryo transfers and “unknown sire” entries have no NAAB code; report them as their own group, not as dairy.
  • Breed code is the sire’s breed, not the calf’s: a beef bull on a Holstein gives a crossbred calf.
  • Ignoring embryo transfer services, which may carry the embryo’s sire code rather than an AI bull.