Plus Your Business Blog

HubSpot SLAs and Public Holidays: How to Pause the Clock

Written by Martin Shervington | Oct 9, 2026, 3:56:42 AM

HubSpot help desk SLAs can follow a working-hours schedule and pause on chosen ticket statuses, but they have no holiday calendar. It is doable with a custom layer that runs alongside the native SLA, provided you have Service Hub Professional or Enterprise and Data Hub Professional or above.

The problem: where native HubSpot SLAs stop

Native SLAs in help desk cover a lot. You can set goals for time to first reply, time to next reply and time to close. Each rule can have its own time zone and scheduled hours, and the timer can pause while a ticket sits in a status you choose. HubSpot documents all of this in Set SLA goals in help desk.

What you cannot do is tell HubSpot that a day is a holiday. On a bank holiday the clock runs through an empty office, and the next morning starts with tickets already overdue. Your SLA report then shows breaches that never really happened.

Teams usually try one of two workarounds, and both cost something:

  • Edit the schedule before each holiday and change it back after. Someone has to remember, every time, for every region.
  • Add a pause status that agents apply by hand. It works, but anyone can use it to flatter their numbers, so you end up building alerts to police it.

It gets harder with more than one region. A team in Manchester and a team in Boston can share a portal, but they do not share a calendar. The same gap shows up whenever an SLA promise in a contract says "working days" and your reporting cannot prove it.

The request comes up again and again on HubSpot's Ideas forum. In December 2025, HubSpot's product manager for SLAs replied on the Ideas forum that holiday handling was being evaluated, with no committed plans. So for now it is something you build or buy.

What is possible

A custom SLA layer that sits next to the native one and knows your calendar. It can:

  • Skip public holidays, bank holidays and company shutdown days, with a separate calendar per region
  • Run different working hours and time zones for each team, region or pipeline
  • Stop the clock in the stages you choose, such as waiting on the customer or an order on hold
  • Work out active time, paused time and time in each stage for every ticket
  • Set an SLA status such as on track, due soon, breached or paused, using your own thresholds per priority
  • Write all of it to ticket properties, so reports, views and workflows can use it

You keep the native SLA. Nothing is switched off or replaced, and the setup is the same whether you are on Service Hub Professional or Enterprise. The extra layer fills in what the native timer cannot see.

How it works at a high level

The build uses standard HubSpot building blocks, and the calculation runs inside your portal.

  • A calendar store in HubDB. Holiday dates, working hours and time zones live in tables, so your calendar is never buried in code.
  • An admin screen built as a UI extension. Your service lead edits calendars and rules inside HubSpot, without asking a developer.
  • Custom code actions in workflows. These read each ticket's stage history, count only working time and take off the paused time.
  • Two triggers. The numbers are recalculated when a ticket changes, and again on a recurring schedule so open tickets stay current.
  • Custom ticket properties. Every result lands on the ticket: active time, paused time, time per stage and SLA status.
  • Native reports and workflows. Dashboards, views and alerts are built with the HubSpot tools your team already uses.

No ticket data is sent to a third-party service to be calculated. For teams with a security review to pass, that is often the deciding point.

We do not ship a fixed product. We run a configuration session with you, agree the calendars, pause stages and thresholds, then tailor the build to how your service team works.

What actually matters

Tiers and licences

Building block What it needs
Native help desk SLAs Service Hub Professional or Enterprise. Rules based on a combination of ticket properties need Enterprise.
Custom code actions Data Hub Professional or Enterprise
HubDB calendar store Content Hub Professional or above, or Marketing Hub at the higher tiers
UI extension admin screen Depends on where its logic runs. If it is hosted by HubSpot as serverless functions, the portal needs an Enterprise subscription.

If you are missing one of these, the design changes but the outcome does not. Calendars can be stored another way, and the admin screen can be simpler. We check your subscriptions before we scope anything.

Limits and gotchas

  • It is not a live stopwatch. The custom status is as fresh as the last recalculation. For most teams that is fine, but it should be a decision, not a surprise.
  • The native label does not change. The SLA label agents see in help desk still runs on the native timer, which knows nothing about holidays. Views, reports and alerts should be built on the custom properties, and the team needs to know which number is the source of truth.
  • Custom code has a ceiling. Each run must finish within 20 seconds and 128 MB of memory, and HubSpot's API rate limits still apply. At high ticket volume the work has to be split into batches, which is a design job, not a setting.
  • Native SLAs only cover help desk tickets. The custom layer reads pipelines and stages directly, so it can cover any ticket pipeline.
  • Pause stages are still a human choice. Holidays come out automatically, but agents can still park a ticket in a paused stage. The build records paused time per stage so you can see when that happens.
  • Time zones need care. Daylight saving shifts the working day twice a year, and a calculation that ignores it will be an hour out for months.
  • Calendars need an owner. Holiday dates move every year and regional observances differ. Someone should review the calendar annually.
  • HubSpot may close the gap. If native holiday calendars ship, simple single-region cases will not need this. Multi-region rules and custom pause logic probably still will.

Proof: a build we run

One build we run is for a client working to US Eastern business hours. It covers five ticket pipelines and tracks 39 stages. In 18 of those stages the clock stops, including waiting on the customer, orders on hold and returns.

The calculation counts only the client's working day and skips their company holidays. For every ticket it records time in each stage, total paused time, active working time and an SLA status set by priority. All of it sits on the ticket as properties the team reports on in HubSpot.

When this is the right approach, and when it is not

A custom layer makes sense when:

  • You support customers from more than one region, each with its own holidays and hours
  • Your pause rules span several pipelines and many stages
  • SLAs are written into contracts and your reporting has to stand up to a customer asking questions
  • Ticket data has to stay inside HubSpot
  • Ticket volume is high and seasonal, as it often is in hospitality, education and e-commerce
  • You already have Data Hub Professional or above

It is probably not the right approach when:

  • You run support around the clock. Holidays do not change your SLA.
  • You have one region and a handful of holidays a year. Editing the schedule by hand may be good enough.
  • You have no Data Hub licence and no plan to add one - but, we can offer it as a Workflow Extension as well

The trade-off is simple. An app is quick and cheap to start, but it works to its own rules and your ticket data is synced out to it. A custom layer takes longer and costs more up front, but it follows your rules and stays in your portal.

FAQ

Can HubSpot SLAs exclude public holidays?

Not natively. Help desk SLAs can follow scheduled working hours and a time zone, but there is no holiday calendar. A custom layer can take holidays out of the calculation and write the corrected figures to ticket properties.

Can I set different SLA hours for different regions or time zones?

Partly. Each native SLA rule can have its own time zone and schedule, and rules based on a combination of ticket properties need Service Hub Enterprise. Regional holiday calendars are not available natively, which is where a custom layer comes in.

How do I pause an SLA in HubSpot?

In the help desk SLA settings you can add pause conditions based on a pipeline and a ticket status. The timer stops while the ticket is in that status and resumes when it leaves.

Do I need Service Hub Enterprise for holiday-aware SLAs?

No. Native SLAs come with Service Hub Professional and Enterprise, and the custom layer works the same on both. You do need Data Hub Professional or above for the custom code actions.

Does it work for tickets outside help desk?

Yes. Native SLA goals only apply to help desk tickets. The custom layer reads ticket pipelines and stages directly, so it can cover any ticket pipeline.

Is there an app that does this?

Yes. Super SLA is a third-party add-on with business hours, automatic holidays and SLA properties synced into HubSpot. It suits standard needs. A custom build suits teams who need their own rules or want the calculation to stay inside their portal.

Will HubSpot add holiday calendars to SLAs?

Possibly. In December 2025, HubSpot's product manager for SLAs said holiday handling was being evaluated, with no committed plans. If it ships, simple single-calendar cases may not need a custom layer.

Talk to the PYB technical team

Tell us your regions, your pipelines and what your contracts promise. We will tell you whether native SLAs, an app or a custom layer is the right fit, and what it would take.

Talk to the technical team

Related reading: How to Build Custom Routing in HubSpot Service Hub

Plus Your Business is a HubSpot Elite Solutions Partner, certified to ISO 27001, ISO 9001 and ISO 42001.