Skip to content
OverCalculator
  1. Home
  2. Time & Date
  3. Age Calculator
Time & Date

Age Calculator

Calculate exact age in years, months, and days from a birth date to any age-at date, plus total months, weeks, days, weekday born, and next birthday.

Published

Enter values below

Fill in the highlighted fields to see your result.

The day you were born.
Calculate the age as of this date (defaults to today).

Results update as you type.

Age Calculator

The age calculator finds exact calendar age from a date of birth to any chosen age-at date. It reports completed years, remaining months and days, total months, total weeks, total days, the weekday of birth, and the countdown to the next birthday. That makes it useful for birthday planning, school cutoffs, sports eligibility, records, benefits, age-in-days milestones, and family history notes.

Why calendar age needs more than year subtraction

A person’s age is not simply the current year minus the birth year. The birthday must have occurred in the current year before the next completed year is counted. Months also have different lengths, and leap years add February 29. This calculator uses calendar-aware date arithmetic so that January 31 to February 28, February 29 birthdays, and month-end cutoffs are treated as dates rather than rough averages.

Use this page for a single person’s age at a date. To compare two people, open the age difference calculator. For prenatal ages expressed in weeks and days, the gestational age calculator uses pregnancy dating conventions instead of birthday age. For pure elapsed clock time, the time duration calculator is more appropriate, and for cross-zone date-time questions use the time-zone calculator.

Method and calendar rules

The calculator accepts birthDate and asOf. Both are parsed as ISO-style date strings. If either date is invalid, the calculation returns invalid. If the birth date is after the as-of date, the calculation returns invalid with the note that date of birth must be on or before the age-at date.

The core age span comes from the shared breakdownDuration helper. It starts with direct component differences:

years=as-of yearbirth year\text{years} = \text{as-of year} - \text{birth year}

months=as-of monthbirth month\text{months} = \text{as-of month} - \text{birth month}

days=as-of daybirth day\text{days} = \text{as-of day} - \text{birth day}

If days are negative, the helper borrows one month and adds the number of days in the month before the as-of date:

days=days+days in previous as-of month\text{days} = \text{days} + \text{days in previous as-of month}

If months are negative, it borrows one year and adds 12 months:

months=months+12\text{months} = \text{months} + 12

Total days are calculated separately as the calendar-day difference from birth to as-of. Total months are computed as completed years times 12 plus the leftover completed months:

total months=12×years+months\text{total months} = 12 \times \text{years} + \text{months}

Total weeks are the floor of total days divided by 7:

total weeks=total days7\text{total weeks} = \left\lfloor \frac{\text{total days}}{7} \right\rfloor

For the next birthday, the calculation creates a date in the as-of year using the birth month and day. If that birthday is before the as-of date, it creates the birthday in the following year. The days-to-birthday item is the calendar-day difference from as-of to that next birthday, or “Today” when the difference is zero.

Example: calculating age on a target date

Enter 1990-06-15 as the date of birth and 2025-07-13 as the age-at date. Component differences begin as 2025 - 1990 = 35 years, July - June = 1 month, and 13 - 15 = -2 days. Because the days value is negative, the helper borrows one month. The month before July 2025 has 30 days, so -2 + 30 = 28 days, and the leftover month count drops from 1 to 0.

The primary result is 35 years, with a hint of 0 months, 28 days. Total months are 35 times 12 plus 0, or 420. Total days are the calendar-day difference between June 15, 1990 and July 13, 2025, and total weeks are that number divided by 7 and rounded down. The born-on item formats the birth date as a weekday, and the next birthday item counts forward to June 15, 2026 because the 2025 birthday has already passed.

For a cutoff-date example, enter a child born 2020-09-02 and an as-of date of 2025-09-01. The result is one day short of 5 years, which may matter for school eligibility rules that require a child to be 5 on or before a specific date.

How to use the answer

Use the years, months, and days result when a form asks for exact age. Use total months for infant and toddler milestones, because pediatric and childcare contexts often use months during early childhood. Use total days for anniversaries, age-in-days celebrations, or research records. Use the next birthday countdown for planning, but remember that organizations may define age cutoffs by local law or policy rather than by your preferred birthday celebration date.

If you are calculating age for official purposes, check the rule that applies. Schools, sports leagues, immigration forms, insurance policies, and retirement programs may have their own definitions of the effective date. The retirement age calculator is better for retirement-specific planning because it uses benefit-age conventions rather than only birthday math.

Edge cases and common mistakes

Leap day birthdays are the classic edge case. This calculator explicitly treats February 28 as the anniversary in non-leap years for both age and next-birthday logic. Some jurisdictions instead use March 1 or another explicit rule. Use this calculator for transparent Gregorian date-only math, then follow the official rule for eligibility.

Time zones rarely matter for date-only age, but they can matter for newborn records, international travel, or systems that store timestamps in UTC. This calculator does not ask for birth time or location. It also does not count partial months in total months; a person who is 2 years, 11 months, and 29 days has 35 completed months, not 36, until the next monthly anniversary.

Calendar and date boundaries

Dates use the Gregorian calendar as date-only values. Leap day is a valid birthday; year, month, and day differences are borrowed across real month lengths rather than treating every month as equal. No time zone or daylight-saving offset is applied, so the result changes at the chosen calendar-date boundary, not at a modeled instant. A birth date after the as-of date is outside the domain.

Sources

Frequently asked questions

How do I calculate my exact age?
Enter the date of birth and the age at date. The calculator checks that the birth date is not after the age-at date, then counts completed calendar years, remaining months, and remaining days. It also reports total months, weeks, days, weekday born, and days until the next birthday.
Why is exact age not just current year minus birth year?
Year subtraction ignores whether the birthday has happened yet. Someone born in December is not one year older in January just because the calendar year changed. This calculator compares month and day, borrows from the previous month when needed, and returns the leftover calendar months and days.
Can this calculate age on a past or future date?
Yes. Change the age at date to any valid date on or after the birth date. That lets you answer questions such as how old someone was on an event date, how old a child will be at a school cutoff, or how many days old someone is today.
How does the calculator handle February 29 birthdays?
This calculator uses February 28 as the anniversary of a February 29 birthday in a non-leap year. That convention is used consistently for completed years and the next-birthday countdown. Legal, school, insurance, or sports rules may define the effective date differently.
What is the difference between total months and exact months?
The main age result shows completed years plus leftover months and days. The total months item converts completed years to months and adds the leftover completed months, but it does not count a partial leftover month. Total days and weeks come from the full calendar-day difference between the two dates.
Does time of day or time zone affect the result?
The calculator uses date-only inputs, so it is intended for calendar age rather than a timestamp age down to the hour. For most birthday and eligibility uses, that is the expected approach. For exact elapsed hours between moments, use a duration or time-zone-aware workflow.

Related calculators

Age Calculator updated at