What this calculates
Enter a date of birth and this gives the exact age at any other date: whole years, then whole months, then the days left over. It also counts the total days lived and the number of days until the next birthday.
The second date defaults to today but can be anything, so the same tool answers "how old will I be at the wedding", "how old was she in 1998", and "how many days between these two dates".
The formula
There is no single expression for a calendar age, because months are not the same length. It is done in stages.
Whole years
target year − birth year, less one if the birthday has not yet come roundWhole months
months from the last birthday to the target dateLeftover days
days since the monthly anniversary of the birth dateTotal days lived
(target date − birth date) ÷ one dayThe subtlety is in the third line. The monthly anniversary of 31 January is clamped to 28 February, because 31 February does not exist. Getting that wrong is what makes some age calculators report negative days for month-end birth dates.
Worked example
Check it against the shortcut and you can see why the shortcut fails: 13,073 ÷ 365 is about 35.82 years, which reads as 35 years and 10 months. That is a month out, because nine of the years in between were leap years.
When to use it, and the mistakes to avoid
Reach for this for forms that ask for an exact age, working out eligibility on a cut-off date, counting down to a birthday, or measuring the gap between any two dates.
What to watch for:
- Averaging instead of counting. Dividing days by 365 or 365.25 is an approximation, and it drifts further the older the person is.
- Ignoring the cut-off convention. Schools, sports leagues and visa rules often measure age on a fixed date, not today. Set the second field to that date.
- Assuming a birthday has passed. Someone born in November is a year younger for most of the calendar year than the simple year subtraction suggests.
- Month-end birth dates. A birth date of the 29th, 30th or 31st has no anniversary in shorter months; the answer depends on the convention used.
- Local time. Ages computed in local time can flip a day early or late for readers in other time zones. This one uses UTC throughout.
FAQ
How is an exact age worked out?
Count the whole years first, then the whole months since that birthday, then the days left over. The order matters: doing it the other way round, or dividing total days by 365.25, gives an answer that drifts by a day or two depending on where the leap years fall.
Why not just divide the number of days by 365?
Because roughly one year in four has 366 days. Dividing 13,073 days by 365 suggests 35.8 years, which is close but not exact, and the error grows with age. Calendar arithmetic counts real months and real leap days instead of averaging them away.
What happens if you were born on 29 February?
Three years in four have no 29 February, so there is no exact anniversary. This calculator observes the birthday on 1 March in common years, which is the most widely used convention and the one most legal systems follow for reaching an age. In leap years the birthday falls on 29 February as normal.
Why does 31 January to 1 March come out as one month and one day?
Because the monthly anniversary of 31 January is clamped to 28 February — there is no 31 February. From there, 1 March is one day later. The naive approach of borrowing 31 days from the previous month produces a negative day count for month-end birth dates, which is a common bug in age calculators.
Can I find my age on a date in the past or future?
Yes. The second field defaults to today, but you can set it to any date. That is useful for working out how old you will be at a future event, how old someone was on a particular day, or the exact gap between any two dates.
Does my time zone affect the result?
No. Every date is handled at UTC midnight, so the answer is the same wherever you open the page. If dates were handled in local time, an age would flip a day early or late depending on the reader's location, and daylight saving would introduce 23- and 25-hour days into the day counts.