Calculate your age down to the day
{{ __t('empty_state') }}
This age calculator computes the exact age between two dates — in years, months and days as well as the total in weeks, days and hours. By default it compares to today's date, but you can change the target date to find someone's age at any past or future point.
The calculation runs entirely in your browser. Leap years and varying month lengths are handled correctly: years are subtracted first, then months, then days — if the day of the comparison date hasn't been reached in the current month, one month is borrowed from the previous year. The output follows the conventional notation 'X years, Y months, Z days old'.
At first glance, calculating age looks trivial: current year minus birth year. In practice that is often wrong. Someone born on November 5, 1990 and checking on November 4, 2024 is still 33, not 34 — the birthday is one day away. A correct age calculator therefore has to look at year, month and day, and check whether the anniversary in the current year has actually passed.
Then there are leap years. A leap year has 366 instead of 365 days; the extra day is February 29. If you were born on February 29, you have no exact calendar birthday in non-leap years. The common international convention is to use March 1 or February 28 — both are legally and socially accepted. This calculator counts correctly between any two dates and gracefully shifts a missing leap-day birthday to the last day of February.
The years-months-days output is the everyday format. The aggregate outputs (total months, weeks, days, hours) are useful for statistical comparisons, sports records, legal deadlines, or simply to make the abstract size of a life span tangible. A 30-year-old has lived roughly 10,957 days or 262,974 hours — a perspective that puts a lot into context and is the data basis insurers, pension models and life planners rely on. Many professional contexts also demand exact ages: school enrollment cut-offs, reaching the age of majority, insurance tariffs with tiered entry ages, and pension models that count contribution years to the day. A tool that calculates to the calendar day is more precise here than the common 'year minus year' shortcut.
The calculation runs in three steps: take the year, month and day differences, then borrow backwards when any value goes negative. Pseudo-code:
years = endYear - startYear
months = endMonth - startMonth
days = endDay - startDay
if (days < 0) { months--; days += daysInPrevMonth(end) }
if (months < 0) { years--; months += 12 }
Five typical calculations you can use to sanity-check the age calculator:
This calculator works purely in the proleptic Gregorian calendar. For birth dates before the Gregorian calendar was adopted (largely after 1582 in Germany, 1752 in the United Kingdom), day counts are inaccurate because the Julian calendar was in use back then. Time zones are not modeled either — if you were born at 23:55 in Tokyo and now live in Los Angeles, enter the birth date in local time, not UTC. Legal age thresholds (majority, retirement, insurance tariffs) follow extra national rules, including special handling for leap-day births. The results are an accurate auxiliary calculation, not legal or medical advice.