Try an example:
Enter a number to validate. The number has the wrong length. Too many requests. Please wait a moment and try again. Network error. Check your connection and try again.
Date of birth
Gender
About Polish PESEL numbers
Structure and encoding
PESEL (Powszechny Elektroniczny System Ewidencji LudnoĊci) is an 11-digit personal identification number assigned to every person registered in Poland. It encodes the date of birth (digits 1-6), a serial number (digits 7-10, where digit 10 encodes gender), and a check digit (digit 11).
Date of birth and gender encoding
The date of birth uses century codes added to the month: months 01-12 for the 1900s, 21-32 for the 2000s, 41-52 for the 2100s, 61-72 for the 2200s, and 81-92 for the 1800s. For example, a month value of 23 means March in the 2000s. The gender is determined by digit 10: odd numbers indicate male, even numbers indicate female.
Checksum and usage
The check digit is calculated using the modulo 10 algorithm with weights [1, 3, 7, 9, 1, 3, 7, 9, 1, 3]. Each of the first 10 digits is multiplied by its weight, only the last digit of each product is kept, these are summed, and the check digit is (10 − (sum mod 10)) mod 10. PESEL is used for tax identification of private individuals, healthcare, social security, and official identification.
Use the validation API
All validators on this page are powered by our free REST API. Send a GET request with the number to validate and receive a structured JSON response with the validation result.
GET /api/v1/validate/pesel/44051401458
Host: polishdata.eu
// Response 200 OK
{
"valid": true,
"data": {
"pesel": "44051401458",
"date_of_birth": "1944-05-14",
"gender": "male"
},
"errors": []
}