How to Calculate Your Exact Age — A Complete Guide

Most people answer the question “How old are you?” with a single number of years. That is fine in conversation, but it hides a lot of detail. Your exact age is your age in years, months and days, counted on the real calendar, and it is the figure that forms, school admissions, job applications and official records often want. This guide shows how to work it out by hand, why a simple subtraction of years is not enough, and where leap years and months of different lengths change the answer.

The key idea is that exact age is not measured in equal blocks. A year is not always 365 days, because leap years have 366, and a month is not always 30 days, because months run from 28 to 31 days. So you cannot find your exact age by counting total days and dividing by 365, or by dividing by 30. You have to count completed years first, then completed months, then the remaining days, always following the calendar.

Step 1: count the completed years

Start with the difference between the two years, then subtract one year if your birthday has not happened yet in the current year. For example, someone born in 2000 is 26 in 2026 only after their birthday in 2026 has passed. Before that birthday, they are still 25. This is the single most common age mistake, and it comes from subtracting years alone without checking the month and day.

Think of it as anniversaries. Each birthday is one completed year. If you have not reached this year's birthday yet, that year is not complete, so it does not count. Once the birthday passes, the year count goes up by one, and the month count starts again from zero.

Step 2: count the completed months

After the completed years, count the full months since your last birthday. If your birthday is on 10 March and today is 29 October, you have completed 7 full months: March to April, April to May, May to June, June to July, July to August, August to September, and September to October. The month from 10 October to 10 November is not complete yet, so it does not count.

Months are counted by calendar dates, not by adding 30 days again and again. That matters because the months in between have different lengths. Counting from 10 March to 10 October always gives 7 months, whether those months had 31 days, 30 days or 28 days, because the day number, the 10th, is what marks each completed month.

Step 3: count the remaining days

The remaining days are simply the days since the last completed month. In the example above, the last completed month ended on 10 October, and today is 29 October, so the remaining days are 29 minus 10, which is 19 days. Put together, that person is 26 years, 7 months and 19 days old on 29 October 2026.

When the day number of today is smaller than the day number of your birthday, you have to borrow, just as in ordinary subtraction. Suppose you were born on 20 December and today is 29 October. You cannot count from 20 October to 29 October as a full month, because the month that started on 20 September ended on 20 October, and the next one has only run for 9 days. In that case the completed months are counted up to 20 October, and the remaining days are 9. Borrowing a month is what keeps the calendar arithmetic honest.

Leap years: why 29 February is special, and why it is not a trap

A leap year has 366 days, with an extra day on 29 February. Leap years happen in years divisible by 4, except for century years, which must also be divisible by 400. So 2024 was a leap year, 2000 was a leap year, but 1900 and 2100 are not. Over a lifetime, those extra days add up, which is why a person's age in days is always a little more than 365 times their age in years.

People born on 29 February sometimes wonder whether they age more slowly, because they only see their exact birth date every four years. They do not. Their age in years still increases by one on each anniversary, just as for everyone else. Someone born on 29 February 2004 was exactly 20 years old on 29 February 2024, even though they had only lived through five dates of 29 February. The calendar, not the number of birthdays celebrated on the exact date, decides the age.

In a non-leap year, a 29 February birthday is usually marked on 28 February or 1 March, depending on local custom, but that celebration date does not change the calculation. What matters for the arithmetic is the completed years since 29 February 2004, and the months and days since the last anniversary.

Worked example 1: a birthday already passed this year

Someone born on 10 March 2000 wants their exact age on 29 October 2026. First, the years: 2026 minus 2000 is 26, and the birthday on 10 March 2026 has already passed, so all 26 years count. Next, the months: from 10 March to 10 October is 7 full months. Finally, the days: from 10 October to 29 October is 19 days. Their exact age is 26 years, 7 months and 19 days. As a check, the total time lived is 9,729 days, which is more than 26 times 365, because it includes the leap days of 2004, 2008, 2012, 2016, 2020 and 2024.

Worked example 2: a birthday still to come this year

Someone born on 20 December 1995 wants their exact age on 29 October 2026. First, the years: 2026 minus 1995 is 31, but the birthday on 20 December 2026 has not happened yet, so only 30 years are complete. Next, the months: from 20 December 2025, the last birthday, to 20 October 2026 is 10 full months. Finally, the days: from 20 October to 29 October is 9 days. Their exact age is 30 years, 10 months and 9 days. If you had subtracted the years alone, you would have said 31, which would be wrong by more than a month.

Worked example 3: a leap-day birthday

Someone born on 29 February 2004 wants their exact age on 29 February 2024. The years are 2024 minus 2004, which is 20, and the birthday itself has arrived, so all 20 years count, with 0 months and 0 days left over. Their exact age is exactly 20 years. The total time lived is 7,305 days, which is 20 times 365 plus 5 leap days, for 2008, 2012, 2016, 2020 and 2024. Notice that the leap day in the birth year, 2004, is not counted again, because the count starts on that day.

Common mistakes to avoid

Subtracting only the years, without checking whether this year's birthday has passed, overstates the age for part of every year. Treating every month as 30 days gives the wrong day count, because February, April, June, September and November break that rule. Treating every year as 365 days understates the total days lived, because leap days are real days. And confusing exact age with age in days is a category error: “9,729 days old” and “26 years, 7 months and 19 days old” describe the same life, but they are not interchangeable answers, because the first counts days and the second counts calendar anniversaries.

One more trap is the birthday itself. On your birthday, your months and days reset to zero and your years go up by one. The day before your birthday you might be 26 years, 11 months and 30 days old; the next day you are simply 27 years old. That sudden reset looks strange, but it is exactly how anniversaries work.

Frequently asked questions

Why is my exact age not just my age in days divided by 365?

Because years and months do not have fixed lengths. Dividing total days by 365 ignores leap days and the different lengths of months, so it gives an approximate decimal age, not the calendar age in years, months and days that forms and records ask for.

How do I calculate age on a date in the past or future?

Use the same three steps, with that date in place of today: completed years to the last birthday before that date, then completed months, then remaining days. For the gap between any two dates, not just birth to today, the Time Duration Calculator does the same calendar arithmetic.

What happens if I was born on 29 February?

Your age still increases by one year on each anniversary. In leap years the anniversary is 29 February; in other years it is marked on 28 February or 1 March by custom, but your completed years do not pause for three years and then jump by four.

Is my date of birth stored when I use the calculator?

No. The calculation happens in your browser and nothing is sent to a server, which is also true of the other tools on this site.

If you want to check a result, try the matching tool on this site: the Age Calculator gives your exact age in years, months and days from the same method used above.