A Booking Page for Massage Therapists and Estheticians
Real service durations, an intake question that actually matters before a treatment, and a deposit that stops last-minute cancellations from costing you the whole slot.
By Keepp Team
A massage or skincare treatment is time-boxed in a way a lot of services aren’t — a 60-minute deep tissue session and a 90-minute facial are genuinely different products, not the same appointment with a longer number attached, and the health and safety information you need before either one starts is real, not a formality. Most independent massage therapists and estheticians end up managing this through a mix of texting, memory, and a paper intake form filled out in the waiting room — workable, but exactly the kind of thing a booking page should be handling before the client even walks in.
This post covers what a booking page needs specifically for massage therapy and esthetics. For the underlying mechanics — availability, calendar sync, payment — see taking bookings and appointments online.
Real durations for real services
A 30-minute express facial, a 60-minute massage, and a 90-minute combined treatment aren’t the same offering scaled up or down — set each one up as its own booking offering with its actual duration and price, so a client picks the real thing they want rather than a generic “book a session” slot that doesn’t tell them what they’re actually getting until they show up.
Intake questions that aren’t optional
Health and safety information isn’t a nice-to-have for massage and skincare work — pregnancy, injuries, allergies to specific products or oils, skin conditions that affect what treatment is appropriate. A required custom question on the booking offering means this information exists before the appointment starts, not as a rushed conversation while the client is already on the table. Marking the field required means a session can’t be booked without it — there’s no version of the appointment on your calendar where you’re missing something you actually needed to know.
A deposit that protects a slot that can’t be resold last-minute
A cancelled massage appointment with two hours’ notice is very hard to fill with someone else. Setting an offering as paid means the slot only confirms once a deposit clears, through your own connected Stripe account — the money is yours directly the moment it clears, not held or released by anyone else. Cancellation and rescheduling terms are shown to the client before they book, so a same-day cancellation policy is a stated rule going in, not a negotiation after it happens.
Buffer time between appointments
Massage and esthetics work almost always needs real turnaround between clients — resetting the room, prepping products, a few minutes to actually breathe between sessions. Buffer time built into each offering means the page never books someone into a slot that doesn’t leave you room to reset, without you manually blocking gaps on a calendar by hand.
Calendar accuracy that protects a fully booked day
Connecting your Google Calendar means anything already on it — a personal appointment, a session booked another way — blocks that time automatically on your page, so a new booking never lands on top of something you’re already committed to. That matters more for a day that’s supposed to be back-to-back than it does for a schedule with natural gaps in it already.
Selling retail products alongside sessions
If part of the business includes selling skincare products, oils, or gift cards, that’s a product block on the same page, through the same connected Stripe account — a client can restock a product they liked after a facial without you sending a separate invoice or pointing them somewhere else.
Common questions
Can I require different intake questions for a massage vs. a facial? Yes — each booking offering has its own independent question set, so a massage’s injury and pressure-preference questions and a facial’s skin-type and allergy questions don’t overlap or interfere with each other.
What if I need to change buffer time seasonally? Buffer time is set per offering and can be adjusted any time — a busier season with tighter scheduling and a slower one with more room between clients don’t require rebuilding the offering, just updating one setting.
Can returning clients skip the intake questions on future bookings? Each booking captures its own answer snapshot, so a returning client answers fresh each time — useful when something like an injury or a product allergy has changed since their last visit.
Where to start
Set up each service with its real duration, a required intake question for anything you can’t safely skip, and a deposit sized to actually protect the slot. Take bookings — free to start, deposits included on the free plan.
Set up your first booking offering at keepp.link — free to start, deposits included on the free plan.