We set up GoHighLevel for you · Book a free 15-minute callWe set up GoHighLevel for you
Book a call

GoHighLevel appointment reminders going out at the wrong time

A desk calendar on a table in front of someone waiting

Short answer

GoHighLevel reminders follow the workflow's time zone setting, which is either your account's or each contact's. Most wrong-time reminders come from that setting, a wait that isn't timed from the appointment, or a trigger that misses reschedules. Reminders that arrive twice usually mean the calendar's own notifications and a workflow are both sending them.

How to fix it

  1. Check the account time zone. Settings > Business Profile > Time Zone. Contacts without a time zone fall back to it.
  2. Check the workflow's time zone. In the workflow's Settings tab: account time zone, or each contact's. Also check its time window isn't holding messages.
  3. Time the wait from the appointment. Use the Wait step's "An upcoming appointment or booking" option, before the start time, and choose what happens if that time has already passed.
  4. Pick a trigger that sees every booking. Customer Booked Appointment only fires when the customer books through a link. Bookings your team makes, reschedules and recurring appointments don't fire it. The Appointment Status trigger covers those.
  5. Remove the second copy. Calendars > Calendar Settings > your calendar > Notifications sends its own reminders. Use those or a workflow, not both.
  6. Remember edited waits don't retime. Contacts already waiting keep the old timing after you change a Wait step.

How to find the cause

Compare when the reminder went out with when it should have. The size and shape of the gap points to the cause.

  1. Find the send in the logs. Open the reminder workflow's Execution Logs, find the contact, and look at the send step. Executed On shows when it ran, with the time zone.
  2. Follow the contact's path. In Enrollment History, Highlight Contact Path shows the steps the contact went through, including any that were skipped.
  3. Check the contact's time zone. With the workflow set to contact time zone, each contact's own time zone decides the timing, and contacts without one fall back to the account's. Booking widgets let contacts choose a time zone unless Disable Contact Timezone is checked under Settings > Business Profile > General.
  4. Check the calendar's own reminders. Open Calendars > Calendar Settings > your calendar > Notifications and look for Reminder entries. A reminder that has no matching send in any workflow's logs came from here.
What you seeWhat it meansWhat to do
Off by whole hours, every timeA time zone mismatch: account time zone for customers in other zones, or a wrong time zone on the accountSet the workflow's time zone and check Settings > Business Profile
Held until the next morningThe workflow's Time Window paused the step; it resumes at the next open slotWiden the window, or remove it from the reminder workflow
Sent right after bookingThe appointment was booked inside the reminder lead time, and the Wait step is set to Continue to next action when the time has passedChoose Skip all outbound communication actions till next wait or event start date action, Exit Contact from automation, or Go to specific step
Timed from the booking, not the appointmentThe Wait step is A set period of timeSwitch it to An upcoming appointment or booking, Before
The old time after a rescheduleA reschedule counts as a new appointment, and Customer Booked Appointment doesn't fire on itUse the Appointment Status trigger
Two copiesThe calendar's notifications and a workflow both send, or the contact entered twiceCheck the calendar's Notifications tab and the workflow's Enrollment History
Guests got reminders tooThe trigger enrolls Contact and Guests, and each runs separatelySet it to Contact only if guests shouldn't get them

How to confirm it's fixed

  1. Book a test appointment as a customer. Use the public booking link with your own phone and email. Book a little more than your reminder lead time ahead, so you don't wait a day: for a one-hour reminder, about 90 minutes out.
  2. Check the enrollment. Enrollment History should show the test contact once, waiting at the appointment-based Wait step.
  3. Check the send time. When the reminder arrives, compare Executed On in Execution Logs with the appointment start, in the contact's time zone. A pass is exactly your lead time.
  4. Reschedule it the way your team does. Move the appointment from the calendar, not the booking link. A pass is a new enrollment and a reminder timed from the new start.
  5. Cancel it. HighLevel takes the contact out of the workflow when the appointment is cancelled, marked invalid or a no-show. A pass is no further reminder.
  6. Count what arrived. One reminder per lead time on your phone. A second copy means the calendar's own notifications are still on.
  7. Test a customer in another time zone. If the workflow uses contact time zone, book once more as a test contact set to a different time zone. A pass is the reminder arriving at the same lead time before their appointment, in their local time.

What doesn't change reminder timing

The View Appointments In setting only changes how appointments look to you. It doesn't move reminders or availability.

Common questions

Why did a rescheduled appointment get the old reminder?
A reschedule counts as a new appointment for the Appointment Status trigger. If the reminder workflow uses Customer Booked Appointment, reschedules your team makes aren't seen at all.
I fixed the account time zone. Why are some reminders still wrong?
HighLevel says changes to the account time zone don't affect contacts already running through a workflow. Contacts who entered before the change keep the old timing; new bookings use the new one.
Can HighLevel set up reminders for me?
HighLevel has a recipe called Appointment Confirmation + Reminder under Automation > Create Workflow > Recipe. Check its time zone and wait settings the same way.

Rather we set it up?

We set this up for you as part of a done-for-you package, quoted on a free call.

  • Appointment engine

    Booking, confirmations, reminders and no-show rescue, so your calendar fills itself and people actually show up.

    Done for you · Quoted on the call

More calendar fixes

All Calendars & booking fixes

Want GoHighLevel set up and running for you?

Book a free 15-minute call. Tell us what you sell and where your leads come from, new account or the one you have, and we'll tell you what we'd set up, how long it takes and what it costs.

Rather we set it up? Appointment engine, done for you.

See the packageBook a call