About this case study: it is based on a business typical of the ones we work with, not a named client, and every number comes from the assumptions at the end of the page. Swap in your own and the sums still work.
The problem
Across 400 units, about 240 maintenance requests come in each month. Many lack photos or the unit number, so the first step is often a call back.
The coordinator then calls vendors until one accepts, and updates the tenant and the owner separately.
What we build
- 1
One way to report
Tenants report through the portal or by text. The request asks for photos, unit and access details up front.
- 2
Triage by type and urgency
An AI step sorts requests into plumbing, HVAC, electrical and so on, and flags emergencies (active leaks, no heat or cooling) for an immediate call.
- 3
Vendors accept by link
The job goes to preferred vendors for that trade and area, who accept with one tap.
- 4
Everyone kept updated
Tenants and owners get updates at each step, and the vendor invoice is matched to the job.
Before and after
| Step | Before | After |
|---|---|---|
| Collecting missing details | Call back | Asked up front |
| Finding a vendor | Phone round | Accept by link |
| Tenant and owner updates | By hand | Automatic |
Where a person stays in control
Emergencies always reach a person by phone. Spending above the owner's approval limit waits for the owner.
Running cost
Roughly $150–300 a month for texting, AI usage and hosting.
Tools
- AppFolio or Buildium
- Twilio SMS
- AI triage
- n8n
How the numbers work
- 400 units with 0.6 requests per unit a month ≈ 240 requests.
- Admin time per request drops from 25 to 10 minutes: 240 × 15 min = 60 hours.
- Coordinator time costed at $26 an hour: 60 × $26 = $1,560.
Estimates, not promises. Use the savings calculator with your own hours and costs.
Want this for your business?
A free 30-minute call is enough to tell whether it fits, what it would take and what it would cost.

