Business — notifications and analytics
Notifications
Calbok sends these messages automatically:
| Notification | Trigger | Channel |
|---|---|---|
| Booking confirmation | Appointment created (confirmed, with or without deposit) |
|
| Reschedule notice | Appointment rescheduled | |
| Cancellation notice | Appointment cancelled | |
| Reminder | Configurable hours before appointment | Email + SMS (if SMS configured) |
| NPS / review request | 24 h after completed appointment |
Email sender (your self-service task): set your From name and Reply-To in
/app → Settings → Business & branding. If you leave them blank, your Operator's
default sender is used.
Set reminder timing and the per-service SMS reminders option under Setup → Services. SMS delivery also needs the Twilio connection configured by your Operator.
Opt-out / suppression: customers who reply STOP are automatically suppressed from SMS. Customers who click "Unsubscribe" in a marketing email are suppressed from marketing emails. Transactional messages (confirmations, reminders) can only be suppressed by a hard STOP.
Analytics and KPI dashboards
Open Reports → KPI dashboard to review your business figures. Your Operator configures any optional AI narrative service.
The analytics module turns your appointments, payments, and reviews into operational intelligence. All queries run over your own data — nothing is sent to third-party analytics services.
Built-in KPIs
| KPI | What it measures |
|---|---|
| Revenue per provider | Booking value (sum of snapshotted prices) grouped by provider |
| No-show rate | No-shows ÷ (confirmed + no-shows) |
| Cancellation rate | Cancellations ÷ total bookings |
| Online-booking adoption | Share of bookings made through the public booking page |
| Deposit-collection rate | Bookings with a paid deposit ÷ deposit-required bookings |
| Peak times by type | Busiest hours / days, broken down by service type |
| Bookings | Count of all bookings, trended by booking-creation date (weekly) |
| Recall / retention rate | Completed visits whose customer has a future booking ÷ completed visits |
KPIs are filterable by date range, provider, service, and location, and viewable by day, week, month, or quarter grain.
Dental analytics pack
If your account has the dental pack enabled, you get pre-built KPI presets tuned for dental practices (no-show rate, recall/retention, bookings by service type, in-boundary revenue, peak-times).
The dental pack uses in-boundary data only: appointment records, durations, and collected payment amounts from your Calbok data. It does not access clinical records, EHR data, treatment-level financials, or insurance claims — those live outside Calbok and are outside the scope of this analytics module.
AI narrative (optional)
If your Operator has enabled AI narrative and configured an LLM API key (the Operator does this in their admin console under Settings → AI Narrative for your tenant), each KPI dashboard includes a plain-English summary written by the AI.
The AI sees only aggregated, non-identifiable metrics: counts, rates, and averages. It never sees patient names, emails, phone numbers, appointment IDs, or any personal information.
Example output:
"Revenue per provider is up 14% week-on-week, driven by a spike in Tuesday afternoon slots. The no-show rate fell from 8% to 5% — consistent with the reminder cadence change you made on the 3rd. Online-booking adoption reached 71% on Thursday. Consider opening a second provider slot on Friday mornings, where peak-times demand is outpacing supply."
Activity log
🔧 Operator-managed. The audit trail is in the Operator's admin console (Audit Log). Ask your Operator if you need a record of changes.
Every administrative action (create/edit/cancel appointment, change settings, add provider) is recorded with a timestamp and actor. The log is read-only and cannot be edited.