Thai Public Holidays: How to Build Them Into Your Gantt
Most Thai construction schedules miss 15 to 20 non-working days a year. Here is how to mark every holiday so the delivery date is one the owner can count on.
Why do Thai construction timelines always run longer than the Gantt says?
The most common explanation when a contractor is asked why a build ran over time is holidays — not bad weather, not rework, but holidays that were never marked in the plan. Most Gantt schedules are built assuming the crew works every weekday without interruption. Nobody marks Songkran. Nobody marks Visakha Bucha. Nobody marks the Wan Phra days that a third of the migrant crew quietly observes. The result is a plan that assumes 90 working days where reality delivers closer to 74. That gap — about 18 percent — is enough to push a four-month project into five months without anything going wrong on site. The problem is not performance; it is an honest calendar that was never built.
How many effective working days does a Thai construction project actually have?
Thailand gazetted 13 to 16 official public holidays per year in recent years. On top of those, Songkran officially covers three days but most construction crews from the northeast take seven to ten days around it. Buddhist holy days, or Wan Phra, fall roughly every seven days and reduce attendance by 20 to 30 percent among workers who observe them. Add three to five agricultural-leave days in October and November when northeast harvest season begins, and a realistic model gives a 12-month project 220 to 235 effective working days rather than the 260 a pure five-day-week calendar implies. A plan built on 260 days and delivered on 225 looks like a contractor who cannot keep schedule. A plan built on 225 and delivered on 225 looks like a professional team that knew what they were doing.
The public holidays every Thai contractor must mark on the Gantt before publishing
Thailand's official holidays that consistently pull workers off site include New Year's Day, Makha Bucha, Chakri Day, Songkran, Labour Day, Coronation Day, Visakha Bucha, Asanha Bucha, the Queen's Birthday, Chulalongkorn Day, the King's Birthday, Constitution Day, and New Year's Eve — between 13 and 16 days in total depending on the year. On a three-month project, four to six of those will fall inside the work window. Before publishing the schedule, pull the gazette list for the project year, mark which holidays land inside the dates, and set task durations by counting working days only. Entering those dates explicitly in the Gantt planning view means the finish date the plan shows is the date you can actually commit to.
What is the real impact of Songkran on a residential finish phase?
Consider a Bangkok contractor running the finish phase of a townhouse in Nonthaburi — plastering, tiling, joinery, painting, and sanitaryware — roughly 45 working days of combined trade time starting in late March. Songkran falls mid-April, officially three days but effectively a full week for the northeast crew. That removes five to seven working days from the middle of the phase. Without those days in the plan, the phase appears to end in week ten. With them marked honestly, it ends in week eleven. The owner expects week ten, the job finishes week eleven, and the contractor looks late — even though nothing went wrong. Marking Songkran as a non-working block in the Gantt planning view and sharing that plan via the owner sharing link before work starts makes week eleven the agreed completion date, not a dispute.
How to mark holidays in the Gantt without breaking your dependency chain
The cleanest method is a zero-duration buffer task placed at the holiday position: a task labelled "Songkran — non-working week" at the correct April dates. Tasks linked after it push out automatically past that marker, so the rest of the schedule adjusts correctly. If you prefer a simpler approach, add the holiday days directly to the affected task duration: a 20-working-day tiling task that crosses Songkran gets entered as 27 days in the Gantt planning view to account for the seven non-working days inside that window. Either way, the Gantt shows an honest finish date rather than an optimistic one that slips when Songkran arrives. Use the on-site progress updates view daily through the surrounding weeks to catch any additional impact early.
The Wan Phra effect: the schedule loss nobody mentions in the plan
Wan Phra, the Buddhist holy days, fall every seven to eight calendar days. On sites with crews from northern and northeastern Thailand, attendance drops 20 to 30 percent as some workers observe the day by resting or leaving the site early. For most tasks this creates a modest slowdown. For tasks that require a full crew — concrete pours, large-scale formwork — partial attendance means partial output, and a one-day task can stretch to a day and a half if the crew is short two or three people. Tracking on-site progress updates daily in SiteBoard flags these short-output days the moment they happen, giving the project manager time to reschedule a sensitive pour or absorb the shortfall before it blocks the downstream trade.
Should you show the holiday calendar to the owner before signing the contract?
Yes, and the earlier the better. Share the Gantt via the owner sharing link at or before contract signing, with all holiday blocks already marked and labelled. When the owner approves a schedule that shows Songkran as a non-working week, that schedule becomes the baseline. Any later question about the crew stopping in April has a clear answer: the owner signed off on that plan. Owners who discover a holiday gap only after the crew stops feel misled, even when the pause is legally protected. Showing the calendar at the outset costs nothing and prevents the single most common trust breakdown in Thai residential and light-commercial projects — the owner who believes the contractor is hiding delay behind a public holiday.
FAQ: How do I count how many holidays fall inside my project window?
Start with the government gazette list for the year — 13 to 16 official public holidays. Check which ones fall inside your project's calendar dates. Add Songkran extended leave if the project runs through April: budget seven days, not the official three. Add two days around Chinese New Year if any part of the crew is Chinese-Thai. For projects running October through December, add three to five agricultural-leave days for northeast workers. For a three-month project, it is reasonable to find 10 to 18 non-working days beyond weekends — enough to shift a delivery date by two to three calendar weeks if left out of the plan. Build those days in before you share the schedule, not after the first slip.
FAQ: What if the owner pushes back on a schedule that includes holiday buffers?
Walk through the list and name the specific dates: Songkran week, Visakha Bucha, the King's Birthday. A concrete named list is far more convincing than a vague buffer. Most owners accept named public holidays without argument; what they resist is unexplained slack they suspect is contractor padding. Presenting holidays as named, dated blocks in the owner sharing view — rather than as hidden extra days on individual tasks — makes the distinction clear. Named public holiday dates say the law protects this pause; unexplained duration padding says the contractor added margin. The owner receives those two messages very differently, and only one builds trust.
FAQ: Is it ever worth working through a Thai public holiday to protect the schedule?
For milestones with an owner payment attached, working a public holiday can be justified. The Thai Labor Protection Act requires premium pay for work on official public holidays — 1.5 to 3 times the base daily rate depending on the day type. Weigh that cost against the risk of missing a payment milestone or triggering a delay penalty in the contract. For a milestone unlocking a payment of 200,000 baht, spending 15,000 baht in overtime premium to deliver on time is a rational trade. For mid-project tasks with buffer remaining, working holidays rarely makes financial sense. When you do decide to work a holiday, add it as an explicit task in the Gantt planning view with the crew size and cost so the plan stays honest and the decision is visible to everyone tracking progress updates.
Bring your next project on schedule
Start free today — no card, no commitment. Add your crew when you are ready.