Sources, rules and limits

How Best Leave Days calculates your leave plan

We separate published dates, legally automatic replacement holidays and dates inferred from state practice. The planner then uses the same timezone-safe algorithm for every page.

01

Official data first

Singapore dates come from the Ministry of Manpower (MOM) 2027 list. Malaysia federal and state dates come from the Prime Minister’s Department, Cabinet Division (BKPP) annual schedules. Each holiday row links to its source.

The python-holidays library is used only to cross-check official entries and estimate nearby 2028 dates before an official schedule exists. It does not decide replacement holidays. Best Leave Days does not use timeanddate data or APIs.

02

What the status labels mean

Official
Published in an official annual list or generated directly by a current statutory replacement rule.
Pending
Derived from documented state practice but waiting for the relevant 2027 state calendar or notice.
Estimated
Not yet in an official schedule, used only for the nearby 2028 planning window.
03

Replacement-holiday rules

sg-sunday

Holidays Act 1998 s 4(2). Saturday holidays do not create a public replacement day.

Applies to: SG · Trigger weekday: 7 · Move to: next non holiday day

Read the governing source

my-act369-sunday

Holidays Act 1951 s 3: a public holiday on the weekly holiday (Sunday) moves to the next day that is not already a public holiday. Not listed separately in the BKPP annual table.

Applies to: MY-01, MY-04, MY-05, MY-06, MY-07, MY-08, MY-09, MY-10, MY-14, MY-15, MY-16 · Trigger weekday: 7 · Move to: next non holiday day

Read the governing source

my-sabah-sunday

Sabah Holidays Ordinance (Cap. 56) s 3(3). Not listed separately in the BKPP annual table.

Applies to: MY-12 · Trigger weekday: 7 · Move to: next non holiday day

Read the governing source

my-sarawak-sunday

Sarawak Public Holidays Ordinance (Cap. 8). Not listed separately in the BKPP annual table.

Applies to: MY-13 · Trigger weekday: 7 · Move to: next non holiday day

Read the governing source

my-kelantan-saturday

Kelantan state practice: Saturday holiday moves to Sunday; Friday holidays are not replaced. Pending until the 2027 Kelantan state calendar confirms it.

Applies to: MY-03 · Trigger weekday: 6 · Move to: next non holiday day

Read the governing source

my-terengganu-saturday

Terengganu state practice (2017 official schedule): Saturday holiday moves to Sunday; Friday holidays are not replaced. Pending until the 2027 Terengganu state calendar confirms it.

Applies to: MY-11 · Trigger weekday: 6 · Move to: next non holiday day

Read the governing source

my-kedah-friday

Kedah 2026 documents conflict (next day vs next working day). Saturday holidays are not replaced. No Kedah Friday holiday falls in 2027; only 2026-12-25 is affected.

Applies to: MY-02 · Trigger weekday: 5 · Move to: next working day

Read the governing source

Key legislation includes Singapore’s Holidays Act 1998 and Employment Act 1968 s 88; Malaysia’s Holidays Act 1951 and Employment Act 1955 s 60D; the Sabah Holidays Ordinance and Sarawak Public Holidays Ordinance.

04

How plans are calculated

The planner marks each date as a working day, weekend or holiday using the selected region. It finds consecutive breaks anchored to a real holiday, then tests which working dates must be taken as annual leave. It will not recommend an ordinary “take Friday off” weekend with no effective holiday.

Leave cost is stored in half-day units, so no floating-point arithmetic is needed. Annual leave can only be spent on working dates in 2027, although a break may extend into December 2026 or January 2028. Two selected breaks must have at least one working day between them.

There is no single weighted “best” answer. Pages show a plan for the most total days off and another for the longest continuous break. Holiday opportunities keep the useful cost steps and remove intermediate options that add no extra value.