The 24/7 Virtual Front Desk: Automated Booking for a Med Spa

By Ralph Benitez2 min read
n8n booking automation for a medical spa with calendar checks and reminders

An n8n workflow I built for a medical spa that takes a booking, checks the calendar in real time, confirms it, and runs the reminders. If the slot is taken, it offers the next open times on its own.

The full automation, built in n8n. View only.

Problem

A medical spa lives and dies by its calendar. Bookings came in through a form, but the front desk still had to check availability, confirm the appointment, log it, and chase the reminders by hand. That is slow, it only happens during office hours, and every missed slot or no-show is money gone.

They wanted the booking side to run on its own, around the clock, without a person babysitting it.

Approach

I built the whole flow in n8n so it handles a booking from the first click to the final reminder.

A webhook catches the form submission (a Typeform, a Tally form, or a custom landing page all work). A code step cleans up the incoming data, pulls out the client name, contact details, treatment type, and requested time, then converts the date into a standard ISO format so the calendar checks line up and nothing breaks on timezones.

From there it queries Google Calendar for that exact slot, and a switch decides what happens next: the time is open, or it is already taken.

Solution

When the slot is open, the workflow does four things at once. It books the event in Google Calendar, logs the client and booking details to a Google Sheet for tracking, sends the client a clean confirmation email with prep instructions and the location, and pings the team in Slack so staff know someone is coming.

Then it runs the reminder sequence. It waits until 24 hours before the appointment and sends a reminder to both the client and the team. It waits again until 2 hours out and sends a final nudge. That is the part that cuts down no-shows.

When the slot is taken, it doesn’t just say no. It pulls a wider view of the calendar, maps out the busy times over the next seven days, and runs a bit of JavaScript to find the five earliest open slots. Those five options go straight into an email the client can pick from with one click, so there is no back-and-forth to reschedule.

A couple of things worth calling out. The waits are real pause states, so the workflow holds its place for hours or days without falling over. The next-available slots are worked out on the fly instead of hardcoded, so it always offers real openings. And the client emails and the team alerts run on separate tracks, so one never holds up the other.

Result

The front desk stopped being tied to the phone and the calendar. Bookings get confirmed and logged the moment they come in, day or night. The two-step reminder sequence keeps people showing up, and the auto-reschedule catches the leads that used to slip away when their first choice was full. It runs all day and night, and only needs a person when something genuinely needs one.

Want results like this for your business?

Let's talk about automating your busywork. Book a free 15-minute call.

Read next