Tutorial

Post-Appointment Review Workflow in GoHighLevel: Full Build

This GoHighLevel workflow fires the moment an appointment is marked complete. It sends an SMS within an hour, offers an optional private feedback form next to the review link, and sends an email follow-up 48 hours later if the customer has not left a review. The whole sequence takes about three hours to build.

  • 3 min de lectura
  • 9 secciones
  • Actualizado el 28 de mayo de 2026
En esta página

You need GoHighLevel Starter ($97/mo) plus SMS and email usage costs.

Key points

  • Trigger: appointment status changes to Completed
  • Includes: SMS, optional private feedback form link, email follow-up
  • Plan: GoHighLevel Starter or higher

Before you start

  • GoHighLevel account, any plan (Starter at $97/mo works)
  • Google Business Profile connected to your GHL sub-account
  • A2P 10DLC campaign approved for your phone number
  • Appointments booked through GoHighLevel Calendars

Step 1: Set up the calendar trigger

In Automation, create a new workflow from scratch. Add the trigger Appointment Status and set it to Completed. In the trigger settings, choose which calendar this workflow applies to. If you run multiple service types, create one workflow per calendar so the messaging can be specific.

Tip: set a filter so the workflow only fires for contacts who have not already left a review. You can do this by adding a contact tag "review-sent" after Step 3 and adding a filter to the trigger that excludes contacts with that tag.

Step 2: Add a short wait before the first message

Add a Wait action and set it to 30 to 60 minutes. This small gap lets the customer finish their session, drive home, and settle before your message arrives. Messages sent immediately after a medical appointment or a long service call often feel intrusive.

Step 3: Send the SMS review request

Add a Send SMS action. Use a warm, personal tone. Here is a template:

After the SMS action, add a tag: "review-sent." This prevents the workflow from running again on repeat customers who have already received a request.

Step 4: Alert your team when a customer replies

Add a Wait for Reply action set to 24 hours. When any reply comes in, send an internal notification to your team so a person can answer it.

Put an optional private feedback form link in the same SMS as the review link, so every customer can choose either. Never use a reply or a score to decide who receives the review link. Everyone gets the same review request.

See the private feedback guide for the full private feedback form setup.

Step 5: Email follow-up after 48 hours

Add a Wait of 48 hours. Then add an If/Else that checks the Link Clicked condition for your review URL.

  • Clicked: end the workflow. They have already visited the review page.
  • Not clicked: send a short email. Subject: "Quick request, [First Name]." Body: two sentences max, the review link, and a genuine thank-you.

Step 6: Test before going live

Create a test contact with your own phone number and email. Set a test appointment and mark it complete. Shorten the wait times to 5 minutes for testing. Verify:

  • SMS arrives with the correct review link
  • Any reply triggers the internal notification
  • No click on the review link leads to the email follow-up
  • Clicking the link stops the email from sending
  • The tag "review-sent" appears on the contact

Once all five checks pass, restore the real wait times and set the workflow to Active.

Troubleshooting

  • Workflow fires for cancelled appointments. Double-check your trigger filter. The status must be set to "Completed" only, not "Any Status Change."
  • The review link is blank. Reconnect your Google Business Profile under Settings, Integrations. The custom value only populates after a successful connection.
  • Customers get duplicate messages. Make sure the "review-sent" tag filter is on the trigger. Without it, repeat customers who book a second appointment will re-enter the workflow.

Claim the GoHighLevel 30-day free trial

Partner disclosure: RocketLauncher earns a commission if you sign up through our link, at no extra cost to you.

Preguntas frecuentes

How soon after an appointment should I send the review request?

Send the first message within one hour of the appointment ending. The experience is still fresh and the customer is most likely to respond. Do not wait several days, because the customer may no longer remember the visit.

Can I use this workflow for any type of appointment?

Yes. The workflow works for any appointment type in GoHighLevel Calendars: service appointments, consultations, sales calls, or follow-ups. You just choose which calendar or appointment status triggers the sequence.

What if a customer cancels or does not show up?

Add an If/Else step that checks the appointment status. Only continue the workflow if the status is "Completed." Cancelled or no-show appointments exit the branch without receiving a review request.

How many review requests can I send per month?

You can send as many as you have appointments. Each SMS costs a fraction of a cent in usage billing on top of your GoHighLevel plan. Most local businesses spend a few dollars a month on this.

Does this work with third-party calendar tools like Google Calendar?

It works best with GoHighLevel's built-in Calendars feature. If you sync an external calendar, the "Appointment Status Changed" trigger may not fire reliably. The cleanest setup is to book appointments directly in GHL.

Can I white-label this workflow and sell it to clients?

Yes. On the Unlimited plan ($297/mo) or higher, you can save this workflow as part of a snapshot and install it in any sub-account. Many agencies sell a "review engine" as a monthly retainer service built on exactly this workflow.

Constrúyelo con gente que ya lo hizo.

Únete a la comunidad gratis: llamadas en vivo cada semana, un curso para empezar y gente que construye en tu idioma.

Únete gratis en Skool