Danish CPR Number Validator
Official validator for Danish CPR Number with checksum verification and mathematical integrity.
About the Danish CPR Number
The CPR (Det Centrale Personregister) number is the Danish national personal civil registration identifier assigned to all citizens and residents.
It is essential for digital identity (MitID), universal healthcare, banking, taxation (SKAT), and public services.
Danish CPR Number Anatomy
The Danish CPR number consists of 10 digits formatted as DDMMYY-SSSS:
| Position | Field | Length | Meaning & Rule | Example |
|---|---|---|---|---|
| 1 to 6 | Birth Date | 6 digits | Date in DDMMYY format | 010180 |
| 7 | Century Digit | 1 digit | Determines the century in combination with the year digits | 1 |
| 8 to 9 | Serial Sequence | 2 digits | Daily personal registration sequence | 23 |
| 10 | Check & Gender | 1 digit | Modulo 11 check digit; Odd for males, Even for females | 3 |
Official Danish CPR Algorithm (Modulo 11)
Calculation regulated by the CPR Administration of Denmark:
Sum = Σ(d[i] * w[i]) with w = [4, 3, 2, 7, 6, 5, 4, 3, 2, 1]; Valid if Sum mod 11 == 0.
- 1. Validate the birth date in the first 6 digits (DDMMYY).
- 2. Multiply all 10 digits by the positional weights [4, 3, 2, 7, 6, 5, 4, 3, 2, 1].
- 3. Sum the 10 weighted products.
- 4. The CPR is mathematically valid if the total sum is divisible by 11 (Sum mod 11 == 0).
- 5. The 10th digit defines gender: odd numbers denote males, even numbers denote females.