Help centre / Workflows and automation

HubSpot workflow delay not working, or actions running at the wrong time

Why HubSpot workflow delays and actions run at the wrong time, from time windows and time zones to past dates.

By Abdur Rahim Mostafa, HubSpot consultant · Updated 26 October 2026 · 5 min read

When a HubSpot workflow action runs at the wrong time, the delay is often set up correctly and a setting around it changes the timing. The workflow's own time settings can hold actions until an allowed day and hour in the account's time zone, and the delay's time zone option decides whose clock it follows. A delay set to the contact's time zone reads the IP time zone property, and when that's empty it falls back to the account's.

So check two things first. Open the workflow's Settings and look for Run actions at specific times and any pause dates. Then check the account time zone in settings under Account Defaults, on the General tab. If neither explains it, look at the delay type and the date it waits for.

Why workflow actions run at the wrong time

The workflow only runs actions at set times

With Run actions at specific times turned on, an action that comes up outside the allowed hours moves to the earliest allowed time on the next allowed day. One that comes up on a blocked day, inside the allowed hours, moves to the same time on the next allowed day. Rescheduled actions go out within a 15-minute window. The delay itself isn't rescheduled, only the action after it. A two-day delay that starts on a Friday ends on Sunday, and with a weekday-only window the next action waits until Monday (workflow settings).

Pause dates

Dates added under Don't run actions on specific dates stop actions on those days, and records wait for the next available date. Records still enroll and still move through delays and branches on a paused day, then stop at the next action.

The account time zone is wrong or was never set

Time windows use the account's time zone, and if none is set HubSpot uses EST. Schedule-based triggers use the account time zone too. A user with Account access permission can change it under Account Defaults (language and region settings).

The contact's time zone isn't what you think

Delays until a day, a time or a date can use the account's time zone or the contact's. The contact option uses IP time zone, which HubSpot sets from the contact's IP address once they have interacted several times from the same address. The separate Time zone property, which someone picks by hand, isn't the one delays read. If IP time zone is empty, the delay uses the account time zone. Whichever zone applies when the record enters the delay is locked in, even if the contact's time zone changes later.

Business days and holidays

On a delay for a set amount of time, Business days only (Monday - Friday) skips weekends and never ends on one. You can only set whole days, and the record leaves at the same time of day it entered. HubSpot's delay article doesn't mention public holidays, so add them as pause dates in workflow settings, where they can repeat every year.

The date had already passed, or there is no date

A delay until a calendar date or a date property sends a record straight on if the date is already in the past when it arrives. On a date property delay, turn on the branch option to get On the date, After the date and Date property unknown paths, and decide what happens to records whose date has passed or is missing. Date-only properties carry no time of day, so pick a custom time. Only datetime properties can supply their own time, and HubSpot shows datetime values in the time zone of the user viewing the record (HubSpot's property docs).

Waiting for an event that already happened

An Until an event occurs delay only releases a record when the event happens during the wait. A form the contact submitted yesterday doesn't count.

The delay was edited while records were waiting

Changes apply to records already waiting. Lengthen a fixed delay and they wait the extra time. Shorten it and anyone who has waited long enough leaves at once. Deleting a delay, or moving a date delay into the past, releases everyone to the next action.

Schedule triggers and daily checks

A Based on a schedule trigger set to Morning, Daytime or Night starts checking the day after you turn it on, at a time HubSpot picks inside that window. Choose Specific time if the hour matters. An annual schedule turned on or edited on its own day with one of those windows waits a full year. Monthly, weekly and daily schedules need Data Hub Professional or Enterprise as of October 2026 (schedule triggers). If records enroll late or not at all, see workflow not triggering.

How to fix workflow timing

  1. Open the action logs for one record that ran at the wrong time. The Time column uses the account's default time zone.
  2. Check the workflow Settings for a time window and pause dates, then check the account time zone.
  3. Open the delay. Note its type and whether it uses the account or contact time zone. If it uses the contact's, check IP time zone on the record.
  4. For date delays, check the date on the record, whether the property is a date or a datetime, and whether the branch option is on.
  5. Click the count of records in the delay to see who is waiting and how long each one has left.
  6. Run Test with a sample record. It shows a simulated time for each action.

How to stop it happening again

Set the account time zone before you build anything time-based. Use the account time zone in delays unless your contacts reliably have IP time zone filled in. Add the date branch to every date property delay, and put your holidays in as yearly pause dates. For actions that ran on time but failed, see workflow action errors.

From client work

For Closer Care I built the participant follow-ups around dates. One task asks for a survey 30 days after a deal is won, and a review task plus an internal email go out six weeks before a service agreement expires. No agreement dates were recorded before the project, so I added start and expiry date fields and set the dates for the 18 current clients. Read the Closer Care case study.

If you'd rather have someone go through your workflows with you, I can audit and fix them.

Questions

Why did the action run the morning after the delay ended?

The workflow probably has Run actions at specific times turned on. The delay finished on time and the next action waited for the next allowed slot.

Do business-day delays skip public holidays?

HubSpot's documentation only describes skipping Saturday and Sunday. Add holidays as pause dates in the workflow settings.

Which time zone does a delay use?

The one you pick in the delay, either the account's or the contact's IP time zone with the account's as the fallback. Workflow time windows always use the account time zone.

Did this fix it?

Written by Abdur Rahim Mostafa. I'm an independent HubSpot consultant with 12 years of HubSpot work. I fix and build HubSpot portals, integrations and automation for teams in the US, UK and Australia. See my case studies or find me on LinkedIn.

Can't find your fix?

Book a free 30-minute call and show me what's happening in your portal. If it needs work, you get a written scope and one fixed price.

Book a free 30-minute call