Calendar arithmetic is harder than it looks
An age calculator returns the elapsed time between a date of birth and today, expressed the way people actually state age — completed years, then remaining months, then remaining days.
Subtracting two dates sounds trivial until you try to say what a month means. From 31 January, is one month later 28 February, 2 March, or 3 March? Different systems answer differently, which is why two age calculators can disagree by a day on the same birthday.
This page documents the exact borrowing rule this calculator uses, the leap-year and month-length cases where results can surprise you, and where a calculated age is not sufficient for a legal or medical purpose.
The algorithm, step by step
The calculator subtracts each date component separately and then borrows, exactly the way you would do long subtraction by hand.
- 1
Subtract the components
Years, months and days are each subtracted independently. Any of the three can come out negative at this stage; that is expected.
- 2
Borrow days from the previous month
If the day count is negative, one month is borrowed and the number of days in the month before today is added. Borrowing from a 28-day February gives a different result than borrowing from a 31-day March — which is the source of most disagreements between calculators.
- 3
Borrow months from the year
If the month count is then negative, one year is borrowed and twelve months are added.
- 4
Compute the totals separately
Total days is the raw difference between the two dates in days, and total weeks is that figure divided by seven. These are calculated from the elapsed time, not from the years-months-days breakdown.
- 5
Find the next birthday
Your birth month and day are placed in the current year; if that date has already passed, the year is advanced by one, and the days remaining are counted from today.
Three dates that show the rule working
Example 1: A straightforward case
Born: 14 March 1990
Today: 2 September 202636 years, 5 months, 19 days
Next birthday in 193 daysMarch to September is five completed months, and the 14th to the 2nd borrows from August’s 31 days: 31 − 14 + 2 = 19.
Example 2: Borrowing across February
Born: 30 January 2000
Today: 1 March 202626 years, 1 month, 1 dayThe day count starts negative, so one month is borrowed and February’s 28 days are added: 1 − 30 + 28 = −1… which borrows again. Short months are exactly why two calculators can differ here, and why the borrowing rule is worth stating openly.
Example 3: A 29 February birthday
Born: 29 February 2004
Next birthday in a non-leap yearRolls forward to 1 MarchA date of 29 February in a year that has no such day rolls into 1 March. Jurisdictions disagree on whether a leaper legally turns a year older on 28 February or 1 March, so treat the countdown as informational.
Edge cases and honest limits
Time zones can shift the answer by a day
The calculation uses your device’s local date. Someone born in Sydney and calculating in Los Angeles may see a result one day different from the one they expect.
Total days is a clock measurement
Total days comes from the elapsed milliseconds divided by 86,400,000. Daylight-saving transitions make some days 23 or 25 hours long, so over decades the figure can differ by a day from a pure calendar count.
"Months" have no fixed length
The months figure counts calendar months, not 30-day periods. Two people the same number of total days old can show different month counts depending on which months they lived through.
Future dates are not accepted
The date field is capped at today, because "age" is not defined for a date that has not happened. Use a date-difference tool for forward planning.
Not a substitute for an official calculation
Pension eligibility, school entry cut-offs, visa rules and insurance bands each define age against their own reference date and rounding rules. Use this to plan; use the official rule to decide.
Medical age is calculated differently
Paediatric dosing, gestational age and developmental milestones use conventions this calculator does not implement. Never use a general age figure for a clinical decision.
What people actually use this for
- Filling in an exact age on an application form that asks for years, months and days.
- Checking eligibility cut-offs for school years, sports age groups or membership tiers before submitting.
- Counting down to a birthday or an anniversary when planning an event.
- Working out a precise age in days for a certificate, a milestone post or a personal record.
- Confirming a date of birth transcribed from a scanned document — pair with the PDF to Word converter when the source is a PDF.
- Running the rest of the arithmetic for the same task in the calculators.
How this page is maintained
The borrowing rule, the next-birthday logic and the total-days calculation described here were read directly from this calculator’s code, and the worked examples were produced by it. The leap-day and daylight-saving caveats reflect genuine behaviour of the underlying date arithmetic rather than hypothetical concerns.
Written and reviewed by the ToolsRacks editorial team. Last reviewed: .