Skip to main content

Free Working Days Calculator

Count business days between dates or add/subtract business days from a date. Configurable weekend handling and holiday list.

Works offline once loaded

Weekend (non-working) days

0 holidays configured

Common uses

  • Working Days for Project DeadlinesCalculate realistic project timelines excluding weekends and holidays.
  • Track SLA Response Time in Business DaysCustomer SLAs often specify response in "business days" β€” calculate exactly when a 5-business-day deadline lands.
  • Calculate Vacation / PTO DaysHow many working days will you actually take off? Calculate exact business-day count for vacation requests.
  • Government Filing DeadlinesTax filings, court deadlines, regulatory submissions β€” often counted in business days.
  • Shipping Delivery EstimatesCalculate expected delivery dates for shipments quoted in business days.

How It Works

This tool runs entirely in the browser with no external libraries β€” all date arithmetic is hand-written JavaScript using the native Date object. It has two modes: counting working days between two dates, and projecting a future (or past) date by adding or subtracting a given number of business days.

  1. 1
    Date parsing without UTC drift
    Date inputs are parsed by splitting the YYYY-MM-DD string into year, month, and day parts and constructing a local Date β€” not Date.parse() β€” so the result is always the calendar day you typed, regardless of your timezone offset.
  2. 2
    Holiday validation and lookup
    Each holiday entry is matched against a strict YYYY-MM-DD regex, then cross-checked by reconstructing the Date and comparing its parts back β€” so impossible dates like 2026-02-31 are rejected and flagged in the UI rather than silently rolling over to March. Valid entries are stored in a Set keyed by local date string for O(1) lookup during the loop.
  3. 3
    Day-by-day iteration with configurable weekends
    For the 'count between dates' mode, the tool walks every calendar day in the range, checking each against your configured weekend days (any combination of the seven days) and the holiday Set, then tallies working days, weekend days, and holidays hit separately. For 'add business days' mode, it steps forward or backward one day at a time, skipping non-working days, until the requested count of business days has been consumed.
  4. 4
    Locale-aware result display
    The final date in 'add' mode is formatted with the browser's built-in Intl via toLocaleDateString(), so it renders in the user's local language and calendar convention without any additional library.

Related Tools

Frequently Asked Questions