The Norwegian fødselsnummer is the 11-digit national identity number assigned to all residents of Norway by the National Registry (Folkeregisteret). Beyond being a simple reference code, it encodes a person’s date of birth, a gender indicator and two independently computed mod-11 control digits that catch most transcription errors. This validator checks every one of those rules in sequence, tells you exactly which check failed and why, and extracts all embedded information when the number is fully valid.
Structure of the fødselsnummer
The 11 digits divide into three parts:
D D M M Y Y I I I K1 K2
↑ ↑ ↑
Birth date Indiv. Control digits
(6 digits) (3) (2)
Date of birth (DDMMYY): The first six digits encode day, month and two-digit year. The century is not stored explicitly — it is derived from the individual number combined with the two-digit year (see the FAQ above for the exact rules).
Individual number (III): A three-digit sequence, allocated sequentially within each birth date by the National Registry. The last digit of this group encodes gender: odd means male (Mann), even means female (Kvinne).
Control digits (K1, K2): Two digits computed from the preceding digits using the Norwegian mod-11 algorithm with two distinct weight vectors. They exist solely to detect errors.
The mod-11 algorithm in detail
Both control digits follow the same calculation pattern:
- Take the applicable slice of digits (digits 1-9 for K1; digits 1-10 for K2).
- Multiply each digit by its corresponding weight from the official weight vector.
- Sum all products.
- Compute
sum mod 11. - If the remainder is
0, the control digit is0. - Otherwise the control digit is
11 - remainder. - If step 6 produces
10, no valid digit exists — the input string cannot be a legitimate fødselsnummer.
K1 weights: 3 7 6 1 8 9 4 5 2 (applied to digits 1 through 9)
K2 weights: 5 4 3 2 7 6 5 4 3 2 (applied to digits 1 through 10, including K1)
Because K2 depends on K1, a single digit error will typically fail both checks, while a transposition near the end may only fail K2. The step-by-step trace in the validator makes it immediately clear which control digit diverges and what the correct value is.
Example walkthrough
Consider the (obviously fictional) 11-digit sequence where the date portion reads
010190 (1 January 1990), individual number 124 (last digit 4 — even — female), and
then two control digits that the algorithm computes. Applying K1 weights to the first
9 digits gives a certain weighted sum; 11 - (sum mod 11) yields the expected K1. The
same process over the first 10 digits yields K2. If the supplied digits match those
computed values the validator shows five green ticks and surfaces:
| Field | Extracted value |
|---|---|
| Number type | Ordinary |
| Date of birth | 1 January 1990 |
| Gender | Female (Kvinne) |
| Individual number | 124 |
| Checksums | Both pass mod-11 |
Changing any single digit — including the control digits themselves — will produce a different checksum and turn at least one check red with an explanation.
Special number types
D-numbers are issued to people with a temporary relationship to Norway (foreign workers, students, seasonal visitors). They are identical in structure to ordinary fødselsnummers except that 40 is added to the day digit, making the first digit 4-7. The validator detects this, subtracts 40 to recover the real day and labels the result as a D-number.
H-numbers are internal help identifiers used by healthcare and administrative systems when a real fødselsnummer is unavailable. They add 40 to the month, shifting the third digit. The validator handles H-numbers the same way.
Both types carry the same two mod-11 control digits and are validated identically.
Privacy
Every calculation runs entirely in your browser using plain JavaScript arithmetic. No network request is made. The number you enter never leaves your device. The demo sample shown in the tool is generated client-side from a fully fictional date and has never been issued to any real person.