Denmark CPR Number Decoder

Decode a Danish CPR (personnummer) — date of birth, gender and century.

Ad placeholder (leaderboard)
Enjoying the tools? Go Pro for £4.99 (one-time) and remove all ads — forever, on this device. Remove ads — £4.99

Denmark CPR number decoder

Decode a 10-digit Danish CPR number (personnummer), written as DDMMYY-SSSS. It reveals the structural information encoded in the number — date of birth, gender and birth century — for anyone learning how the Danish personal identification system is built.

How it works

A CPR number packs three pieces of information into ten digits:

  • DDMMYY — the date of birth (day, month, two-digit year).
  • Birth century — derived from the 7th digit (first serial digit) plus the year, using the official CPR century table. Serial 0-3 → 1900s; 4 or 9 → 2000-2036 (years 00-36) else 1900s; 5-8 → 2000-2057 (years 00-57) else 1800s.
  • Gender — the parity of the last digit: odd = male (mand), even = female (kvinde).

The tool also runs the historical modulus-11 control (a weighted checksum) but treats it only as a legacy hint, because Denmark officially abandoned it on 1 October 2007.

Example

For 010203-4567:

FieldValue
Date of birth1 February 2003
Serial4567
Century ruleserial digit 4, year 03 → 2003
Genderlast digit 7 (odd) → Male

It is privacy-first: nothing leaves your browser, and the decoder only interprets the structure of the number — it does not check it against any government register.

Ad placeholder (rectangle)