One reporting dashboard, built on the hotel’s live booking data.
A 150-room resort hotel in Brazil was building six separate AI tools that didn’t share any data. We built one dashboard that reads the hotel’s booking system directly and refreshes every morning.
- 1,206days of booking history loaded
- 0.05%largest gap from the hotel’s own monthly revenue report, over 19 months
- 4 of 6planned tools rebuilt in about three weeks
- Dailyrefresh at 6:30 am, with nobody touching it
Before the build.
The hotel’s team was building six separate tools on an outside AI platform, with costs heading towards about AUD $20,000 a year. The tools didn’t talk to each other. Staff exported spreadsheets from the booking system and uploaded them by hand to get a monthly report.
Nobody could see occupancy, revenue and receivables in one place without rebuilding the numbers first.
What we built.
A live link to the booking system
The dashboard reads the hotel’s property management system directly, and never writes to it. More than three years of history were loaded on the first run.
The monthly report, rebuilt
The report staff used to assemble by hand is now produced from the booking data.
Payroll and the income statement
The accountant uploads the payroll file. The system reads the figures, shows where each one came from and waits for a person to confirm.
Front desk tools
Quotes with real availability sent by WhatsApp, guest receipts, a daily arrivals and departures sheet, and bank reconciliation from a CSV.
AI that can’t make up numbers
The code works out every figure first. The AI only explains those figures, and the prompt forbids any number it wasn’t given.
Tools requested in plain words
Staff describe a tool they need in Portuguese. The system asks one question at a time and writes the specification.
What changed.
- Within 0.05% of the hotel’s own monthly revenue figures across 19 months, with room capacity matching exactly.
- A 26% error caught. A published average daily rate of R$942 was really R$745. A test now blocks the mistake that caused it.
- Receivables of R$746,000, not R$12.4 million, once the booking data was read properly. A simple sum of the raw records gives the wrong answer.
- 259 days of missing payment data were found and fixed during the first load.
Where it stands.
This dashboard was built as a working prototype for the hotel’s team and runs every day on their live data. It isn’t a finished client engagement, so the hotel isn’t named.
Got systems that should be talking to each other?
Request a free 20-minute call. Zac will email you within one business day to arrange a time.
Request a free 20-minute call