Free n8n template · Operations & HR

n8n Appointment Reminder SMS Workflow for Calendly and Twilio

This n8n workflow texts clients a confirmation when they book through Calendly, waits until 24 hours before the appointment and sends an SMS reminder through Twilio. Before the reminder goes out it checks Calendly to make sure the booking is still on. Genuine cancellations email your team so the slot can be refilled and text the client a rebooking link. Mobile numbers are converted to +61 format automatically.

Difficulty
Intermediate
Setup time
About 45 minutes
Nodes
15
Checked against
n8n 2.41
  • Calendly
  • Twilio
  • Gmail
  • n8n

Last reviewed October 2026

Get the free workflow

Enter your email to copy the n8n workflow and paste it straight onto your canvas.

Free. No credentials included. Works with n8n Cloud and self-hosted n8n.

What this workflow does

Missed appointments cost service businesses time they cannot get back. A physio, accountant, salon or trades business that books through Calendly gets email confirmations by default, but many clients never open them. A short text the day before is often the thing that prompts someone to show up, or to reschedule early enough for the slot to be offered to someone else.

Paid SMS add-ons in booking tools can be limited by plan, sender options or message wording. Running the reminders through n8n and Twilio puts you in control of the timing, the message text and what happens on a cancellation. Because the workflow checks the booking status at send time, clients who cancelled or rescheduled do not get a confusing reminder for an appointment that no longer exists.

Who it's for

  • →Clinics, allied health and wellness practices that take bookings online
  • →Professional services firms running consultations through Calendly
  • →Salons, studios and trades businesses losing time to no-shows
  • →Operations staff who want reminders without a paid booking add-on

How it works, step by step

  1. 1

    Calendly trigger

    The Calendly Trigger listens for two webhook events: invitee.created when someone books and invitee.canceled when someone cancels or reschedules.

  2. 2

    Route bookings and cancellations

    A Switch node sends new bookings down the reminder path and cancellations down the cancellation path, so each event only runs the steps it needs.

  3. 3

    Prepare booking details

    A Code node reads the mobile from Calendly's text reminder field or a phone question, converts numbers like 0412 345 678 to +61412345678, formats the start time in your timezone and works out the reminder time.

  4. 4

    Send the confirmation SMS

    If a valid mobile number exists, Twilio texts a confirmation with the appointment name, day and time, the reschedule link and your business name.

  5. 5

    Wait until 24 hours before

    Bookings more than 24 hours away go to a Wait node that pauses the run until exactly 24 hours before the start time. Same-day bookings skip the reminder because the confirmation has just been sent.

  6. 6

    Check the booking is still on

    An HTTP Request calls the Calendly API for the scheduled event. Only bookings with an active status move on, so cancelled or rescheduled appointments never get a stale reminder.

  7. 7

    Send the reminder SMS

    Twilio sends the 24-hour reminder with the appointment name, day and time, plus a reschedule link in case plans have changed.

  8. 8

    Handle cancellations

    On the cancellation path, a Code node prepares the details and flags reschedules. Genuine cancellations email your team with the reason, then text the client a rebooking link if they gave a mobile number.

What you need

Calendly account

A paid Calendly plan that supports webhooks, connected to n8n with OAuth2. The same credential is used to check booking status.

Twilio account and number

A Twilio number that can send SMS to Australian mobiles, plus your Account SID and Auth Token for the n8n credential.

Gmail or Google Workspace

A mailbox to send cancellation alerts to your team. Swap in Outlook or SMTP if you prefer.

n8n instance

n8n Cloud or a self-hosted instance that stays online, because Wait nodes hold executions until the reminder time.

Set it up in n8n

  1. 1

    Import the workflow JSON into n8n and open the Calendly Trigger. Connect your Calendly account with OAuth2 and choose user or organisation scope.

  2. 2

    In Calendly, make sure each event type collects a mobile number, either through text reminders or a required phone question whose label contains 'phone' or 'mobile'.

  3. 3

    Open each Twilio node, connect your Twilio credential and replace +61400000000 with your Twilio sending number.

  4. 4

    Edit the SMS wording so it names your business, and replace the rebooking link in the cancellation text with your own booking page.

  5. 5

    Set the team inbox in the 'Tell the Team a Slot Opened' Gmail node.

  6. 6

    Open workflow Settings and change the timezone if your business is not on Sydney time, for example Australia/Perth or Australia/Brisbane.

  7. 7

    Activate the workflow so n8n registers the Calendly webhook, then make a test booking with your own mobile number at least 25 hours ahead.

  8. 8

    Cancel the test booking and check that no reminder is sent and the cancellation alert arrives.

Get the workflow

Ways to customise it

  • +Add a second Wait and SMS for a two-hour reminder on the morning of the appointment.
  • +Swap the Calendly Trigger for the Cal.com Trigger node and map the booking fields in the Code node.
  • +Log every booking and cancellation to Google Sheets to track no-show and cancellation patterns.
  • +Send WhatsApp messages through Twilio instead of SMS for clients who prefer it.
  • +Add an email fallback for clients who did not give a mobile number.

For Australian businesses

Under the Spam Act 2003, a text that only gives factual information about an existing booking and clearly identifies your business is generally treated differently from marketing. Keep reminders factual: once you add offers or promotions, you need consent and a working opt-out. Mobile numbers are personal information under the Privacy Act 1988 if your business is covered, so tell clients you will use their number for reminders (APP 5) and only use it for that purpose. Store numbers in E.164 format (+614xxxxxxxx). Calendly sends times in UTC; the workflow converts them using the n8n timezone, so set Australia/Perth, Australia/Brisbane or Australia/Adelaide where needed, remembering Queensland and Western Australia do not use daylight saving.

Tools in this workflow

  • n8n

    Free plan + paid

    Automation

    A workflow automation platform that combines a visual node editor with code when you need it. It connects hundreds of apps and APIs and includes AI agent nodes that can call language models, tools and memory. Teams can self-host the free Community Edition on their own servers or use n8n's hosted cloud.

    Best for: Australian organisations that need automation data to stay onshore

    n8n review →
  • Zapier

    Free plan + paid

    Automation

    A no-code automation platform that links a large catalogue of web apps through workflows called Zaps. Beyond triggers and actions it now offers AI agents, chatbots, Tables for storing data, Interfaces for simple forms and pages, and an MCP server that lets AI assistants run Zapier actions.

    Best for: Small businesses automating admin without developers

    Zapier review →
  • Make

    Free plan + paid

    Automation

    A visual automation platform, formerly Integromat, where workflows called scenarios are built on a drag-and-drop canvas. It handles branching, iteration and error routes across a large library of apps, and adds AI agents and AI modules that can reason over data within a scenario. Make is owned by process mining company Celonis.

    Best for: Operations teams building complex multi-step workflows without code

    Make review →

Frequently asked questions

What happens if a client books less than 24 hours ahead?

They get the confirmation SMS straight away and the workflow skips the 24-hour reminder, because a second text so soon after the first adds little. You can lower the threshold in the 'More Than 24 Hours Away?' node if you also add a shorter reminder.

Will clients who cancel still get a reminder?

No. Just before sending, the workflow asks the Calendly API whether the scheduled event is still active. If it was cancelled or rescheduled, the run ends quietly. A reschedule creates a new booking, which starts its own confirmation and reminder.

Can I use Cal.com instead of Calendly?

Yes. n8n has a Cal.com Trigger node with booking created and cancelled events. Replace the trigger, update the field names in the two Code nodes, and change the status check to Cal.com's bookings API.

Do I need consent to send appointment reminders by SMS?

Purely factual reminders about a booking the client made, with your business clearly identified, are generally not treated as commercial messages under the Spam Act. Adding promotional content changes that. If you are unsure, take advice and ask for consent in the booking form.

Why does the workflow need to stay running for days?

The Wait node pauses each booking's execution until 24 hours before the appointment. n8n stores waiting executions in its database, so they survive restarts, but the instance must be running at the reminder time for the text to go out.

Want this running in your business?

AI Lab Australia sets up n8n workflows end to end: hosting in Australia, connecting your systems, testing with real data and handing over documentation.