Date Calculator — Add & Subtract Days, Weeks, Months & Business Days
Add or subtract years, months, weeks, and days from any date. Includes a business-days-only mode that skips weekends, leap year handling, and month-end.
Date Calculator
Enter values and click Calculate
Enter Values
Embed Code
Copy and paste this HTML snippet into any web page to embed this calculator directly.
<iframe src="http://127.0.0.1:59362/embed/math/date-calculator?ref=embed" title="Date Calculator — Add & Subtract Days, Weeks, Months & Business Days" width="100%" style="max-width:600px; border:none; height:500px;" loading="lazy"></iframe>
Direct Link
Share this link to let others open the calculator in their browser.
The Formula
Add or subtract a combination of years, months, weeks, and days from a start date using standard JavaScript date arithmetic. Adding months to dates near month boundaries follows the "overflow" convention: January 31 + 1 month = March 3 (not February 28), because February 31 overflows into March. The same applies to leap years — February 29, 2024 + 1 year = March 1, 2025. When using business days mode, weekends (Saturday and Sunday) are skipped and only weekdays count, so the result always lands on a weekday.
Variable Definitions
Start Date
The base date from which to add or subtract time, in YYYY-MM-DD format.
How to Use This Calculator
- 1
Enter a start date in YYYY-MM-DD format (e.g., 2024-01-15 for January 15, 2024).
- 2
Choose whether to add or subtract time from the start date using the radio buttons.
- 3
Enter the number of years, months, weeks, and/or days to adjust by — any combination is supported.
- 4
Select whether to count calendar days (including weekends) or business days only (Monday-Friday).
- 5
Review the resulting date, along with the day of week and total days adjusted.
Quick Reference
| From | To |
|---|---|
| 30 days from Jan 1 | Jan 31 (+30 calendar days) |
| 90 days from today | Use +90 calendar days for 90-day forecasts |
| 1 month from Jan 31 | Mar 3 (Feb 31 → Mar 3 overflow) |
| 5 business days (Mon-Fri) | 1 calendar week, skips Sat-Sun |
| 1 year from Feb 29, 2024 | Mar 1, 2025 (non-leap year overflow) |
| 40 weeks from date | Enter 40 in weeks field (common pregnancy term) |
| 2 weeks notice | 14 calendar days from resignation date |
| 60-day return window | +60 calendar days from purchase date |
Common Applications
- Project management deadlines — calculating deliverable dates by adding business days while skipping weekends for accurate sprint planning and milestone tracking.
- Legal and contract timelines — determining filing deadlines, notice periods, and contract expiration dates where business days are specified by law or agreement.
- Event planning — finding dates for weddings, conferences, and reunions by counting forward or backward from known anchor dates with complex offset combinations.
- Medical and health tracking — estimating due dates (40 weeks from LMP), medication schedules (every 90 days), and recovery milestones after procedures.
- Financial planning — calculating loan maturity dates, CD maturity, bill due dates, paycheck schedules, and tax filing deadlines that fall on specific offsets from known dates.
Date arithmetic adds or subtracts years, months, weeks, and days, with intelligent month-end clamping.
Pro Tips
Always use business days mode when calculating legal, contract, or project deadlines — "10 days" in a contract almost always means 10 business days, which is actually 14 calendar days across two full weeks including weekends.
When adding months to dates near month boundaries (29th, 30th, 31st), be aware of the overflow behavior: January 31 + 1 month = March 3 (Feb 31 overflows). If your use case requires month-end clamping (e.g., for financial month-end dates), manually adjust the result or use day-based arithmetic instead of month arithmetic.
For pregnancy due date calculations, add 40 weeks from the first day of the last menstrual period (LMP). This is Naegele's rule, the standard method used by obstetricians worldwide. The due date is an estimate — full-term delivery occurs anywhere between 37 and 42 weeks.
Combine weeks and days for natural language conversions — "two and a half weeks" is 2 weeks + 3 or 4 days. Similarly, "a month and a week" is 1 month + 1 week. Breaking down complex offsets into the correct fields produces more accurate results than trying to count total days.
For age calculation, subtract the birth date from today's date (use subtract mode with years). For precise age, subtract years first, then check if the birthday has occurred this year by comparing months and days — if not, subtract one more year.
When planning around holidays, use business days mode to get a weekday result, then manually check a holiday calendar. The calculator skips weekends but does not know about federal holidays, bank holidays, or company-specific closure days.
Understanding the Concept
This calculator lets you add or subtract years, months, weeks, and days from any date using standard JavaScript Date arithmetic. When adding months to dates near the end of a month, JavaScript follows an overflow convention: adding 1 month to January 31 produces March 3 (February 31 overflows into March 3 since February has only 28 days in non-leap years). This matches the behavior of most programming date libraries and spreadsheets. Leap years are handled automatically — years divisible by 4 (except century years not divisible by 400) have a 29-day February. Business day mode is particularly useful for project planning, contract deadlines, and legal timelines where weekends don't count toward progress. Note that the business day mode only skips Saturdays and Sundays — it does not account for public holidays.
Worked Examples
Marcus, a project manager, starts a software development sprint on Monday, March 3, 2025. The sprint is 10 business days long. He needs to know the exact end date to schedule the sprint review meeting and notify stakeholders.
2025-03-03
add
0
0
0
10
business
Result:
Insight: Starting Monday March 3, counting 10 business days: Mon 3/3 (day 1), Tue 3/4 (2), Wed 3/5 (3), Thu 3/6 (4), Fri 3/7 (5), Mon 3/10 (6), Tue 3/11 (7), Wed 3/12 (8), Thu 3/13 (9), Fri 3/14 (10). The sprint ends Friday, March 14, 2025. The weekend of March 8-9 is correctly skipped. Marcus should schedule the sprint review for Friday afternoon, March 14 — this gives the full 10 working days while keeping the team fresh for the review.
Aisha signed a 6-month apartment lease starting January 31, 2025. The lease automatically converts to month-to-month after the initial term. She needs to know the exact end date of her initial 6-month term so she can give proper 30-day notice.
2025-01-31
add
0
6
0
0
all
Result:
Insight: Adding 6 months to January 31, 2025: The calculator uses JavaScript's standard date arithmetic. Jan 31 + 1 month = Mar 3 (Feb 31 overflows into March). Continuing: Mar 3 + 1 month = Apr 3, +1 = May 3, +1 = Jun 3, +1 = Jul 3, +1 = Aug 3 = July 31 (actually let's compute carefully: Jan 31 → Mar 3 → Apr 3 → May 3 → Jun 3 → Jul 3, and the final +1 gives August 3). Wait — starting from Jan 31, adding 6 months gives: Jan 31 + 1mo = Mar 3, +1mo = Apr 3, +1mo = May 3, +1mo = Jun 3, +1mo = Jul 3. So the result is July 3, 2025. This differs from the month-end convention that some lease agreements use. For precise lease end dates that follow a "same day of month" convention, consult the lease agreement for how month-boundary dates are handled and consider using day-based offsets instead.
Dr. Rivera, an OB-GYN, needs to calculate a patient's estimated due date. The patient's last menstrual period (LMP) started on October 15, 2024. The standard Naegele's rule adds 280 days (40 weeks) from LMP.
2024-10-15
add
0
0
40
0
all
Result:
Insight: Adding 280 days (40 weeks) to October 15, 2024: 40 weeks × 7 = 280 calendar days. Counting forward: Oct 15 + 16 remaining Oct days = Oct 31. Then November (30) + December (31) + January (31) + February (28 in 2025) + March (31) + April (30) + May (31) + June (30) + July (22) = July 22, 2025. The estimated due date is July 22, 2025. Note this is an estimate — only about 4% of babies are born exactly on their due date. Most arrive within ±2 weeks. The calculator's week input makes this calculation straightforward: just enter 40 weeks.
Limitations
- This calculator performs standard Gregorian calendar arithmetic suitable for project planning, legal deadlines, and everyday date calculations. It does not account for public holidays, bank holidays, or company-specific non-working days — business day mode only skips Saturdays and Sundays. Historical dates before October 15, 1582 (the adoption of the Gregorian calendar) may not align correctly, and different countries adopted the Gregorian calendar at different times (e.g., Russia in 1918, Greece in 1923). The calculator uses JavaScript's built-in Date object which handles leap years automatically according to Gregorian rules (years divisible by 4, except centuries not divisible by 400). For dates before year 1 CE or after year 275760 CE, JavaScript's Date object has known precision limitations. The calendar assumes a continuous Gregorian calendar even for dates before its historical adoption — this is the "proleptic Gregorian calendar" convention used in ISO 8601. When not to use this calculator: for astronomical calculations requiring Julian Date or ephemeris time, for historical research requiring Julian-to-Gregorian calendar conversion, for high-precision timekeeping requiring leap second accounting, or for legal deadlines where specific jurisdictional holiday calendars must be observed.
Frequently Asked Questions
Related Calculators
Reviews
No reviews yet. Be the first to share your experience with Date Calculator — Add & Subtract Days, Weeks, Months & Business Days.
Write a Review
