Analytics and AI · pace, pickup, alerts, recovery and the briefing
The Pace and pickup tab reads demand on both axes: how much is already on the books for a future stay date, and how that compares with last year at the same lead time. Alerts fire at the moments of decision without turning into spam. The Service recovery tab puts fixing things before check-out first, Reputation shows NPS and blocked review requests, and the AI briefing writes a reading built from aggregates only.
Pace: comparing at the same lead time
Every booking has two dates: when it was made and when the guest actually stays. Looking only at the second tells you how the month will end; looking at both tells you something you can still act on. On the Pace and pickup tab, choose the Stay date and the Lead time (days). The cards show On the books (how many units are already booked for that stay date), Prior year (how much was on the books at the same lead time, against a comparable date last year), the Variance with its verdict (Ahead of prior year or Behind prior year) and Occupancy against capacity. The comparison is never against the same calendar date: it is against a comparable day of the week at the same lead time, because a Saturday compares with a Saturday. And a cancellation weighs on the day it happened, so yesterday's number never improves on its own. The Build-up curve shows the book at several lead time points, so you can watch demand forming.
Pickup: what came in net
The Pickup for the coming dates table shows, for the days ahead, what came into the book net over the last 7 days. A negative number, highlighted in red, means more was cancelled than came in: it is the most direct alarm there is, and it weighs more when the stay date is close.
Alerts that are still worth reading
The system checks pace at the moments when a revenue manager actually decides: 60, 30, 14 and 7 days before arrival. Three situations raise a notice in the system notifications: a tentative hold with an expiring deadline (the notice starts within 48 hours of the deadline and turns critical on the last call; a hold that has already expired raises nothing, because warning after the fact is useless), pace behind prior year (only with a comparable baseline: with no history, being 100% below zero is noise, not news) and negative pickup. Each situation notifies once a day while it lasts, not on every processing cycle: an alert that repeats is an alert the team learns to ignore.
Recovery: fixing it while you still can
The Service recovery tab splits service cases into two lists, and the order is the message: first At risk before check-out, the cases for guests who are still in the house, because that is the only real window to fix things; then the other open cases. Each case shows the description and the severity. To close one, write in the What was done field and click Resolve: closing without saying what was done is not allowed, because without that there is nothing to learn from afterwards. Financial compensation to a guest goes through an approval authority before becoming a refund, via the system API.
Reputation: the right score at the right moment
The Reputation tab shows the NPS cards (score, promoters, passives, detractors and responses) calculated over the surveys that were answered, and the list of Review requests with the status of each one: sent or blocked, with the blocking reason visible (has not checked out yet, an open recovery case, recent negative feedback). A public review request is blocked while a case is open: asking for a score before fixing the problem is asking for the bad score.
AI briefing: aggregates only, with the numbers in view
- Open the AI briefing tab and choose the Reading type: Revenue, Guest experience or Group opportunity.
- Click Generate reading.
- The answer comes in two parts: Numbers behind the reading, the table of aggregates (and signals) that was handed to the model, and the Reading, the generated text. You can check where every sentence came from.
The reading is assembled from aggregates only: pace, pickup, occupancy, NPS, cases. Person level data, allergies included, is never sent to the model, and the system refuses to assemble the text if such data shows up along the way. AI usage is metered in your organization like any other AI call in the CRM, and generation only happens when you click: nothing runs on its own burning credit.