Everything it does today

Built for how time is really handed out

A clinic, a salon, a five-a-side pitch and a restaurant each mean something different by “a booking”. Here is everything CalendarBook does about that — no roadmap items, no asterisks.

Three ways to hand out time

Set per calendar, not per account, so one organization can run a clinic's slots and a café's tables side by side. New calendars take fixed slots; ask us to switch one to capacity or a token queue.

Fixed time slots

Cuts the open hours into equal slots. Doctors, stylists, turf and courts.

Capacity / party size

Any start time; each booking uses up seats. Restaurant tables and classes.

Token queue

No times — people get numbers in order and an estimated arrival.

Google Calendar, both ways

Bookings land on the right person's Google Calendar as they are taken. Anything already there closes the matching slot, so nobody is booked into a dentist appointment they forgot to mention.

CalendarBook

Asha · 10:30 Closed Rohan · 12:00

Google Calendar

Asha · 10:30 Other clinic Rohan · 12:00

Never double-booked

Availability is decided in the same step that writes the booking. Two taps on 6 pm: one wins.

Tap 1 · 18:00Booked

Tap 2 · 18:00Taken — pick another

Weekly hours and split shifts

Two rows on a Monday is a morning clinic and an evening one, with the gap between them closed. Holidays override a single date.

Every provider keeps their own diary

Invite them as a Provider and assign their calendar. They see only their own bookings, their leave closes it, and nobody keeps a spreadsheet of who is in on Thursday.

Several businesses, one login

Switch organizations from the top bar. Roles, calendars and data stay apart.

Your data in its own database

Each organization's bookings, customers and calendars live in a database of their own, not in a shared table with everyone else's. Download all of it as JSON whenever you like.

"bookings": [{ "customer": "Asha Menon", "calendar": "Dr Rao",
  "date": "2026-10-20", "start": "10:30", "status": "confirmed" }, …]

The whole list

Grouped the way the app is, each with the page of the docs that explains it.

Your booking page

A public page where anyone picks a time and books, without an account.

How it works
  • One link for the whole organization: /book?org=your-name
  • Customers choose who with, then a week strip of genuinely free times
  • You decide which details are required — phone, email, party size, notes
  • Optional approval: new bookings wait as “pending” until someone confirms
  • A reference code and a link to view or cancel, with your own cut-off
  • Your headline, intro and confirmation message

The board

One day, every calendar side by side, every booking in place.

How it works
  • Click an empty time to book it; the time snaps to the slot length
  • Move, complete, mark no-show or cancel from the card menu
  • Google events and busy times drawn right on the columns
  • Leave shows as “Covered by …” or closes the column
  • Search and filter calendars, or show just one
  • Refreshes itself every few minutes while it is open

Google Calendar

Connect Google accounts and link the calendars that take bookings.

How it works
  • New bookings written to Google at once, removed when cancelled
  • Events already in Google close the matching slots
  • Read-only calendars block time without taking bookings
  • Create a new Google calendar for a room or chair from inside the app
  • The next 30 days re-read from every linked calendar each night
  • A live day and week view across all the connected diaries

Calendars & hours

Each calendar carries its own rules.

How it works
  • Appointment length from 5 minutes to 2 hours
  • Open hours per weekday, several windows a day, copied to all days in a click
  • Minimum notice and how far ahead people may book
  • Gaps before and after each booking for the tidy-up
  • A description and extra details shown to customers
  • Tags like “VIP” or “Family friendly” to search the board by

Team & roles

Four roles, decided once, enforced on every request.

How it works
  • Owner, Admin, Provider and Staff
  • Providers see only the calendar assigned to them
  • Invitation links that work for 14 days, revocable any time
  • Transfer ownership to another member
  • Several organizations under one login, switched from the top bar
  • Branches and outlets as locations

Customers

Anyone who books is added automatically.

How it works
  • Matched by phone number first, then email
  • Booking history, last visit and customer-since on every row
  • Tags and notes for the regulars
  • Search by name, phone or email
  • Price and paid recorded on each booking
  • Revenue and new customers on the dashboard

Holidays, leave & closures

The days that are different, handled once.

How it works
  • Organization-wide holidays close every calendar
  • Leave per person, with someone covering or the calendar closed
  • Special hours for a half day or an extra session
  • A note customers see on the booking page when a day is closed
  • Everyone can add their own leave
  • Coming up and past, listed separately

Data, export & API

Yours to take, and yours to build on.

How it works
  • Each organization in a database of its own
  • One-click JSON backup of every calendar, customer and booking
  • A REST API with scoped keys, shown once and stored only as a hash
  • Keys limited to certain calendars, with an expiry
  • The API books through the same engine as the app
  • Close the organization yourself, with 30 days to change your mind

Nothing here costs anything to try

The free plan is a real plan. The paid features run for 14 days on top.