Google Calendar on a laptop — real-time salon booking sync
All articles
ProductManicBot EditorialUpdated 4 min read

Double-bookings that steal 2–3 hours a week — switched off in 2 minutes with Google Calendar

Connect Google Calendar and forget about double-bookings. Two-way sync, personal events block slots, offline-resilient with exponential backoff.

Double-bookings are the most irritating salon screwup. Client shows up, technician is busy with another, both parties annoyed, Google Maps reputation slips. Our measurements show that the average salon without calendar sync loses 2–3 hours a week to double-bookings and the rescheduling around them — that's half a workday a month.

The fix has been around forever, yet many salons don't turn it on: two-way Google Calendar sync. ManicBot connects in 2 minutes, runs 24/7, with exponential backoff protecting against Google API throttling.

This article covers what syncs, how to connect, and the gotchas you should know.

Why Google Calendar, not a separate CRM calendar

A technician lives in their personal Google Calendar. That's where:

  • meetings with friends and family stuff land;
  • weekend trips and vacations live;
  • training, courses, gym sessions;
  • doctor's appointments and other personal bookings.

If the work calendar is separate, sooner or later a technician will book a client at 2 PM Saturday — and at that same 2 PM they already have "sister's wedding". No CRM knows this.

The only fix: make Google Calendar the single source of truth about availability. ManicBot writes to it and reads from it.

What syncs (and in which direction)

ManicBot → Google Calendar

Every new booking lands in the technician's Google Calendar automatically:

  • event title: "Anna — manicure with coating";
  • time: accounting for service duration;
  • description: client contact, notes, link to the bot profile;
  • colour: customisable per service type (pedicure vs manicure).

If the booking is moved or cancelled in the bot, the Google event updates or deletes within seconds.

Google Calendar → ManicBot

Any Google Calendar event marked as "busy" automatically blocks a slot in the bot. That means:

  • if the technician put "lunch 1:00–2:00 PM", clients can't book 1:30 PM;
  • if the technician is on vacation with a week-long event, the bot stops offering slots;
  • if there's a studio standup, the slot is unavailable.

No manual "don't forget to block the day in the bot". One calendar, one source of truth.

Caching and offline resilience

Google API occasionally throws errors (rate limits, transient outages). If ManicBot blindly retried every time, Google would throttle the account fast. So we use exponential backoff: first error — 1 minute, second — 2, then 4, 8, 16. In parallel, ManicBot keeps a 24-hour-forward cache of busy slots, so even if sync briefly stalls, clients still see real availability.

DB columns for tracking: sync_retries, sync_retry_after, sync_last_error. Visible in the admin panel under "Google Calendar" — if anything goes wrong, the owner sees the cause immediately.

How to connect

  1. Open ManicBot admin → Settings → Google Calendar.
  2. Click "Connect".
  3. Authorize with your Google account. Grant read+write access to events.
  4. Pick a calendar (usually "Primary", but a separate "Work" calendar works too — we support both).
  5. Done. Initial full sync takes 30–60 seconds.

Each technician connects their own Google account separately. Important: ManicBot doesn't poke into a shared salon calendar — it respects each technician's privacy. The owner sees only an aggregate "5 events this week for X", no details.

What about private events

If an event is marked Private in Google, ManicBot sees only "busy" — no title, description, or attendees. No parsing of personal events. This is the default policy and it cannot be overridden.

Two-way edits

What if the technician edits an event directly in Google Calendar (say, moves a client's booking)? A Google webhook notifies ManicBot, and within 5–10 seconds the bot updates its DB. The client gets a reschedule notification automatically via Telegram.

What if the booking is cancelled in ManicBot? The corresponding Google event is deleted. Full symmetry.

Who it's for

Sync is available on Pro and Studio plans. The Start plan supports a Telegram bot only, no calendars — enough for a single-technician salon, but once you add a second person Google Calendar becomes mandatory.

Connection is free, no event limits. The only limit is on the Google API side, and it's so generous regular salons never hit it.

The bottom line

Double-bookings are a technical problem with a technical fix. ManicBot + Google Calendar removes them with 2 minutes of setup. Every technician in Google Calendar, every slot in the bot, zero manual copying.

If you haven't connected sync yet — it's the single easiest improvement you can make today. Open admin, hit Connect, and a minute later your schedule is dramatically more reliable.

Frequently asked questions

How much does ManicBot cost?

Start — 45 PLN/mo (1 master), Pro — 60 PLN/mo (5 masters + AI + Google Calendar), Max — 90 PLN/mo (unlimited). 14-day free trial. 0% commission on bookings, ever.

Which channels can clients book through?

Telegram, Instagram Direct, and a chat widget on the salon's website. All three channels are served by one AI receptionist with a shared conversation history.

Which languages does the AI receptionist understand?

Polish, Russian, Ukrainian, and English. The language is detected from the client's first message.