Age Calculator

Find the exact age between any two dates — including today. Enter a date of birth and a target date to get the precise age in years, months, and days, plus total days and weeks lived and a countdown to the next birthday.

Enter a date of birth to calculate age

How It Works

Calculating exact age sounds simple but requires careful handling of month lengths, leap years, and the direction of month-end borrowing — the same logic date libraries use internally.

The algorithm works in three steps:

Step 1 — Years: Find the number of complete years. Start by calculating (end year − birth year). If the anniversary of the birth date has not yet occurred in the end year (i.e., the end month/day is before the birth month/day), subtract 1.

Step 2 — Months: Find remaining complete months after stripping out full years. Compute the month difference. If the day of the end date is less than the day of the birth date, subtract 1 month and borrow days from the previous month.

Step 3 — Days: The remaining days after whole years and months are subtracted.

Worked example: Born 15 March 1990, today is 18 July 2026.
Full years: 2026 − 1990 = 36. Anniversary (15 March 2026) has passed. Years = 36.
Remaining months from 15 March to 18 July = 4 complete months (April, May, June, July has not completed). Days in period: March 15 → July 18 after stripping 36 years and 4 months = July 18 − July 15 = 3 days.
Age: 36 years, 4 months, 3 days.

Total days lived: Count every calendar day from birth date to reference date — this accounts for every leap year in between. JavaScript's Date arithmetic handles this automatically.

Total weeks: Total days / 7 (floor to whole weeks, with remainder days shown separately if needed).

Next birthday: Find the next occurrence of the birth month/day on or after today. If today is the birthday, the count is 0.

Leap year birthdays: People born on February 29 celebrate on March 1 in non-leap years by convention (or February 28 in some jurisdictions). The calculator uses March 1 for next-birthday calculations in non-leap years.

Frequently Asked Questions

How is "exact age" different from just subtracting years?

Subtracting birth year from current year gives the age you will turn this calendar year, which can be off by up to 1 year depending on whether your birthday has passed yet. Exact age accounts for the specific month and day, giving you the correct completed years, months, and days.

How many days old am I?

The calculator shows total days lived. As a rough check: 30 years ≈ 10,957 days (including 7 leap years on average). 40 years ≈ 14,610 days. Each additional year adds 365 or 366 days.

When is someone "legally" an adult?

In most countries and US states, the age of majority is 18 years. The exact moment it kicks in is typically at the start of the 18th birthday (midnight). Use this calculator with today's date to verify whether someone has reached a specific age.

How does the calculator handle leap year birthdays?

If you were born on February 29, the calculator correctly counts your age in years (you have a "true" birthday every 4 years). For the next-birthday countdown in non-leap years, it uses March 1 as the target date.

Can I calculate the age of something other than a person?

Yes. The calculation works for any two dates — you can find how old a company, a building, a vehicle, or a contract is by entering its creation/start date as the "birth date."