International · Saudi Arabia
Saudi national ID and iqama validator.
Check a 10-digit Saudi national ID or iqama number: leading digit and check digit. Runs in your browser.
How it works: A Saudi national ID or iqama number has 10 digits. The first digit is 1 for a Saudi citizen or 2 for a foreign resident, digits 2 to 9 are a serial, and digit 10 is a verification digit. The Ministry of Interior has not published the formula; third-party validators use the Luhn check.
Inputs
Test values (not real people’s numbers):
Result
Enter a number and press Check.
How the Saudi Arabia National ID / Iqama check works
A Saudi national ID or iqama number has 10 digits. The first digit is 1 for a Saudi citizen or 2 for a foreign resident, digits 2 to 9 are a serial, and digit 10 is a verification digit. The Ministry of Interior has not published the formula; third-party validators use the Luhn check.
| Digit | Meaning |
|---|---|
| 1 | 1 Saudi citizen, 2 foreign resident (iqama), 3 or 5 visitor or GCC citizen, 6 pilgrim, 7 entity |
| 2-9 | Serial number |
| 10 | Verification digit. Third-party validators use the Luhn check: double every second digit starting from the first, subtract 9 from results above 9, and the total must be divisible by 10 |
Worked example, 1012345672: doubling digits 1, 1, 3, 5, 7 gives 2, 2, 6, 10 (folded to 1), 14 (folded to 5); adding the others 0, 2, 4, 6, 2 gives 2+2+6+1+5 = 16 and 0+2+4+6+2 = 14. The total 30 is divisible by 10, so the check passes. This example is a published test value, not a person's number.
What this tool cannot tell you
Only the Ministry of Interior, through Absher and authorised channels, can confirm that a national ID or iqama number was issued. A passing check digit does not. A passing result means the number is well formed. It does not mean it was issued, is current, or belongs to anyone. Official sources to use instead: Absher (Ministry of Interior services).
Where each rule comes from
Not every issuer publishes its check rules. This table says, for each rule used here, who documents it and how firmly.
| Rule | Source | Status |
|---|---|---|
| 10-digit computer number; leading 1 citizens, 2 residents, 3/5 visitors and GCC citizens, 6 pilgrims, 7 entities; final digit is a verification digit | SAMA Rulebook, Account Opening Rules, Appendix (C), explaining the Ministry of Interior ten-digit computer number | Published by the issuer |
| The formula for the verification digit | SAMA says the Ministry of Interior National Information Center supplies it to entities that need it. The Luhn check used here comes from third-party validators (npm arabicfmt, NuGet SaudiNationalIdValidator). Microsoft Purview's classifier does not enforce a check digit at all. | Not published; reverse-engineered |
Frequently asked questions
How do I validate a Saudi national ID number?
Enter all 10 digits. The tool checks the length, that the first digit is a recognised type (1 or 2 for personal numbers) and that the final digit satisfies the Luhn check.
What is the difference between a national ID and an iqama number?
The first digit. Numbers starting with 1 belong to Saudi citizens and numbers starting with 2 to foreign residents, per the Ministry of Interior structure SAMA publishes.
Is the check digit officially documented?
Not publicly. The Ministry of Interior releases the formula only to entities that request it, so the Luhn rule here is the one third-party validators apply. A number that fails should be re-checked at the source.
Is it safe to enter an ID here?
The check runs in your browser and nothing is sent, stored or logged. Only enter numbers you are entitled to use.
Sources
- SAMA Rulebook, Account Opening Rules, Appendix (C) (retrieved 15 October 2026)
- SaudiNationalIdValidator (NuGet) (retrieved 15 October 2026)
- arabicfmt validate (unpkg type definitions) (retrieved 15 October 2026)
- Microsoft Purview, Saudi Arabia National ID (format without check digit enforcement) (retrieved 15 October 2026)
- Luhn algorithm (retrieved 15 October 2026)
Format check only — not an official verification
This tool checks structure and, where a public algorithm exists, a check digit, entirely in your browser. It does not query any government register, and it cannot confirm that a number was issued or to whom. Nothing you type is transmitted, stored or logged.