"Hi — can we get extra towels to room 412?" is a simple ask, and guests expect it to be simple on the other end too: someone sees it, helps, and it's done. Butler AI's mobile app is built around that expectation — acknowledge, help, resolve — and every resolution rolls up into response-time numbers a manager can actually use.
A guest needs towels
The request comes in exactly where guests expect to send it — WhatsApp, no separate app or portal. "Hi — can we get extra towels to room 412?" is short, specific, and easy to act on immediately, which is the point: most guest requests aren't complicated, they just need someone to actually see them and respond.

Acknowledge. Help. Resolve.
On the butler mobile app, Carlos sees the request marked Active with a one-tap Resolve action sitting right next to it — no digging through a longer thread or a separate ticketing tool. He replies directly, "Of course Sofia — towels are on the way to 412 now," and the reply and the resolve action live in the same view.

Marked Resolved
Tapping Resolved does something specific, not cosmetic: the conversation is flagged closed, with a note that it'll reopen automatically if the guest messages again. That distinction matters — staff aren't guessing whether a thread is still open, and a resolved conversation doesn't silently swallow a guest's follow-up if they need something else.

Ops metrics update live
Every resolution feeds a manager-facing view in real time: average response time, median, P90, replies sent, and — the number that actually matters day to day — unresolved chats trending down as requests like this one get closed out. This is what makes "we're responsive" a number a manager can check, instead of an impression based on how loud the shift felt.

Helped, resolved, measured — in that order, every time. Guests get an actual close to their request instead of an open thread that fades out; managers get response-time numbers that reflect what really happened, not a guess. See how it runs at heybutler.io.