How to calculate age from a date of birth
How to calculate age in years, months and days by hand, leap-year birthdays, total days lived, and the right Excel formula, with clear worked examples.

To calculate age from a date of birth, subtract the birth year from the current year, then subtract one more if this year’s birthday hasn’t happened yet. Someone born on 14 August 1990 is 36 on 7 November 2026, because their 2026 birthday has passed. For an exact age in years, months and days, count whole years first, then whole months, then the remaining days: that same person is 36 years, 2 months and 24 days old. This guide shows how to calculate age by hand step by step, how to handle month lengths and 29 February birthdays, how to count total days lived, and the right formulas for Excel and Google Sheets. The age calculator does it all instantly.
Key takeaways
- Age in years = current year − birth year, minus 1 if the birthday hasn’t come yet this year.
- For years, months and days, count whole years, then whole months, then leftover days, borrowing days from the previous month when needed.
- Total days lived = today’s date − date of birth (spreadsheets do this with a simple subtraction).
- People born on 29 February have a birthday on 28 February or 1 March in other years, depending on the rule used.
- In Excel use
=DATEDIF(birth, TODAY(), "Y"); avoid the “MD” option, which Microsoft says can be inaccurate.
Age in years: the quick method
- Subtract the years: current year − birth year.
- Check the birthday: if this year’s birthday is still to come, subtract 1.
Example: born 14 August 1990, today is 7 November 2026. 2026 − 1990 = 36. The 14 August birthday has already happened this year, so the age is 36.
Example: born 20 December 1985, today is 7 November 2026. 2026 − 1985 = 41, but the December birthday hasn’t arrived, so the age is 40.
That’s all most forms need. “Age” in everyday and legal use almost everywhere means completed years: you’re 40 until the day you turn 41. (Some East Asian traditions counted differently; see the end of this guide.)
Exact age in years, months and days
For an exact age, count in three stages, always moving forward from the birth date.
- Whole years. Find the most recent birthday on or before today. Born 14 August 1990, today 7 November 2026: the last birthday was 14 August 2026, 36 years after birth.
- Whole months. Count forward from that birthday in whole months without passing today: 14 September, 14 October. 14 November would pass today, so that’s 2 months, reaching 14 October 2026.
- Remaining days. Count the days from 14 October to 7 November. October has 31 days, so 14 October to 31 October is 17 days, plus 7 days in November = 24 days.
Exact age: 36 years, 2 months, 24 days.
The method matters because months have different lengths. Counting forward month by month, as above, is the convention most age calculators use, including ours. To add or subtract days, weeks or months from any date, use the date calculator.
When the days don’t fit: borrowing
Many people learn age calculation as a subtraction, writing today’s date above the birth date and subtracting days, months and years like a sum. That works, but when the days or months would go negative you must “borrow”, just like in column subtraction.
Example: born 25 May 2001, today is 7 November 2026.
| Year | Month | Day | |
|---|---|---|---|
| Today | 2026 | 11 | 7 |
| Birth | 2001 | 5 | 25 |
- Days: 7 − 25 is negative, so borrow one month. The month before November is October, which has 31 days: 7 + 31 = 38, and 38 − 25 = 13 days. November becomes month 10.
- Months: 10 − 5 = 5 months.
- Years: 2026 − 2001 = 25 years.
Age: 25 years, 5 months, 13 days. Check by counting forward: 25 May 2026 is the 25th birthday; five months later is 25 October; 25 October to 7 November is 13 days. ✓
The key detail is which month’s length to borrow: use the month before the current month (here October, 31 days). Borrowing the wrong month’s length is the most common reason two hand calculations disagree by a day or two.
Total days, weeks and months lived
Total days are the simplest exact measure: count every day from the birth date to today. By hand that means adding the days in each full year (365, or 366 in leap years) plus the partial years at each end, which is tedious; a calculator or spreadsheet does it by subtracting the two dates.
Example: from 14 August 1990 to 7 November 2026 is 13,234 days, or about 1,890 weeks (13,234 ÷ 7). The leap days along the way (1992, 1996, 2000 and so on) are included automatically when you subtract dates. To count between any two dates, use days between dates.
Total months are 12 × years + months: 36 years and 2 months is 434 completed months. Total hours follow from days × 24, if you ever want a big number for a birthday card.
Days until your next birthday
Find the next birthday date (this year if it’s still to come, otherwise next year) and count the days from today. For a 14 August birthday on 7 November 2026, the next one is 14 August 2027: 280 days away. The age calculator shows this, along with the day of the week your next birthday falls on.
29 February birthdays and leap years
In the Gregorian calendar a year is a leap year if it’s divisible by 4, except century years, which must be divisible by 400. So 2000 was a leap year but 1900 wasn’t, and 2028 will be (Wikipedia, Leap year). People born on 29 February, sometimes called “leaplings”, only have a calendar birthday every four years or so.
In other years, the question is whether they turn a year older on 28 February or 1 March. Practice differs between countries and between purposes (driving licences, contracts, celebrations), and some laws spell it out (Wikipedia, February 29). The logic for 1 March is that the person hasn’t completed a full year until the day after 28 February; the logic for 28 February is that it keeps the birthday in the same month. Our calculator counts the birthday on 1 March in non-leap years and tells you so. If a precise legal age matters, check the rule that applies where you live.
Leap years also affect day counts: anyone over about four years old has lived through at least one 29 February, which is why total days don’t equal years × 365.
How to calculate age in Excel and Google Sheets
With the date of birth in A2:
- Age in years:
=DATEDIF(A2, TODAY(), "Y") - Months after the last birthday:
=DATEDIF(A2, TODAY(), "YM") - Total days lived:
=TODAY()-A2(format the cell as a number) - Age as a decimal number of years:
=YEARFRAC(A2, TODAY(), 1) - Years, months and days as text:
=DATEDIF(A2,TODAY(),"Y")&" y, "&DATEDIF(A2,TODAY(),"YM")&" m", adding days with a separate calculation.
DATEDIF also has an “MD” option for the days after the last whole month, but Microsoft’s own documentation warns that “MD” can return a negative number, a zero or an inaccurate result, and doesn’t recommend it (Microsoft Support, DATEDIF function). For the days part, subtract the date of the last whole month from today instead, or use an age calculator. Avoid the shortcut =(TODAY()-A2)/365: because of leap years it slowly drifts and can show the wrong age on the days around a birthday.
Age on a specific date
Forms often ask for your age on a particular date, such as the start of a school year, a competition deadline or a policy date. Use the same method with that date in place of today. Born 20 December 1985, what age on 1 January 2027? 2027 − 1985 = 42, and the December birthday came before 1 January 2027 (it was in December 2026), so the age is 41. In a spreadsheet, replace TODAY() with the date, for example =DATEDIF(A2, DATE(2027,1,1), "Y"). The age calculator also lets you set an “age on” date.
Time zones rarely matter for age, but they can for someone born close to midnight or travelling across the date line: legal age is normally based on the date where the person is. For time differences between places, the time zone converter helps.
Other ways of counting age
Traditional East Asian age reckoning counted a newborn as one year old and added a year at the new year rather than on the birthday, so someone could be one or two years “older” than their international age. South Korea standardised on international age for official purposes in 2023 (Wikipedia, East Asian age reckoning). Elsewhere, some sports and school systems use “age group” rules based on age on a fixed date, such as 31 December or 1 September, rather than the birthday itself.
Common mistakes
- Forgetting to subtract 1 when the birthday hasn’t happened yet.
- Borrowing the wrong month’s length when subtracting days.
- Dividing days by 365, which ignores leap days.
- Using DATEDIF “MD” in Excel for the days part.
- Assuming one rule for 29 February everywhere.
FAQ
How do I calculate my age from my date of birth?
Subtract your birth year from the current year, then subtract 1 if your birthday hasn’t happened yet this year.
How do I calculate age in years, months and days?
Count whole years to your last birthday, then whole months from there, then the remaining days. The age calculator does it instantly.
What is the formula to calculate age in Excel?
=DATEDIF(A2, TODAY(), "Y") for completed years. Use =TODAY()-A2 for total days.
How many days old am I?
Subtract your birth date from today’s date. Someone born on 14 August 1990 is 13,234 days old on 7 November 2026.
When does someone born on 29 February turn a year older?
On 28 February or 1 March in non-leap years, depending on local rules and purpose. Our calculator uses 1 March.
Why is dividing days by 365 wrong?
Leap years add an extra day every four years or so, so the result drifts and can be wrong around birthdays.
Sources
- Microsoft Support: DATEDIF function, including known issues with “MD” (checked 7 November 2026).
- Wikipedia: Leap year (checked 7 November 2026).
- Wikipedia: February 29, including how birthdays are handled (checked 7 November 2026).
- Wikipedia: East Asian age reckoning (checked 7 November 2026).
Next steps
- Get your exact age and next birthday with the age calculator.
- Count the days between any two dates with days between dates.
- Age is an input to many health formulas; see yours in the BMR calculator.
- Or ask the AI workspace: “how old am I if I was born on 14 August 1990?”