ForHosting KIT · Dates & time

Start and end of ISO week

Enter any day and get the Monday that opens its ISO week and the Sunday that closes it: 2024-01-03 falls in the week from 2024-01-01 to 2024-01-07. Both dates count, ready for weekly reports. Free in your browser.

  • Free
  • Runs in your browser
  • No sign-up
  • Your data stays on your device
Use it from WebAPIEmailTelegramApp soon
If you enter
Date
2024-01-03
You get
Year
2,024
Month
1
Day
3
Iso weekday
3

This start and end of ISO week calculator takes a single Gregorian calendar date in YYYY-MM-DD form and returns the Monday that opens the ISO-8601 week containing that day and the Sunday that closes it. ISO weeks always run Monday through Sunday and never depend on locale first-day settings, which is why payroll, manufacturing packs, agile sprint labels, and cross-border reporting prefer them over US-style Sunday-start weeks. Classic checks include 2024-01-03 mapping to the week from 2024-01-01 through 2024-01-07, and 2021-01-01 mapping to the week from 2020-12-28 through 2021-01-03 because that Friday still belongs to week 53 of week-year 2020. The engine uses only deterministic integer calendar arithmetic: leap years, month lengths, ISO weekday, Julian Day Number offsets, and week-number boundary rules are computed without network calls, random sampling, or the host clock.

What the Monday and Sunday dates tell you

ISO-8601 week dates locate a civil day inside a Monday-based seven-day window numbered from 1 to 52 or 53 inside a week-numbering year. Week 1 is defined as the week containing the year's first Thursday, which is equivalent to the week that contains 4 January. Because of that rule, late December and early January can belong to a week-year that differs from the civil year printed on the invoice, and the Monday start or Sunday end can sit in a different calendar month or year than the input day.

If you need a custom first weekday, week number alone, or conversion from week-year plus week into a date, use those dedicated tools; this page answers only the ISO week window bounds for a validated calendar date.

How the date is read and how the Monday–Sunday window stays reproducible

The string must match four digits, a hyphen, two digits, another hyphen, and two digits; leading or trailing spaces are trimmed, but partial dates, ordinal day-of-year alone, and month names are not expanded here. After parsing, the year must fall between 1 and 9999, the month between 1 and 12, and the day between 1 and the true length of that month in that year, with leap years following the Gregorian rule of divisible by four except century years not divisible by four hundred.

The same path also derives the ISO week number as the floor of day-of-year minus weekday plus ten, all divided by seven, with week-year adjustment when the provisional week is less than one or exceeds the number of weeks in the civil year. A year has fifty-three ISO weeks when its first or last day is a Thursday.

Weekly report date ranges

Turn any invoice or log day into inclusive Monday–Sunday ISO bounds for dashboards, retail packs, and ops reports.

Year-boundary week windows

Resolve late December and early January dates whose ISO week starts or ends in a different civil year before closing books.

What does the start and end of ISO week calculator cost?

It is free in your browser on this page.

Why can the Monday or Sunday fall in a different month or year?

ISO weeks are continuous seven-day blocks. A Wednesday in early January can still belong to a week that began in late December of the previous civil year.

Does this convert time zones or use the current clock?

No. It only maps a validated calendar date to ISO week Monday–Sunday bounds with pure arithmetic.

Are the Monday and Sunday dates included in the range?

Yes. Both ends are inclusive, so the window always covers seven days: for 2024-01-03 it runs from Monday 2024-01-01 to Sunday 2024-01-07, ready to paste into a weekly report filter.

Can I make the week start on Sunday instead?

No. ISO weeks always run Monday to Sunday and the start day cannot be changed, which keeps reports from different countries in step. For Sunday-based weeks, use a tool built for that convention.

Everything on this page is available programmatically. This section is for teams who want to wire it into their own systems; everyone else can just use the tool above.

POSThttps://api.kit.forhosting.com/date/iso-week-start-end

Prefer to automate it? One authenticated POST creates the task; the result comes back by webhook or a signed link. The same capability also runs here on the web, by email and from Telegram — and soon from our app too.

curl -X POST https://api.kit.forhosting.com/date/iso-week-start-end \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"date":"2024-01-03"}'
{
  "date": "2024-01-03"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "date.iso_week_start_end",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

The API is asynchronous: the call returns a task_id immediately and the result arrives by webhook. Polling is capped at 1 req/s per task.

Per request$0.002

Published price — no tokens, no invented credits. A failed task is never charged.

HTTPCodeMeaning
401unauthorizedMissing or invalid API key.
402insufficient_balanceYour balance doesn't cover the task price.
404unknown_typeThat task type doesn't exist.
429rate_limitedToo many requests. Use the webhook instead of polling.

Use it free in the browser for planning sheets and compliance checks, or call the API at $0.002 per successful request when you need reproducible week window bounds in CI, reporting pipelines, or product features.

What ISO week start and end dates mean and what the response contains

This calculator accepts one required field, date, as a strict YYYY-MM-DD string, validates that the day actually exists in the Gregorian calendar — including February 29 only in leap years and the correct length of every month — then returns the normalized date, civil year, month, and day, the ISO weekday from 1 for Monday through 7 for Sunday with a readable name, how many days the input sits after Monday, week_start and week_end as inclusive ISO dates, the ISO week number and week-year with a compact iso_week_string such as 2020-W53, how many weeks that week-year contains, the day-of-year ordinal, Julian Day Number anchors for the input and the week ends, length_days equal to seven, and a short formula reminder. There is no timezone conversion, no configurable first day of week, and no floating approximation: either the input is a real calendar day and the Monday–Sunday pair is fully determined, or the request fails with invalid_input. Rejected cases include missing date, wrong shape such as 2024/01/03, impossible months, and days that do not exist such as 2023-02-29.

How the date is read and how the Monday–Sunday window stays reproducible

The preferred field is date, but aliases iso_date, d, and value are accepted so spreadsheets, query strings, and typed forms can reuse the same contract without renaming columns. From the validated triple the engine computes the ISO weekday via Sakamoto's pure-integer method mapped so Monday is one and Sunday is seven, converts the civil day to an astronomical Julian Day Number with the Fliegel–Van Flandern algorithm, subtracts days_from_monday equals iso_weekday minus one to land on Monday, and adds six days to land on Sunday. Pair the free browser run on this page with the priced API when you need the identical week window inside an automated pipeline.

Where ISO week start and end dates fit in planning, reporting, and software

Operations and finance teams need the Monday and Sunday of an ISO week when a weekly cadence must line up across countries that do not all start the week on Sunday: manufacturing schedules, retail sell-through packs, agile sprint labels, and statutory reporting that cites week-of-year all benefit from an unambiguous inclusive window. Developers call the same contract from scripts to stamp log buckets, generate timesheet range defaults, or produce deterministic test vectors for payroll systems that close on Sunday night. Educators and standards writers use the tool to demonstrate boundary dates such as 2005-01-01 sitting in a week that began in December 2004 without relying on spreadsheet serial numbers that differ between Excel and ISO. Analysts building year-over-year dashboards avoid off-by-one filters when they store both week_start and week_end instead of only a week number that still needs expansion into date predicates. On this page the work runs entirely in your browser; through the API each successful lookup costs $0.002, failed validation is not charged, and nothing is stored after the response returns. That split — free interactive exploration and a priced, identical API — matches the rest of the KIT tier-A catalog and lets you move from a one-off check to a pipeline without changing the mathematical result. Pair it with ISO week number lookup when you only need the week id, with configurable week_start_end when locale first weekdays matter, and with other free deterministic helpers when you are assembling a small lab of date utilities.

Deterministic test fixtures

Generate reproducible week_start and week_end values for unit tests, property checks, and CI assertions without Date skew.

Which days are week_start and week_end?

Under ISO-8601, week_start is always Monday and week_end is always Sunday. There is no option to start the week on Sunday or any other day.

What date formats are accepted?

Only strict YYYY-MM-DD calendar dates. Values like 2024/01/03, 01-03-2024, or 2023-02-29 (non-leap) are rejected with invalid_input.

Read the full KIT documentation →