“Can I get extra towels at 8 PM?”
Reception nods, scribbles it down, hands it to housekeeping at the next opportunity, which turns out to be 9:30. Housekeeping checks the note an hour later. The towels arrive at 10:45. The guest stopped waiting at 9:00 and went to bed irritated.
Multiply that by 30 small requests a day. Multiply that by 365 days. That’s the gap between guests who tell their friends about your hotel and guests who don’t.
What Tasks does
Distinct from Repairs (which is for slow building / maintenance work) — Tasks is high-volume short-lived dispatch. Extra pillow / carpet cleaning / laundry pickup / wake-up call / late checkout. The kind of request a receptionist takes 30 seconds to log and a runner closes 15 minutes later.
Status flow
Simpler than Repairs:
open → in_progress → done
↑
cancelled
No blocked state — tasks are short. Closer-can-reopen and auto-claim on Start work both apply (same patterns as Repairs).
The hour-and-minute due-time picker
This is what sells it for hotels. “Towels at 8 PM” is a real deadline. Not “today” — 8 PM. The system understands the difference.
A custom due-time picker pairs date and time fields with preset chips for one-tap dispatch:
- +1h — towels at the current time + 1 hour
- +4h — extended-stay request
- End of day — by close of shift
- Tomorrow 9 AM — late check-out + breakfast
- Clear — no specific time
Native time picker on iOS and Android opens the OS scroll-wheel — no custom mobile UI needed.
Quick-tasks row
Six defaults seeded in all four languages — Extra pillow, Extra towels, Carpet cleaning, Bathroom issue, Laundry pickup, Room service order. Admin can replace via the Manage quick-tasks dialog. When the hotel adds even one custom quick-task the defaults are no longer shown — admins replace, not extend.
Tap a preset → compose dialog opens with title, category, and priority pre-filled, user types the room or area and submits. Two taps per dispatch.
Categories
8 fixed system categories (Guest request, Housekeeping, Food & beverage, Concierge, Transport, Cleaning, Linen & laundry, Other) plus admin-managed custom list.
Permissions
- Status change: admin, tasks editor, or assignee
- Reopen: admin, tasks editor, current assignee, or closer
- Edit fields: admin, tasks editor, or reporter
- Self-claim: any user with read access can claim an unassigned active task
- Delete: admin always; reporter while still open
- Comment add: admin, tasks editor, reporter, assignee (with a length cap and live counter)
Dashboard
4-stat header (Open, In progress, Done today, average time-to-close in hours). Open-by-priority stacked bar with legend. Hourly distribution of new tasks over the last 7 days (24 bars per hour-of-day) — surfaces shift-pressure peaks. By-category bars (top 6). Oldest open tasks (top 10 with red flag at 4+ hours). Top closers today.
The 4–7 PM check-in spike. The 10 PM late-arrival surge. The 7 AM breakfast wave. Patterns that should be obvious but never are without data behind them.
Who it’s for
Front office teams logging guest requests and dispatching to the right department. Heads of housekeeping clearing the queue at peak hours. F&B managers tracking room-service requests separately from F&B floor service. GMs measuring time-to-close on small requests as a proxy for service quality.
The honest part
Most hotels run guest requests on memory and goodwill. Both are limited resources. The team that hands over to the next shift forgets things. The team that’s slammed at peak hour drops the ball on a small request that mattered to one guest.
A good task system isn’t about tracking everyone. It’s about making sure nothing slips through. The boring middle ground between front office and operations where hospitality is actually delivered — or actually fails.
How does your team track guest requests today — verbally, on paper, or in a system that everyone actually uses?