Everyone knows how old they are in years. Working out an exact age in years, months and days, or someone else’s age on a particular date, takes a little more care. Here is the method our age calculator uses, written out so you can do it with nothing more than a calendar.
The short answer: age in years
For age in completed years, which is what most forms mean by “age”:
- Subtract the birth year from the current year.
- If the birthday hasn’t happened yet this year, subtract one.
Someone born on 14 August 1995 is 2026 − 1995 = 31 on 29 October 2026, because 14 August has passed. On 1 August 2026 they were still 30.
The full method: years, months and days
For an exact age, count forward from the date of birth in three steps, always in whole units:
- Whole years. Find the most recent birthday on or before today. The number of years from birth to that birthday is the age in years.
- Whole months. From that birthday, count the “monthly birthdays” (the same day number as the birth date) up to today. Each one is a full month.
- Remaining days. Count the days from the most recent monthly birthday to today.
Here it is for someone born on 14 August 1995, on 29 October 2026:
- 14 August 1995Date of birth
- + 31 years 14 August 2026
- + 2 months 14 October 2026
- + 15 days 29 October 2026
Counting forward like this has a big advantage: it never produces negative numbers, and it works the same way for every month, however long or short.
The borrowing method
You may have learned age calculation as a subtraction, with the later date on top:
| Year | Month | Day | |
|---|---|---|---|
| Today | 2026 | 10 | 29 |
| Date of birth | 1995 | 8 | 14 |
| Age | 31 | 2 | 15 |
When a column comes out negative, you borrow: take one month from the months column and add that month’s days to the days column, or take one year and add 12 months. For example, from 20 November 2018 to 5 March 2026, the days are 5 − 20 = −15, so you borrow a month.
The catch is deciding how many days a borrowed month has. Different people and tools use 30 days, the length of the previous month, or the length of the birth month, and near the end of a month these give different answers. That’s why we prefer counting forward. When a test manual tells you to borrow a fixed 30 days, as many psychological and educational assessments do, use our chronological age calculator, which supports both methods.
Worked example: born at the end of a month
What is one month after 31 January? February has no 31st, so the monthly birthday falls on the last day of February. This is the same rule calendar software uses when you add a month to the 31st.
Born on 31 January 2000, on 1 March 2001:
- 1 full year takes us to 31 January 2001.
- The next monthly birthday is 28 February 2001 (the last day of February), so that’s 1 full month.
- From 28 February to 1 March is 1 day.
The age is 1 year, 1 month and 1 day. A calculation that borrows the length of February might give a different day count here; our guide to why age calculators disagree shows how much.
Worked example: born on 29 February
In leap years, a 29 February birthday works like any other. In common years there’s no 29 February, so you need a rule: most date software, and our calculator by default, treats 28 February as the birthday, while some people and some laws use 1 March. On 28 February 2025, someone born on 29 February 2004 is either 21 years old exactly or 20 years, 11 months and 30 days old, depending on the rule. Our guide to leap day birthdays covers this in detail.
Worked example: across a century
Born on 1 January 1900, on 1 January 2000, a person was exactly 100 years old. In days that’s 36,524, not 36,525, because 1900 was not a leap year: century years are only leap years if they divide by 400. Only 24 of the years from 1900 to 1999 had a 29 February.
Check your answer
Two quick checks catch most mistakes:
- Add it back. Start from the date of birth and add the years, then the months, then the days. You should land exactly on today.
- Count the days another way. Multiply the years by 365, add one for each 29 February in between, and add the days since the last birthday. The total should match an age in days count.
Common mistakes
- Forgetting that the birthday hasn’t happened yet this year, which makes the age one year too high.
- Dividing days by 365. Leap days add up. Someone who has lived exactly 80 years has lived about 29,220 days, and 29,220 ÷ 365 = 80.05: roughly 20 days too many.
- Counting the day of birth. Ages start at zero; you aren’t one day old on the day you’re born.
- Mixing up date formats. Is 04/08/1995 the 4th of August or the 8th of April? Write the month as a word when in doubt.
- Using the wrong calendar for old dates. Many countries used the Julian calendar until the 1700s or later, so historical dates may need converting before you count.
When accuracy matters, for a form, a test or a legal deadline, let the age calculator do the counting and use this method to understand and check the result.
Frequently asked questions
What is the easiest way to calculate someone’s age?
Subtract their birth year from the current year, then subtract one if they haven’t had their birthday yet this year. That gives their age in completed years, which is what most forms ask for.
How do I calculate age in years, months and days?
Count the full years to the most recent birthday, then the full months since that birthday, then the days since the most recent “monthly birthday”. Worked examples are in this guide, or use our age calculator.
Should I divide the number of days by 365 to get years?
No. Because of leap years, dividing by 365 slowly overstates age, and dividing by 365.25 is only an approximation. Count calendar years instead, as described in this guide.
Sources
- Why do we have leap years? And how did they come about? — Live Science
- DATEDIF function — Microsoft Support
- Temporal.PlainDate (date arithmetic and month overflow) — TC39, ECMAScript Temporal proposal documentation
First published 29 October 2026. We review guides when sources change; see our editorial policy. Spotted an error? Tell us.