South African ID Number Format Explained: What Every Digit Means

Every South African carries a 13-digit identity number — on their green ID book, smart ID card, or just memorised from years of filling in forms. But most people have no idea what those digits actually mean. Each section of the number encodes specific personal information, and the final digit is a mathematical check that catches typos and fraud.

Here is a complete breakdown of the South African ID number format, digit by digit. If you are looking for a broader overview of what a South African identity number is and who receives one, start with our guide: What Is a South African Identity Number? For a practical guide on where the number appears across your Smart ID, green ID book, driver's licence, and passport, see our guide to the identity document number.

The Structure: 13 Digits, 4 Sections

A South African ID number follows this pattern: YYMMDD SSSS C A Z

  • YYMMDD (digits 1–6) — Date of birth
  • SSSS (digits 7–10) — Gender sequence
  • C (digit 11) — Citizenship status
  • A (digit 12) — Previously used for race classification (now obsolete)
  • Z (digit 13) — Checksum digit (Luhn algorithm)

Digits 1–6: Date of Birth

The first six digits represent your date of birth in YYMMDD format. For example, if someone was born on 15 March 1990, their ID number starts with 900315.

Because only two digits are used for the year, there is an ambiguity between centuries. The Department of Home Affairs resolves this by context: numbers with a year value of 00–26 are assumed to be in the 2000s, while 27–99 are in the 1900s. This threshold shifts as time passes.

The date of birth section is the most immediately useful part of an ID number. It allows systems to calculate a person's age instantly, which is why retailers, banks, and online platforms often ask for an ID number rather than a date of birth separately.

Digits 7–10: Gender

The four-digit gender sequence ranges from 0000 to 9999. The rule is straightforward:

  • 0000–4999 — Female
  • 5000–9999 — Male

This is a sequential number assigned at registration, not a code with deeper meaning. For a practical guide to reading this digit, see our article on how to check gender from a South African ID number. If multiple people share the same date of birth, each receives the next available number in the sequence for their gender.

Digit 11: Citizenship Status

The eleventh digit indicates whether the ID holder is a South African citizen or a permanent resident:

  • 0 — South African citizen
  • 1 — Permanent resident

This is a binary value with no grey area. Temporary residents, refugees, and asylum seekers are issued different documentation and do not receive standard 13-digit ID numbers. For the full picture — including what a permanent resident smart ID looks like, how refugee IDs differ, and which documents non-citizens need at Home Affairs — see our guide to non-citizen IDs in South Africa.

Digit 12: The Race Digit (Obsolete)

There is a persistent misconception that the twelfth digit still encodes race. This was true under the apartheid-era Population Registration Act, which classified South Africans by race. After the Act was repealed in 1991, the digit lost its original purpose.

In modern ID numbers, the twelfth digit is typically 8 or 9 and carries no meaningful classification. It is retained in the format for structural consistency but should not be interpreted as race data.

Digit 13: The Luhn Checksum

The final digit is the most technically interesting. It is calculated using the Luhn algorithm (also known as the "modulus 10" algorithm), a simple checksum formula designed to catch accidental errors in number sequences.

The Luhn algorithm works by doubling every second digit from the right, subtracting 9 from any result over 9, then summing all digits. If the total is divisible by 10, the number is valid.

This is the same algorithm used to validate credit card numbers worldwide. It catches:

  • Single-digit errors (typing a 3 instead of an 8)
  • Most transposition errors (swapping two adjacent digits)

This is why the ID Checker tool can instantly tell you whether a number is structurally valid.

How to Read a SA ID Number: A Worked Example

Take the ID number 9003155800084:

  • 900315 — Born 15 March 1990
  • 5800 — Male (5800 falls in the 5000–9999 range)
  • 0 — South African citizen
  • 8 — Obsolete (formerly race)
  • 4 — Luhn checksum (validates the preceding 12 digits)

You can verify any ID number using our free South African ID Number Checker — it decodes all of this in real time as you type.

Why Does This Matter?

Understanding the ID number format is useful for several reasons:

  • Developers building South African applications need to validate ID numbers in forms, KYC processes, and data imports
  • HR and payroll teams verify employee details against ID documentation
  • Banks and financial institutions use ID validation as part of FICA compliance
  • Anyone who wants to double-check that an ID number on a form hasn't been copied incorrectly

The format has remained unchanged for decades and is embedded in countless South African systems, from SARS eFiling to medical aid registrations.

Frequently Asked Questions

Can I determine someone's race from their ID number?

No. The twelfth digit was used for race classification under apartheid but has been obsolete since 1991. Modern ID numbers use 8 or 9 in this position with no racial meaning.

Is a valid Luhn checksum proof that an ID number is real?

No. A valid checksum means the number is structurally correct. It does not confirm that the number was actually issued by Home Affairs. Only the Department of Home Affairs can verify whether a specific ID number belongs to a real person.

What about the green ID book vs the smart ID card?

Both use the same 13-digit ID number. The smart ID card is simply a more secure, modern format for carrying the same identity information. The underlying number and its structure are identical.

How do I check if my ID number is valid?

Use our free ID Number Checker tool on this site. Enter your 13-digit number and it will instantly validate the checksum and decode your date of birth, gender, and citizenship status — all without sending any data to a server.