← Back to dental demo Setup Guide

GoHighLevel Dental Clinic Setup

Step-by-step instructions to configure a dental clinic automation system in GoHighLevel: missed-call SMS, AI chat widget, Calendly booking integration, and lead pipeline.

Time to complete 30–45 minutes
GHL plan required Starter or higher
Integrations Calendly, GHL Chat Widget
In this guide
  1. Create GHL agency and sub-account
  2. Configure missed-call automation
  3. Set up Calendly booking integration
  4. Install and configure the AI chat widget
  5. Build the lead pipeline
  6. Test the full flow

01

Create GHL agency and sub-account

If you don't already have a GoHighLevel agency account, create one at gohighlevel.com. The Starter plan at $49/mo includes everything you need for this setup.

1.1

Create your agency account

Go to gohighlevel.com → Sign Up → choose Agency account. Fill in your company details. This is your master account — you'll create a separate sub-account for each client dental clinic.

1.2

Add a dental clinic sub-account

Go to Settings → Sub-Accounts → Add Sub-Account. Name it after the clinic (e.g., "Sunshine Dental"). Set the timezone to match the clinic's location (e.g., Australia/Sydney for Australian clinics). This keeps all data for this clinic separate from others.

1.3

Add a phone number for the clinic

Within the sub-account, go to Settings → Phone Numbers → Add Number. This is the number patients will call. GHL can provision local Australian numbers (Sydney, Melbourne, Brisbane, etc.) for ~$5/mo. This number will receive the missed calls and send SMS messages.

⚠️

Australian dental clinics: GHL supports Australian phone numbers but you may need to use a VoIP provider like Twilio for local number provisioning. GHL's built-in number buying works best for US/Canada. Check your specific number needs in the sub-account Settings before proceeding.

02

Configure missed-call automation

When a patient calls and no one answers within 20 seconds, GHL triggers an automation that sends an SMS. This is the core ReplyFirst missed-call flow.

2.1

Create the automation trigger

Go to Automation → Triggers → Add Trigger. Choose "Call Not Answered" as the trigger type. Set the ring timeout to 20 seconds (or your preference). This means: if no one picks up within 20 seconds, the automation fires.

2.2

Build the SMS action

Add an action: "Send SMS Message". Use the clinic's phone number as the sender. Write a warm, helpful message that encourages the patient to book. See the example below.

From: Sunshine Dental (+61 2 XXXX XXXX)
Hi! We missed your call at Sunshine Dental 😊 We can help you right now — tap to book an appointment in under a minute:

📅 Book an appointment →

Powered by ReplyFirst AI
2.3

Add a follow-up sequence (optional but recommended)

Add a second SMS action with a 2-hour delay: "Just a follow-up — you can still book online if you missed our earlier message." This catches patients who saw the first SMS but didn't book immediately. Set it to only send if the contact hasn't booked within 2 hours.

2.4

Add wait for booking

Add a "Wait" step for 24 hours, then a "Check Appointment" condition. If the contact has booked an appointment in GHL/Calendar, skip the follow-up SMS. If not, send one more reminder message with the booking link. This prevents bothering people who already booked.

Result: Every missed call = SMS within 10 seconds + follow-up sequence. No manual work required. The patient gets a warm, helpful message within seconds of their call — while they're still thinking about booking.

03

Set up Calendly booking integration

The SMS link in Step 2 points to a Calendly (or GHL native) booking page. Patients tap the link, pick a time, and get confirmed — all without staff involvement.

3.1

Create Calendly account (or use GHL native calendar)

Go to calendly.com and create an account. Connect your calendar (Google or Outlook). Calendly is free for basic use. For dental clinics, we recommend the $12/mo Standard plan to remove Calendly branding and get advanced features like custom questions.

3.2

Create appointment types in Calendly

Create one event type per service the clinic offers. For a dental clinic, recommended types:

Appointment Type Duration Buffer Notes for staff
New Patient Check-up 45 min +10 min First visit, full examination
Standard Clean 30 min +5 min Regular hygiene appointment
Emergency / Tooth Pain 30 min +15 min buffer Priority slot, same-day preferred
Whitening Consultation 60 min +0 min Cosmetic, high-intent lead
Check-up Only 20 min +5 min Quick review, existing patients
3.3

Add custom questions in Calendly

In Calendly → Event Types → [Your event] → Custom Questions. Add: (1) "What is the main reason for your visit?" (dropdown: Check-up, Tooth pain, Cosmetic, Other). (2) "Patient's full name" (required text). (3) "Phone number" (required text). These get saved to GHL contact records automatically.

3.4

Get the booking link for your SMS

In Calendly, copy the booking link for your main "New Patient Check-up" event type. It looks like: calendly.com/sunshine-dental/checkup. Use this link in your SMS template from Step 2.2.

3.5

Connect Calendly to GHL

Go to GHL → Integrations → Calendly. Connect your Calendly account. Turn on "Add contact to pipeline when booked" — this automatically moves the lead to your "Booked" stage when they confirm a time. No manual follow-up needed.

⚠️

GHL native calendar option: If you prefer not to use Calendly, GHL has a built-in calendar and appointment booking system. Go to Calendar → Appointment Types in your sub-account. Create the same event types listed in the table above. The advantage of GHL native is everything stays in one platform — no third-party integration needed.

04

Install and configure the AI chat widget

The AI chat widget lives on the dental clinic's website. It handles 24/7 inquiries — answering FAQs, booking appointments, and qualifying leads — without staff involvement.

4.1

Enable the GHL chat widget

In your GHL sub-account, go to Conversation AI → Chat Widget. Toggle it ON. This enables GHL's built-in AI chat capability. The widget will appear on the clinic's website once installed.

4.2

Configure the widget appearance

Customize the widget: (1) Set clinic name and logo. (2) Choose a friendly AI agent name — for Sunshine Dental we use "Jade". (3) Pick a brand color (use the clinic's existing brand color or default to their primary website color). (4) Set "Welcome message" to something warm and natural.

Welcome message (shown automatically on first visit)
"Hi! I'm Jade, your AI receptionist at Sunshine Dental. How can I help you today? I can book appointments, answer pricing questions, or help if you're experiencing dental pain."
4.3

Train the AI on dental services

Go to Conversation AI → Knowledge Base. Add content about the clinic's services. For a dental clinic, include: (1) Service menu with pricing (check-up $85, clean $120, fillings from $150, whitening from $350, etc.). (2) Common FAQs (Does it hurt? Do you take my health fund? Do you do payment plans?). (3) Emergency protocols (toothache, knocked-out tooth, broken crown — what to do before arriving). (4) Location, parking, opening hours.

4.4

Set up booking fallback in chat

In Conversation AI → Flows, create a booking flow. When the AI detects the patient wants to book: (1) Ask for name + phone. (2) Show available appointment slots (integrate Calendly or GHL calendar). (3) Confirm the time and send a follow-up SMS with the booking confirmation. This means patients can book via chat as well as via the missed-call SMS.

4.5

Install the widget on the clinic website

Copy the GHL widget installation code (Settings → Chat Widget → Install Code). It looks like: <script>...ghl widget code...</script>. Paste this into the clinic's website — ideally just before the closing </body> tag. For WordPress: use a plugin like "WPCode" or your theme's custom code area. For Squarespace: Settings → Advanced → Code Injection. For custom sites: add to the footer partial or layout file.

Result: Every website visitor gets a friendly chat offer. The AI handles 80%+ of inquiries automatically. Staff only get involved for complex questions or when the AI marks a conversation as high-priority.

05

Build the lead pipeline

Every new contact needs to move through a structured pipeline from first inquiry to booked patient. GHL's pipeline system tracks this automatically.

5.1

Create the dental pipeline

Go to Opportunities → Pipelines → Create Pipeline. Name it "Dental Clinic Pipeline". For dental, we recommend 4 stages:

  • New Inquiry — Contact just came in (via missed-call SMS, chat, or form)
  • Booked — Appointment confirmed via Calendly or chat
  • Attended — Patient showed up for appointment
  • Lost — No response after 3 follow-ups
5.2

Set automation rules for stage transitions

Configure these rules so pipeline moves happen automatically:
(1) "Calendly booking confirmed" → Move to "Booked" stage + send confirmation SMS via GHL.
(2) "Appointment date passed" → Move to "Attended" stage + trigger review request (ask for Google review).
(3) "No booking within 72 hours of first contact" → Move to "Lost" stage + flag for staff review.

5.3

Add tasks for staff follow-up

In Pipeline Settings → Automation, create task triggers:
(1) When contact enters "New Inquiry" → Create task: "Contact within 1 hour — confirm booking preference".
(2) When contact enters "Booked" → Create task: "Send pre-appointment info via SMS 24h before".
(3) When contact enters "Attended" → Create task: "Send review request + treatment plan follow-up".

5.4

Assign lead sources for reporting

Create UTM/source tags so you can measure which channel brings the most bookings:
missed_call_sms — came via missed-call auto-SMS
chat_widget — came via website chat
organic — called the clinic directly
referral — referred by existing patient

06

Test the full flow

Before going live, run through the entire flow yourself to make sure everything works end-to-end.

6.1

Test the missed-call SMS

Call the clinic's number from your phone. Let it ring for 25 seconds (past the 20-second trigger). Hang up. Check that: (1) You receive an SMS within 10 seconds. (2) The SMS has the booking link. (3) The link opens the Calendly page correctly.

6.2

Test the booking page

Tap the booking link. Pick a time slot and confirm. Check that: (1) The appointment appears on the clinic's Calendly calendar. (2) A confirmation SMS arrives. (3) The contact appears in GHL with the correct pipeline stage. (4) Staff receive a notification (if configured).

6.3

Test the chat widget

Visit the clinic's website. Click the chat bubble. Send a message like "I need to book a check-up for next week." Check that: (1) The AI responds within seconds. (2) It asks for your name and phone. (3) It shows available appointment times. (4) After confirming, you get an SMS confirmation.

6.4

Check the pipeline

Go to Opportunities in GHL. Find your test contact. Verify they're in the "Booked" stage. Check that the appointment time and patient details are visible in the contact record.

All tests passing? The clinic is live. Every missed call is handled automatically, every website visitor gets AI assistance, and every booking flows into the pipeline without staff effort. Monitor the pipeline daily for the first week to catch any edge cases.


Need help setting this up?

ReplyFirst can configure GoHighLevel for your dental clinic as part of the service. We'll handle the full setup, testing, and staff training.

Contact us to get started →