Fix

HighLevel Workflow Wait Step Not Releasing Contacts? How to Troubleshoot It

Contacts stuck in a HighLevel Wait step usually come down to the wait type, a missing timeout, a time window or timezone. Here is how to find where a contact is waiting and what to check, in order.

The short version

Find the contact in the workflow’s Execution Logs or in Workflow Maps, Contacts, see which Wait step holds them, then check that step’s type and timeout, its Advance Window, and the workflow’s Time Window and timezone. Most stuck contacts are waiting exactly as configured. If many contacts are stuck past their time and the settings explain none of it, check the HighLevel status page and send support the execution details.

Where exactly is the contact waiting?

Don’t start by changing the workflow. Find the contact first.

  • In the workflow: open it, then Execution Logs. Steps with errors are highlighted, and Enrollment History shows how each contact moved through it (Execution Logs).
  • From a message: in Conversations, open the message details and click the workflow link. HighLevel opens the execution with the contact already selected.
  • Across workflows: go to Automation, Workflows, Workflow Maps, open Contacts and search by name, email or phone. HighLevel shows each workflow the contact went through and whether it finished, is waiting, or hit an error, for the last 60 days (Trace a contact).

Once you know the step, note the time the contact entered it. You will need it below.

What kind of Wait step is it?

The Wait action has many types, and they release contacts very differently (Wait Action):

  • A set period of time releases after the duration.
  • A specific date and time, fixed or read from a contact field.
  • A recurring schedule, released at the next matching occurrence.
  • An upcoming appointment or booking, before, at or after the appointment, service booking or invoice due date.
  • The contact to reply, the contact to take an action and a user to reply, each with an optional timeout.
  • Specific conditions to be met, released when any one segment of conditions becomes true, with an optional timeout.

The reply, action and condition types are where most “stuck” contacts are. Without a timeout, they wait until the thing happens. If the contact never replies or the tag is never added, they wait. Turn the timeout on and decide what happens when it runs out.

For condition waits, HighLevel says each segment is checked on its own and the contact moves on as soon as any one is true. If you meant “all of these”, put the conditions in one segment joined with AND, not in separate segments.

Is a time window or timezone holding them?

Two settings can make a correct wait look broken:

  • Advance Window on a time-based wait lets you resume only on chosen days or between chosen hours (Wait Action). A one-hour wait that ends on a Saturday with a Monday to Friday window resumes when the window next opens, on Monday.
  • The workflow’s Time Window pauses communication actions like emails, SMS and calls outside the hours you set, and resumes them at the next allowed slot. Internal actions such as adding a tag are not affected (Workflow Settings). So the wait may have ended on time, while the text after it is held until morning.

Check the timezone too. Workflow settings let you run time-based actions on the account timezone or each contact’s timezone, and contacts with no timezone fall back to the account’s (Workflow Settings). A wait set for 9 AM can release at a time that looks wrong to you but is right for the contact.

Is the date already in the past, or missing?

For date and appointment waits, the step has an If this date has already passed option: continue, exit the contact, go to a specific step, or skip outbound communication until the next wait (Wait Action). If contacts are skipping ahead or leaving the workflow, that option is usually why.

For dynamic dates, the value is read from the contact’s field when the contact reaches the step. Open a few stuck contacts and check that the field actually has a date in it.

I changed the Wait step. Why didn’t anything happen?

HighLevel says contacts already in a Wait step keep the wait they had when they entered. Editing the step only affects contacts who arrive after the change, while edits to later steps can apply when the waiting contacts move on (Wait Action FAQ).

So fixing the step does not release the contacts who are already stuck. You need to move them on yourself. Be careful re-adding them: with Allow Re-entry on, HighLevel says a contact can only enter again after finishing or being removed, never while still active (Workflow Settings).

What if many contacts are stuck past their time?

If the wait is a plain time delay, there is no window or timezone that explains it, and a batch of contacts is still waiting well past their release time, it may not be your configuration. Check the HighLevel status page first.

Then open a support ticket with what they need to investigate: the workflow name, the Wait step, three or four affected contacts, when each should have been released, and screenshots from Execution Logs. While you wait, decide whether those contacts need a manual nudge so nobody misses an appointment reminder.

FAQ

Why is my contact still waiting after the wait time passed?

Check the wait type first. A condition, reply or action wait without a timeout holds the contact until that thing happens. Then check the Advance Window on the Wait step, the workflow's Time Window and timezone settings, and whether the next step is a message held until the window opens.

If I edit a Wait step, does it change for contacts already waiting?

No. HighLevel says contacts already in a Wait step keep their existing wait. Changes to the steps after the wait can apply when those contacts move on.

How do I see where a contact is stuck in a workflow?

Open the workflow's Execution Logs or Enrollment History, or use Workflow Maps, Contacts, and search for the contact. HighLevel's contact trace covers the last 60 days and shows whether each workflow finished, is waiting, or hit an error.

What happens if a date-based wait is already in the past?

The Wait step follows the option you picked under If this date has already passed: continue to the next action, exit the contact, go to a specific step, or skip outbound communication until the next wait or event start date action.

What if many contacts are stuck and nothing explains it?

Check HighLevel's status page, then contact HighLevel support with the workflow name, a few affected contacts, the time they should have been released and screenshots of the execution log. That gives them what they need to investigate.

Sources

  1. HighLevel Help Center: Workflow Wait Action Setup and Options help.gohighlevel.com
  2. HighLevel Help Center: Improved Workflow Execution Logs & Enrollment History help.gohighlevel.com
  3. HighLevel Help Center: Trace a contact through workflows help.gohighlevel.com
  4. HighLevel Help Center: Workflow Settings Overview help.gohighlevel.com
  5. HighLevel status page status.gohighlevel.com

(More) Keep reading

Related guides

Fix hub
HighLevel Conversation AI Stopped Replying? How to Find Out Why and Fix It Your HighLevel AI agent worked in testing, then stopped answering leads. Here is how to find the exact reason in the audit logs, and the settings that pause, sleep or stop the bot. HighLevel Emails Sending From Your Login Email? How to Fix the From Address Conversation emails in HighLevel go out from the logged-in user's email by default, not your sending domain. Here is the priority order HighLevel uses, and how to make every email come from the right address. Facebook Lead Ads Not Syncing to HighLevel? How to Fix It Facebook lead form contacts missing from HighLevel, or arriving but not starting your workflow? Here is how to check the page access, Leads Access, form mapping and trigger filters, and how to sync missed leads.