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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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 |
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.
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.
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.
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.
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.
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.
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.
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.
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.
Every new contact needs to move through a structured pipeline from first inquiry to booked patient. GHL's pipeline system tracks this automatically.
Go to Opportunities → Pipelines → Create Pipeline. Name it "Dental Clinic Pipeline". For dental, we recommend 4 stages:
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.
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".
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
Before going live, run through the entire flow yourself to make sure everything works end-to-end.
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.
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).
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.
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.
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 →