How a Mid-Size GC Cut RFI Chase Time With Owned Workflows (Not Another Portal)
A 48-person GC was burning 12–15 hours a week chasing open RFIs across email, Procore, and sticky notes. Owned owners, SLAs, and a human gate cut chase time roughly in half — without buying another portal seat.
Thursday at 4:40 PM, the project coordinator still had sixteen open RFIs with no clear owner.
Some sat in Procore as "pending." Some lived only in a superintendent's text thread. Two had architect replies buried under a forwarded change-order chain. The coordinator's job that afternoon was not design coordination. It was archaeology — digging for who owed the next answer before the Friday pull plan meeting.
That pattern is normal on mid-size jobs. What was not normal was how long it stayed normal: 12–15 hours a week of chase across three active projects, with average open items sitting 8–12 business days before anyone escalated. The firm already paid for Procore. More seats would not fix missing ownership.
Here is what changed when they treated RFI chase as a workflow with decision boundaries — not another log to stare at.
The starting point: three truths, one spreadsheet
The GC (commercial + light industrial, ~48 people, three to five active jobs) already had:
- Procore as the official RFI log
- A "hot list" spreadsheet the coordinator rebuilt every Monday
- Claude used ad hoc by one PM for drafting long RFI responses
What they did not have:
- An owner map. "Open" is not an owner. Ball-in-court was tribal knowledge.
- Thresholds that forced escalation. Day 10 looked like day 3 in the inbox.
- A send gate. Drafts went straight from a chat window into email — tone drifted, wrong people got copied, adoption stalled after one awkward ping.
They did not need a new portal. They needed rules the team would keep: who owns the next action, when it escalates, and who approves anything that leaves the job.
What we built in four weeks
Engagement shape was a short Workflow Sprint: map the chase, write the exception rules, wire a draft queue, keep humans on the send button.
1. Owner buckets before automation
Every open RFI got one of five buckets — written in plain English, stored in a small lookup the coordinator could edit without a developer:
| Owner bucket | Signal | Next action |
|---|---|---|
| Design reviewer | Pending architect / engineer return | Reminder draft to reviewer |
| Trade partner | Sub owes markup or response | Reminder draft to sub |
| Internal GC / PM | Not routed or held for coordination | Slack ping to named PM |
| Owner / CM | Client decision pending | Escalate only — no polite nudge spam |
| Hold | Dispute, legal-ish language, superintendent "do not ping" | No auto draft |
If the team could not name the exception, it stayed Hold. That single rule prevented the automation from embarrassing the field.
2. Claude drafts; humans still own the words
Claude sat behind a structured prompt — project name, RFI number, spec context, days open, last known reply, target tone (first nudge vs second vs escalate). Output landed in a draft queue, never Gmail.
The win was not "AI writes RFIs." The win was consistent fields and fewer blank-page rewrites. The coordinator edited ~30% of drafts in week one; by week three edits were mostly name and tone tweaks.
3. SLA thresholds the PM actually agreed to
- Day 0–3 overdue: first reminder draft (owner bucket only)
- Day 4–7: second reminder; PM copied on the draft card
- Day 8+: Slack escalate with a one-line package summary — chase stops until a human decides
Those numbers were not industry gospel. They were what this GC would enforce. Soft thresholds that nobody keeps are just dashboard theater.
4. Approve / Edit / Reject before anything leaves
Nothing reviewer- or client-facing sent without a named person clicking approve. The gate is the feedback loop: every edit teaches the next draft. Skip it and one bad send kills trust for the whole crew.
Results after six weeks
Measured the same way they felt the pain:
| Metric | Before | After (~6 weeks) |
|---|---|---|
| Coordinator chase time | 12–15 hrs/week | 6–7 hrs/week |
| Avg days open before escalation | 8–12 business days | 4–6 business days |
| "Where is this RFI?" Slack pings on pull-plan mornings | Daily scramble | Rare — owner visible on the card |
| Wrong-party reminder incidents | 2–3 in the month before | 0 after the gate shipped |
What did not move: Procore license count. They still use the same log. The difference is the work around the log — owners, SLAs, drafts, and a human gate.
One PM put it this way: "We stopped pretending the portal was the process. The process is who owns the next answer and who can send."
Why this is a case study in ownership, not tools
Claude helped with draft language. A lightweight workflow runner (n8n in their stack) moved cards and posted Slack approvals. Neither tool was the product.
The product was the decision boundary pack:
- Owner buckets before send automation
- Escalation thresholds written down
- Hold list for exceptions
- Human approval on every outbound
That is the Home Depot Rule on a real job: you can buy the tools and still lose Mondays to chase if ownership lives in one person's head. Own the loop, then automate the boring middle.
Soft next step
If your office or project coordinator is still rebuilding a hot list every Monday, start with the owner map — not a new seat. We walk through that on a Free Quick Assessment (20–30 minutes). Book a discovery call at cloudbeast.io/schedule.
Ready to see where AI fits in your business?
Book a call — we'll map your workflows, quick wins, and a realistic path forward.