ForHosting KIT · Developer Utilities

Iceland kennitala check digit

Enter the date and serial 12017433 and get the kennitala check digit 9, worked out with the weighted modulus-eleven rule of the Icelandic National Registry. You can also paste a full ten-digit kennitala to see whether its last digit matches. Free in your browser.

  • Free
  • Runs in your browser
  • No sign-up
  • Your data stays on your device
Use it from WebAPIEmailTelegramApp soon
If you enter
Number
12017433
You get
Calculation mode
Compute
Input
12017433
Date
120174
Serial
33

The Icelandic kennitala is the national civil identification number used for taxation, banking, healthcare, employment, and most public-facing forms in Iceland. The check digit is not random decoration: it is produced by a fixed weighted modulus-eleven sum over the first eight digits so that a single mistyped digit is usually rejected before the number is stored or matched. This capability implements that checksum only. Compute mode accepts eight digits—date plus serial without century and check—or nine digits including the century, and returns the mod-11 digit plus structured fields. Validate mode accepts a ten-digit kennitala (optional hyphens or spaces) and reports whether the trailing digit matches the recomputed expected value.

How the Icelandic kennitala check digit is calculated

Each of those eight digits is multiplied by a fixed weight from the sequence three, two, seven, six, five, four, three, two; the eight products are added; the remainder of that sum divided by eleven is taken; and the check digit is eleven minus that remainder. If the result is eleven the check digit is written as zero. If the result would be ten the eight-digit base is unusable and a different serial must be chosen—the algorithm never emits ten as a stored check digit.

The ninth digit of a full kennitala is the century indicator (nine for the nineteen-hundreds, zero for the two-thousands, eight for the eighteen-hundreds) and does not enter the weighted sum at all. Validation recomputes the expected digit from the first eight digits and compares it to the tenth digit of the submitted number. Temporary and company-style identifiers that still follow the same ten-digit layout use the same weights; this tool does not invent a different algorithm for them.

The algorithm is deterministic and local: no population registry call, no clock, and no randomness. Compared with generic Luhn or mod-11 tools for cards and barcodes, the search intent here is narrow: people who need an Iceland kennitala check digit calculator for date-plus-serial bases or a ten-digit Icelandic personal number checker, not a payment or device tool.

Where kennitala check digits fit real Icelandic workflows

Banks and fintechs validate ten-digit kennitala values at account opening so a single transposition does not create a phantom customer and a rejected KYC record. ETL jobs that load Icelandic customer or employee master files walk every kennitala column in a CSV or XML feed, call validate mode, and quarantine rows where valid is false—catching both human edits and off-by-one bugs in generators.

Municipal and school systems often accept both hyphenated and compact forms; stripping spaces and hyphens before the digit check keeps the contract simple without inventing a second algorithm. Do not treat a passing kennitala check as proof that the holder is alive in the National Registry, has an Icelandic identity card, or is authorized for a service; it only proves the mod-11 digit is consistent with the date and serial under the official Icelandic kennitala weights.

Audit kennitala columns in master data

Batch-validate every kennitala in a CRM, EHR, or payroll CSV and quarantine rows whose check digit no longer matches the recomputed expected value.

What is an Icelandic kennitala check digit?

It is the tenth digit of the Icelandic personal identity number, computed with a weighted modulus-eleven sum over the six-digit birth date and two-digit serial so typing and scanning errors are usually caught before the number is stored.

What happens with wrong length, letters, or check digit ten?

A base whose weighted sum would yield check digit ten is also rejected. Failed validation tasks are not billed.

How is the kennitala check digit calculated?

Each of the first eight digits is multiplied by 3, 2, 7, 6, 5, 4, 3 and 2, the products are added and the remainder after dividing by 11 is taken. The check digit is 11 minus that remainder, and a result of 11 is written as 0.

What does the ninth digit of a kennitala mean?

It is the century indicator: 9 for people born in the nineteen-hundreds, 0 for the two-thousands and 8 for the eighteen-hundreds. It is left out of the weighted sum, so it never changes the check digit.

Does a correct check digit prove the person exists?

No. The tool only does the arithmetic and looks nothing up in a registry, so a valid kennitala does not show that someone is alive, registered or entitled to a service. It does usually catch a single mistyped digit.

Everything on this page is available programmatically. This section is for teams who want to wire it into their own systems; everyone else can just use the tool above.

POSThttps://api.kit.forhosting.com/enc/kennitala-iceland

Prefer to automate it? One authenticated POST creates the task; the result comes back by webhook or a signed link. The same capability also runs here on the web, by email and from Telegram — and soon from our app too.

curl -X POST https://api.kit.forhosting.com/enc/kennitala-iceland \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"number":"12017433"}'
{
  "number": "12017433"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "enc.kennitala_iceland",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

The API is asynchronous: the call returns a task_id immediately and the result arrives by webhook. Polling is capped at 1 req/s per task.

Per request$0.002

Published price — no tokens, no invented credits. A failed task is never charged.

HTTPCodeMeaning
401unauthorizedMissing or invalid API key.
402insufficient_balanceYour balance doesn't cover the task price.
404unknown_typeThat task type doesn't exist.
429rate_limitedToo many requests. Use the webhook instead of polling.

In its standard form it is ten digits: six digits for the birth date as day-month-year (DDMMYY), two digits for a serial assigned within that day, one century indicator, and one trailing check digit. Non-numeric bodies and wrong lengths fail with invalid_input instead of silent stripping. The same pure arithmetic runs free in the browser and at the published API price, with no registry lookup and no claim that a valid checksum means the person is living, registered, or entitled to any service.

How the Icelandic kennitala check digit is calculated

Under the Icelandic National Registry rules, the kennitala check digit is a modulus-eleven value computed on eight digits: the six-digit birth date DDMMYY followed by the two-digit serial.

Input contract, modes, and error behaviour

Send a number field that contains the kennitala body. Mode compute is the default: the engine accepts exactly eight digits (DDMMYY plus two-digit serial) or nine digits (those eight plus the century digit). Wrong length is an explicit error that names the mode and the length you sent—eight or nine for compute, ten for validate—so client forms can show a precise message without guessing. Empty strings, missing number, and invalid mode values fail before any weighted sum runs and are not billed. A well-formed string that simply has the wrong check digit returns valid false without throwing. Spaces and hyphens are stripped so common Icelandic display forms such as 120174-3399 are accepted after normalization; other punctuation and letters are rejected as non-numeric input with invalid_input so a silently stripped value never reaches storage. On success it returns check_digit as a one-character string, payload as the eight weighted digits, date as DDMMYY, serial as the two serial digits, and algorithm set to iceland-kennitala-mod11. When nine digits are supplied it also returns century and with_check as the completed ten-digit kennitala. If the weighted sum would produce check digit ten the request fails with invalid_input naming the unusable base rather than inventing a digit. Mode validate accepts exactly ten digits; the response reports valid true when the trailing digit matches the recomputed expected_check_digit, and always includes payload, check_digit, expected_check_digit, date, serial, century, and length. Alias keys such as kennitala, kt, digits, and code are accepted for the same payload field so integrations that already speak Icelandic field names do not need a rename. Because the path is pure parse with no clock, random source, or network, the same JSON body always yields the same JSON result on the free browser tool and on the API at $0.002 per successful request.

Where kennitala check digits fit real Icelandic workflows

Healthcare portals and pharmacy systems recompute expected_check_digit when a clinic reads a number over the phone or pastes it from a scanned card, catching mistypes before a journal entry or prescription is filed. Employers and payroll vendors complete eight-digit bases in sandboxes with compute mode, then store with_check when century is known for test employees that must look like production identifiers.

Complete an 8-digit kennitala base for test fixtures

Call compute mode with DDMMYY plus two serial digits (optionally plus century), store check_digit or with_check, and use the result in sandbox KYC, payroll, or healthcare test records.

Validate typed or imported Icelandic kennitala numbers

When a form, bank file, or HR feed submits ten digits, call validate mode and block enrollment when valid is false, showing expected_check_digit to help correct a single mistype.

How do I compute a kennitala check digit with this API?

POST with number set to exactly eight digits (DDMMYY plus serial) or nine digits (plus century) and mode compute (or omit mode). The response includes check_digit; with nine digits it also returns with_check (the full ten-digit form).

How do I validate a full ten-digit kennitala?

POST with the digit string (optional hyphens or spaces) and mode validate. The response includes valid, check_digit, expected_check_digit, and payload (the eight weighted digits).

Is the kennitala check digit tool free?

The browser tool is free. API requests use prepaid KIT balance at $0.002 per successful call; invalid input is not billed.

Read the full KIT documentation →