This Bulgarian EGN validator checks a Unified Civil Number against its
official weighted checksum, and decodes the birth date encoded in the first six digits.
Everything runs in your browser — nothing is sent anywhere.
How to use it
Enter the 10-digit EGN and click "Check EGN". The tool decodes the birth date (accounting
for the century-offset month encoding) and verifies the final digit against the checksum
formula.
How the checksum works
Each of the first nine digits is multiplied by a fixed weight —
2, 4, 8, 5, 10, 9, 7, 3, 6 — and the products are summed. The check digit is
that sum modulo 11, with one special case: if the remainder is 10, the check digit is 0
instead. This construction catches the vast majority of single-digit typos and
transpositions.
Why the month can be greater than 12
Bulgaria needed a way to encode birth years across three centuries within a 2-digit year
field, so the month digits carry an extra signal: unmodified for the 1900s, +20 for the
1800s, and +40 for the 2000s. A raw month value of "41", for example, decodes to January of
a year in the 2000s.
Frequently asked questions
What is an EGN?
EGN (Единен граждански номер, "Unified Civil Number") is Bulgaria's 10-digit personal identification number, assigned to every citizen and encoding their birth date plus a checksum.
How is the birth date encoded?
The first 6 digits are YYMMDD, but the month is offset by century: 01–12 for people born 1900–1999, 21–32 for 1800–1899 (month + 20), and 41–52 for 2000–2099 (month + 40). This tool decodes whichever century the month digits imply.
How does the checksum work?
Each of the first 9 digits is multiplied by a fixed weight (2, 4, 8, 5, 10, 9, 7, 3, 6), the results are summed, and the sum modulo 11 gives the check digit — except a remainder of 10, which maps to 0 instead of being rejected.
Does a valid checksum mean the EGN is real?
No. It confirms the number is structurally well-formed — the right length, a plausible encoded date, and a matching checksum — not that it was actually issued to a real person. There is no public Bulgarian government API to confirm that.
Is my EGN sent anywhere when I use this tool?
No. Validation happens entirely in your browser via JavaScript. Nothing is transmitted, logged, or stored.