NHS Number Validator

Paste a 10-digit NHS Number to check whether its Modulus-11 check digit is correct.
Computed locally in your browser with the Modulus-11 algorithm. Your NHS Number stays only on this page.

What an NHS Number is

An NHS Number is the 10-digit patient identifier used across the UK National Health Service, shown grouped as NNN NNN NNNN. The first nine digits identify the record and the tenth is a Modulus-11 check digit that guards against transcription errors. This tool checks that trailing digit and shows the expected value when it is wrong. This is the NHS Number (patient ID), not the UK National Insurance Number.

How the Modulus-11 check works

Each of the first nine digits (1-indexed) is multiplied by the weight 11 − position, giving weights 10, 9, 8, 7, 6, 5, 4, 3, 2. The weighted sum is taken modulo 11 and the check digit is 11 − remainder, where 11 maps to 0. A remainder that would produce a check digit of 10 is invalid: those nine digits have no valid check digit, so the number can never be valid. Spaces and hyphens are ignored, so grouped input works as-is.

Format only — not a real patient

This validator checks the NHS Number's format and check digit only. A passing number is not necessarily allocated by the NHS or tied to a real patient — there is no database lookup. Use it to sanity-check that an NHS Number is well-formed, not to confirm that a specific patient record exists.

Related tools

Need valid NHS Number fixtures instead of checking one? Try the NHS Number generator to generate a sample, then paste it here to see it pass.