Health & timeFreeNo signup
Free age calculator. Enter a date of birth to get exact age in years, months, and days, plus total days and next birthday.
Last updated 14 October 2026
Defaults to today
Age is computed from calendar dates in UTC day units: whole years, then months, then remaining days. You also get total days/weeks/months and days until the next birthday.
Most quick age calculators divide a day count by 365.25 and call the remainder months. This one counts calendar years, then calendar months, then the days left over, borrowing real month lengths as it goes. That is why the breakdown and the total-days figure beside it always agree, and why it gives exact answers at the awkward edges.
Measured, on the day itself and the day before:
So the year only increments on the birthday, never a day early or late, which is what matters if the number is going on a form.
There is no universal rule for when a leap-day birthday falls in a year that has no 29 February, and different jurisdictions answer differently. This tool treats 1 March as the day the age increments. Measured, for someone born 29 February 2024:
The next-birthday figure follows the same convention and adapts to the year: from February 2026 it reports 28 February 2027, and from December 2027 it reports 29 February 2028, because 2028 is a leap year. So the reminder lands on the real date when there is one and on the 28th when there is not.
If you need the other convention, where the birthday is deemed to fall on 28 February, subtract a day from the next-birthday date and read the age as one day younger across that one-day window. Nothing here can decide which convention applies to you, because that is a question about your jurisdiction and not about arithmetic.
When the day of the month of the birth is larger than the day of the month you are asking about, the calculation has to borrow days from an earlier month. Borrowing once is not always enough, and this tool used to borrow once.
Measured before the fix: born 31 January 2026, as of 1 March 2026 reported “0 years, 1 months, -2 days”. A negative day count, because borrowing February’s 28 days left 1 minus 31 plus 28, which is still below zero. The total-days figure beside it said 29, and that was right the whole time; only the breakdown was wrong.
It now borrows repeatedly, a month at a time, until the day count is no longer negative. Measured after the fix, with the same inputs: 0 years, 0 months, 29 days, which agrees with the 29 total days. Two neighbouring cases that were always correct are unchanged: born 31 March, as of 30 April is 0 years, 0 months, 30 days, and born 31 December 2025, as of 1 February 2026 is 0 years, 1 month, 1 day.
We are leaving that on the page rather than quietly correcting it, because if you used this tool before 14 October 2026 for a birth date at the end of a month, you may have seen a breakdown with a negative number in it. The total days, total weeks and total months figures were never affected.
Both dates are built as UTC midnight and compared as calendar dates. That means the result is the same wherever you run it, and a clock change cannot push a day count over or under a boundary, which is a real failure mode for calculators built on local time.
The flip side is that the dates are calendar dates rather than moments. Nobody is born at midnight UTC, so the day count is a count of calendar days between two dates, which is what an age is, rather than a count of elapsed 24-hour periods since a birth time. If you need an age to the hour, this is not the tool.
The three total figures are each the whole number of that unit completed, never rounded up. Measured for the 26-year-old above: 9,496 total days, 1,356 total weeks (9,496 divided by 7 is 1,356.57, floored) and 312 total months, which is exactly 26 times 12 because the total months figure counts whole calendar months rather than dividing by an average.
So “total months” here is the number you want for a contract term or a child’s age in months, unlike the approximate months figure in Days Between Dates, which divides by an average month length and reports 11.99 for a whole year.
Nothing is uploaded. The calculation runs in your browser and the dates never leave your device, which is worth knowing because a date of birth is personal data.
Date.UTC. developer.mozilla.orgdate input type. developer.mozilla.orgEvery behaviour and every figure on this page was measured against this tool as it is published, in a browser, on 14 October 2026, including the before-and-after figures for the month-end fix described above. Where the page says what the tool does not do, that is a statement about this tool, not about age calculation in general.
Yes, on the day, not a day either side. Measured: born 15 June 2000, as of 15 June 2026 gives 26 years, 0 months, 0 days; the day before gives 25 years, 11 months, 30 days. The breakdown counts calendar years and months rather than dividing a day count, so it does not drift.
This tool uses 1 March. Measured for someone born 29 February 2024: on 28 February 2026 they are 1 year, 11 months and 30 days, and on 1 March 2026 they are exactly 2. There is no universal rule, jurisdictions differ, so the convention is stated rather than presented as the only answer. The next-birthday figure shows 29 February in leap years and 28 February otherwise.
That was a real defect, fixed on 14 October 2026. For a birth date at the end of a month the calculation borrowed from one earlier month when it sometimes needed two, so born 31 January, as of 1 March reported “0 years, 1 months, -2 days”. It now reads 0 years, 0 months, 29 days. The total days, weeks and months figures were correct throughout, so only the years-months-days breakdown was affected.
Because both come from the calendar rather than from an average. The breakdown borrows real month lengths, so there is no 30.44-day month anywhere in it, and the total days is a straight count. A calculator that divides by 365.25 will disagree with its own day count at the edges.
No. Both dates are built as UTC midnight and compared as calendar dates, so the result is identical wherever you run it and a daylight saving change cannot push the count over a boundary. The trade-off is that it works in whole calendar days, so it cannot give you an age to the hour.
A calendar count of whole months completed, which is why a 26-year-old shows exactly 312. Use that for a contract term or a child’s age in months. The “approx” months figure in Days Between Dates is a division by an average month length and reports 11.99 for a whole year, so the two are not interchangeable.
No. Both fields are browser date pickers, which refuse an impossible date before the tool ever sees it. That is the browser doing the validation, not this page.
No. The calculation runs entirely in your browser, there is no request carrying the dates off the page, and nothing is saved, so refreshing clears them. That matters more here than on most tools, because a date of birth is personal data.