ForHosting KIT · Developer Utilities

Passover Start Date Calculator by Year

The Passover start date calculator finds the Gregorian civil date on which Passover begins at sunset for a requested year.

● BetaFree · in your browser
Use it from WebAPIEmailTelegramApp soon

It applies the fixed arithmetic rules of the Hebrew calendar, including the nineteen-year leap cycle, molad calculation, postponements of Rosh Hashanah, and variable month lengths. The result also identifies the following civil date corresponding to 15 Nisan and the relevant Hebrew year. Every calculation is local and deterministic, with no calendar service, current clock, time zone lookup, or network request involved.

What the returned start date means

Jewish calendar days begin at sunset rather than midnight, so a Passover date can be expressed in two closely related ways. This calculator uses the civil date on which the observance begins at sunset as its primary Passover start date. It also returns <code>first_day_date</code>, the following Gregorian civil date corresponding to 15 Nisan during daylight hours. For example, if 15 Nisan falls on a Tuesday, the primary result is Monday because the festival starts on Monday evening. Keeping both dates in the response removes a common ambiguity in event listings, travel plans, school calendars, and software integrations. The response also includes the Hebrew year, the Hebrew date label, and a Boolean flag confirming that the observance begins at sunset. The input year always means the Gregorian year in which that spring occurrence of Passover takes place. This convention makes repeated annual calculations straightforward and gives downstream systems enough information to present either an evening-start label or a first-day label without silently shifting the date.

How arithmetic Hebrew calendar rules determine the date

The calculation starts by associating the requested Gregorian spring with its Hebrew year. It then computes the mean lunar conjunction for Tishrei using elapsed months in the nineteen-year Metonic cycle. The calendar's postponement rules are applied to determine 1 Tishrei: a late molad can postpone the new year, two additional conditions protect ordinary and post-leap years, and Rosh Hashanah cannot occur on Sunday, Wednesday, or Friday. The distance between consecutive Hebrew new years reveals whether Heshvan and Kislev have their short or long forms. From there, the algorithm counts the exact lengths of Tishrei, Heshvan, Kislev, Tevet, Shevat, and the appropriate Adar month or months to reach 15 Nisan. Finally, an integer fixed-day count is converted to a proleptic Gregorian year, month, and day. Subtracting one fixed day produces the civil evening-start date. These are established arithmetic calendar rules, not an astronomical observation of the moon, a lookup table, or a locale-dependent date operation.

Determinism, supported years, and practical use

The calculator accepts an integer Gregorian year from 1 through 9999. It does not call the system clock, construct a JavaScript <code>Date</code>, infer the visitor's time zone, use randomness, or contact an external service. The same input therefore yields the same JSON result in a browser, an API worker, a build pipeline, or a test environment. That property is useful when generating future holiday schedules, validating imported calendars, preparing recurring communications, or creating reproducible datasets. Because sunset itself occurs at a local clock time that depends on location and atmospheric conditions, this capability intentionally returns a civil date rather than a sunset timestamp. Applications that need an exact local candle-lighting or festival start time should combine the returned date with a separate location-aware sunset calculation. Historical users should also understand that the output follows the fixed arithmetic Hebrew calendar projected across the supported Gregorian range; it does not attempt to reconstruct observational practices, regional proclamations, or civil calendar systems used before the Gregorian calendar. One API request costs $0.002, while the browser calculation can use the same pure arithmetic core.

Build an annual holiday calendar

Generate the evening start date and first daytime date for Passover without maintaining a year-by-year lookup table.

Validate imported event data

Compare a supplied Passover listing with an independently computed arithmetic Hebrew calendar result.

Schedule advance communications

Determine the correct civil evening on which an observance begins before preparing reminders or operational notices.

Does the returned date mean sunset or the following daytime period?

The primary <code>date</code> is the Gregorian civil date on which Passover begins at sunset. <code>first_day_date</code> is the following civil date corresponding to 15 Nisan.

What does a request cost?

An API request costs $0.002. The capability uses a bounded arithmetic calculation with one item per request.

Does it use an online Jewish calendar service?

No. It uses deterministic integer arithmetic and makes no network request.

Does it calculate the exact local sunset time?

No. Exact sunset requires a location and astronomical calculation. This capability returns the Gregorian civil date on which the sunset start occurs.

Why can Passover begin on the date before 15 Nisan?

A Hebrew calendar day begins at sunset. The evening that opens 15 Nisan therefore falls on the preceding Gregorian civil date.

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/passover-start

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/passover-start \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"year":2026}'
{
  "year": 2026
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "date.passover_start",
  "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.

Read the full KIT documentation →