How to Calculate Your Exact Age from Date of Birth
A step-by-step guide to calculating precise age in years, months, and days—including how to handle leap years and month-end edge cases.
- age calculation
- date of birth
- how to calculate age
- age formula
Your age isn’t as simple as the number on your birthday cake. That number tells you how many complete years you’ve lived—but your exact age at any given moment is more precise: so many years, so many months, so many days since you drew your first breath.
For most purposes, knowing you’re “34” is enough. But when a passport application asks for your date of birth, a medical form wants your age in months, or a legal contract specifies an age threshold, precision matters. Here’s how to calculate it yourself—and when to let a tool handle the edge cases.
The Basic Method
To calculate your age from your date of birth:
- Start with today’s date — day, month, and year.
- Subtract your birth year from the current year to get a preliminary year count.
- Check whether your birthday has passed this year. If today’s date is before your birthday in the current year, subtract one year from your count. You haven’t completed that birthday yet.
Example: Born on September 14, 1992. Today is April 25, 2026.
- Preliminary years: 2026 − 1992 = 34
- Has September 14 passed yet in 2026? No — it’s only April.
- Actual completed years: 33
That’s your age in full years. For months and days, continue below.
Adding Months and Days
After calculating complete years, count the months elapsed since your last birthday:
- Your last birthday was September 14, 2025 (the most recent one that has passed).
- From September 14, 2025 to April 25, 2026: October, November, December, January, February, March = 6 complete months, plus 11 days remaining in April (April 14 → April 25).
Full age: 33 years, 7 months, 11 days.
This kind of breakdown is what official documents and medical records typically use when “years old” isn’t specific enough.
Handling Leap Years
Leap years add a complication when calculating age in days (not years/months). February 29 only exists every four years, so:
- A span from January 1, 2020 to January 1, 2024 contains one leap day (Feb 29, 2020 was the most recent before 2024).
- A span from March 1, 2020 to March 1, 2024 contains one leap day (Feb 29, 2020, already passed at the start; next is Feb 29, 2024, which falls in this window).
For everyday year/month/day age calculation, leap years don’t distort your age—they just mean some years had 366 days instead of 365. The month-and-day subtraction method above handles this automatically because you’re working in calendar units, not raw day counts.
Leap years only require special handling when you specifically need total days lived. In that case, use a tool like our age calculator that counts calendar days precisely.
February 29 Birthdays
If you were born on February 29, calculating your age in non-leap years requires a convention. Most countries and systems treat March 1 as the legal birthday equivalent in non-leap years. So:
- Born February 29, 2000.
- In 2026 (not a leap year), your birthday falls on March 1.
- On April 25, 2026: you are 26 years old (birthday was March 1, 2026, which has passed).
Month-End Edge Cases
The trickiest edge case in manual calculation: months of different lengths. What is your age on March 31 if you were born on January 31?
- January 31 + 1 month = February 31, which doesn’t exist.
- Convention: the “end of month” rule treats February 28 (or 29 in a leap year) as the equivalent.
- So February 28 counts as 1 complete month after January 31.
- Then March 31 is exactly 2 complete months.
Online calculators implement these conventions automatically. Manual calculation can go wrong here, especially when crossing February.
Calculating Age in Excel or Google Sheets
Excel’s DATEDIF function handles this cleanly:
=DATEDIF(birth_date, TODAY(), "Y") → complete years
=DATEDIF(birth_date, TODAY(), "YM") → remaining months after complete years
=DATEDIF(birth_date, TODAY(), "MD") → remaining days after complete months
For a single cell showing “33 years, 7 months, 11 days”:
=DATEDIF(A1,TODAY(),"Y")&" years, "&DATEDIF(A1,TODAY(),"YM")&" months, "&DATEDIF(A1,TODAY(),"MD")&" days"
Replace A1 with the cell containing your birthdate. Note that DATEDIF is an undocumented but long-stable function in both Excel and Google Sheets.
When Exact Age Really Matters
Most of the time your year-age is fine. But precision matters in:
- Medical contexts — pediatric dosing, age-based screening guidelines, developmental milestones
- Legal documents — contracts specifying “must be 18 years of age as of [date]”
- Passport and visa applications — some countries require exact birth date confirmation
- Insurance — premiums often change on your birthday, sometimes mid-policy year
- Retirement calculations — Social Security and pension benefits often use your exact birth month
For all of these, your age calculator gives a precise breakdown without requiring you to do the month-end arithmetic yourself.
Quick Reference
| Method | Best for |
|---|---|
| Current year − birth year (±1 for birthday) | Quick year-age check |
| Year/month/day subtraction | Official documents, medical forms |
| Excel DATEDIF | Spreadsheet bulk calculations |
| Online age calculator | Exact count including leap days, any time unit |
The manual method is worth understanding once. After that, an automated calculator is faster and less prone to the February edge cases that trip up even careful arithmetic.