Booking Automation for Salons and Barbershops
Kenyan salons and barbershops lose revenue every week to no-shows, double bookings, and customers who message on WhatsApp at 11pm expecting an instant response. Salon booking automation using free tools (Google Forms, Google Calendar, and WhatsApp Business) solves all three problems. Here is how to set it up in an afternoon.
Kenyan salons and barbershops lose revenue every week to no-shows, double bookings, and customers who message on WhatsApp at 11pm expecting an instant response. Salon booking automation using free tools (Google Forms, Google Calendar, and WhatsApp Business) solves all three problems. Here is how to set it up in an afternoon.
The Booking Problem Every Salon Owner Knows
Walk into most salons in Nairobi, Mombasa, or Kisumu and ask how they handle bookings. The answer is usually: customers call, send a WhatsApp message, or just walk in. Appointments live in the stylist's head, in a paper diary, or scattered across WhatsApp conversations.
This system breaks in predictable ways.
No-shows. A customer books for 2pm, does not come, and does not call. The stylist waited, turned away walk-ins, and lost that time slot's revenue.
Double bookings. Two customers book the same slot because the stylist forgot to check the diary, or the diary is at the shop while the stylist is answering WhatsApp from home.
Late-night booking requests. Customers message at 9pm or midnight asking for availability. The stylist sees the message in the morning, replies, but the customer has already gone to a competitor who responded first.
No reminders. Even genuine customers forget. Life gets busy. A reminder the day before cuts no-shows significantly.
What You Are Building
The automated booking flow works like this:
- Customer fills in a Google Form with their preferred date, time, and service
- The form response lands in a Google Sheet
- You (the salon owner or manager) review the request and confirm or suggest an alternative
- A confirmation message goes to the customer on WhatsApp
- A Google Calendar event is created for the stylist
- An automatic reminder goes to the customer 24 hours before the appointment
You can set up steps 1-4 in an afternoon using free tools. Steps 5 and 6 require a small amount of Google Apps Script, which you can copy from templates.
Step 1: Create Your Booking Form
Open Google Forms and create a new form called "Book an Appointment at [Salon Name]."
Add these fields:
- Your name (short answer, required)
- Phone number (short answer, required, add validation for phone format)
- Service (dropdown or checkboxes: Braiding, Styling, Haircut, Treatment, Nails, Beard Trim, etc., based on your services)
- Preferred date (date picker, required)
- Preferred time (dropdown with your available slots: 9:00am, 9:30am, 10:00am, etc.)
- Stylist preference (dropdown, optional: Any, [Stylist 1 Name], [Stylist 2 Name])
- Anything we should know? (long answer, optional, for notes like "I am bringing a reference photo")
Customize the confirmation message that appears after submission: "Thank you! We will confirm your appointment on WhatsApp within 2 hours during business hours (9am-7pm). If you need to cancel or change, please WhatsApp us at [number]."
Get the form link. Click Send, copy the link, and shorten it using a free URL shortener. This short link goes on your WhatsApp Business profile, Instagram bio, and Facebook page.
Step 2: Set Up Your Booking Sheet
Google Forms automatically creates a connected spreadsheet. Open it and add these extra columns next to the form responses:
| Timestamp | Name | Phone | Service | Date | Time | Stylist | Notes | Status | Confirmed By | Reminder Sent |
|---|
The Status column tracks where each booking stands: New, Confirmed, Rescheduled, Cancelled, Completed, No-Show.
Add conditional formatting: green for Confirmed, yellow for New (needs your attention), red for No-Show.
Sort the sheet by date so upcoming appointments are at the top. You can also create a filtered view that shows only today's appointments.
Step 3: Confirm Bookings on WhatsApp
When a new booking comes in, you get an email notification from Google Forms. Open the sheet, check the requested date and time against your calendar (or diary), and send a confirmation on WhatsApp.
Confirmation template (save as WhatsApp Business quick reply, shortcut: /confirm):
"Hi [name]! Your appointment is confirmed. Service: [service]. Date: [date]. Time: [time]. Stylist: [name]. Location: [address]. Please arrive 5 minutes early. If you need to reschedule, let us know at least 24 hours before. See you then!"
If the requested slot is taken (shortcut: /reschedule):
"Hi [name], thanks for booking! Unfortunately, [time] on [date] is already taken. We have availability at [alternative time 1] or [alternative time 2]. Which works for you?"
After confirming, update the Status column in your sheet to "Confirmed" and add the event to Google Calendar.
Step 4: Reduce No-Shows with Reminders
No-shows are the biggest revenue leak for Kenyan salons. A simple reminder system cuts them significantly.
24-hour reminder: The day before the appointment, send a WhatsApp message.
Template (shortcut: /reminder): "Hi [name], just a reminder about your appointment tomorrow at [time] for [service] at [salon name]. Please reply YES to confirm or let us know if you need to reschedule. Thank you!"
Asking for a "YES" reply is important. It makes the customer actively commit, which psychologically reduces no-shows. If they do not reply, you know there is a risk and can try calling.
Automating the reminder. If you want this to happen automatically instead of manually, use Google Apps Script to send an email reminder the day before (for customers who provided email) or create a Google Calendar event with a notification. For WhatsApp reminders, the semi-automated approach works: set a daily alarm for "check tomorrow's bookings and send reminders."
If a customer does not confirm: Call them. A 30-second phone call saves you the revenue of that time slot. If you cannot reach them and they do not show up, you have freed the slot for a walk-in.
Step 5: Add the Booking Link Everywhere
The form only works if customers can find it.
WhatsApp Business profile. Add the booking link to your catalog description and your profile's website field.
WhatsApp auto-reply. Set your WhatsApp Business greeting message to include the booking link: "Welcome to [Salon Name]! Book your appointment here: [link]. Walk-ins welcome too. Hours: Mon-Sat 9am-7pm."
Instagram bio. Add "Book: [link]" to your bio.
Facebook page. Add the link as a call-to-action button.
Physical signage. Print a small sign for your salon with a QR code that links to the form. Customers waiting in the salon can book their next appointment on the spot.
WhatsApp status. Post the booking link as a WhatsApp Status once a week.
Handling Walk-Ins Alongside Bookings
Most Kenyan salons depend heavily on walk-in traffic. Automation should support walk-ins, not replace them.
Block walk-in slots. In your calendar, do not fill every slot with bookings. Keep 30-a significant portion of your capacity open for walk-ins. If you have four styling stations, only allow bookings for two or three of them.
Use the booking form for walk-ins too. When a walk-in customer arrives, the receptionist (or you) can quickly enter their details into the form. This keeps all records in one place.
Priority system. Customers who booked should never wait longer than walk-ins. If you consistently have more walk-ins than you can handle, increase booking slots and add a "Currently busy, expected wait: [X] minutes" update on your WhatsApp Status.
Handling Multiple Stylists
If your salon has more than one stylist, the booking system needs a small adjustment.
Create separate calendars. In Google Calendar, create a calendar for each stylist (e.g., "Jane's Schedule," "Mike's Schedule"). When you confirm a booking, add it to the specific stylist's calendar.
The booking form already captures stylist preference. If a customer chooses "Any," assign based on availability. If they request a specific stylist, check that stylist's calendar before confirming.
Share relevant calendars. Each stylist should see their own calendar on their phone. They know what is coming without asking the receptionist.
Cost of This Setup
Google Forms: Free Google Sheets: Free Google Calendar: Free WhatsApp Business: Free QR code for signage: Free (generate at any QR code website) Printing the sign: a reasonable cost-500 depending on size
Total: essentially free, unless you count the 3-4 hours to set everything up.
When to Upgrade to Paid Tools
The free setup works well for salons with one to five stylists and up to 20 bookings a day. If you grow beyond that, consider:
Fresha (free for basic use). A salon-specific booking platform with online booking pages, automated reminders, and client history. The basic version is free; they make money from payment processing.
Setmore (free plan). General appointment scheduling with a booking page, calendar sync, and email reminders. The free plan supports up to four staff members.
Square Appointments (free for individuals). Includes booking, reminders, and point-of-sale. Good if you also want to accept card payments.
For a practical grounding in how these tools connect and work together, the AI and Automation for Beginners course covers building similar workflows step by step.
FAQ
How do I handle deposits or prepayments to reduce no-shows?
Some Kenyan salons require a deposit (typically a significant portion of the service cost) to confirm a booking. You can add an M-Pesa payment step after the form submission. Your confirmation message would say: "To confirm your booking, please send a deposit of KES [amount] to M-Pesa [Till/Paybill]. Share the confirmation code here." Only mark the booking as Confirmed after receiving the deposit. This works especially well for expensive services like braiding that take hours.
What if I do not have a receptionist to manage the form?
You manage it yourself between clients. The form collects requests, and you review them during breaks (lunchtime, between appointments). Set your confirmation message expectation to "within 2 hours during business hours" so customers know they will not get instant confirmation. Even checking the form three times a day (morning, lunch, evening) is enough for most small salons.
Will customers actually use an online form instead of just calling?
Younger customers (under 35) generally prefer it because they can book at any hour without calling. Older customers may still prefer calling or walking in. Keep both options available. The form does not replace phone bookings; it adds a channel that works when you cannot answer the phone. Over time, as customers see the confirmation and reminder flow, more of them will switch to the form.
How do I handle same-day bookings?
Set a cutoff in your form. Add a note: "For same-day appointments, please call or WhatsApp us directly at [number]." Same-day bookings need immediate confirmation, which a form-based system cannot guarantee unless you check it constantly.
Frequently Asked Questions
### How do I handle deposits or prepayments to reduce no-shows?
Some Kenyan salons require a deposit (typically a significant portion of the service cost) to confirm a booking. You can add an M-Pesa payment step after the form submission. Your confirmation message would say: "To confirm your booking, please send a deposit of KES [amount] to M-Pesa [Till/Paybill]. Share the confirmation code here." Only mark the booking as Confirmed after receiving the deposit. This works especially well for expensive services like braiding that take hours.
What if I do not have a receptionist to manage the form?
You manage it yourself between clients. The form collects requests, and you review them during breaks (lunchtime, between appointments). Set your confirmation message expectation to "within 2 hours during business hours" so customers know they will not get instant confirmation. Even checking the form three times a day (morning, lunch, evening) is enough for most small salons.
Will customers actually use an online form instead of just calling?
Younger customers (under 35) generally prefer it because they can book at any hour without calling. Older customers may still prefer calling or walking in. Keep both options available. The form does not replace phone bookings; it adds a channel that works when you cannot answer the phone. Over time, as customers see the confirmation and reminder flow, more of them will switch to the form.
How do I handle same-day bookings?
Set a cutoff in your form. Add a note: "For same-day appointments, please call or WhatsApp us directly at [number]." Same-day bookings need immediate confirmation, which a form-based system cannot guarantee unless you check it constantly.
7-minute Welcome lesson, no purchase required
Bonaventure Ogeto
Founder, Mctaba Labs
Software engineer building products for the African market. Teaching 10,000+ students across multiple platforms. BSc Mathematics & Computer Science from JKUAT.