What a weekly Clean File / Block Pay report should show
Monday morning. Pay-app Friday is already on the calendar. Your office manager does not need another portal. They need one status page: who returned the ACORD 25, who still owes a W-9, whose lien waiver is unsigned for this cycle, and who is drifting toward a hold.
That page is the weekly Clean File / Block Pay report. Done right, it is boring on purpose. It answers receipt questions against your written checklist. It does not invent insurance opinions or legal findings.
This guide is for US general contractors and remodelers (roughly 5–50 people) still living in email and a spreadsheet. Admin process only.
Important disclaimer
CleanFile Ops provides administrative document collection and tracking only. We do not certify that insurance coverage is adequate, compliant, or suitable for your job. We do not provide legal advice, draft custom lien instruments, or act as your broker or attorney. Clean / Block / Watch on a report means receipt status versus your stated rules. Your broker and counsel own coverage and risk calls. Your PM, controller, or owner owns pay and hold decisions.
Clean / Block / Watch — receipt status, not “approved insurance”
Say this before you build the sheet:
- Clean — every item on your written checklist is on file for this pay cycle, fields match what you asked for, and nothing is expired against the dates you care about.
- Block Pay (candidate) — something required is missing, expired, incomplete, or unmatched to your checklist. Admin flags it. Your PM or controller decides whether to hold pay.
- Watch — still usable this cycle, but attention is due soon: COI inside a 30-day window, an UNCLEAR field, a W-9 name that does not quite match the roster, a waiver routed but not signed yet.
None of those labels mean anyone “approved the insurance.” A Clean row means the paperwork you asked for is present and current as compared to your rules. Adequacy stays with licensed advisors. Payment stays with you.
If the checklist lives only in someone’s head, Clean and Block become arguments. Write the rules once. Then the report is status math, not theater.
Sample Monday table (columns that earn their keep)
Keep the table readable in a 15-minute standup. Policy poetry belongs in a linked PDF folder, not in the weekly view.
| Column | What it is for |
|---|---|
| Sub name | Entity on the subcontract / roster (same string you chase against) |
| COI expiry | Date from the ACORD 25; flag if past or inside your Watch window |
| W-9 on file | On file / Incomplete / Missing (mask TIN on any wide-share view) |
| Waiver status (this cycle) | Not started / Sent / Signed / Entity mismatch |
| Deficiency flags | Short codes vs your checklist: EXPIRED, MISSING AI PDF, HOLDER MISMATCH, W-9 NAME, etc. |
| Notes | Last chase date, broker CC’d, “GC said drop,” “waiting on revised cert” |
Add a single Clean / Block / Watch status cell if you want the bucket visible without scanning flags. Optional extras: trade/project (multi-job shops), last chase date as its own column, next-action owner.
What not to put on the Monday sheet: “Approved by CleanFile Ops,” “meets code,” “lien-proof,” or a green stamp that looks like a coverage opinion. Those phrases confuse who owns the call.
Weekly admin cadence
From the chase-desk side, the week is a loop, not a fire drill:
- Snapshot the register before the report goes out. Same columns every week so PMs learn the shape.
- Bucket rows into Clean / Block / Watch using client-stated rules only. UNCLEAR is Watch or Block — not “probably fine.”
- Summarize the chase log: Day-0 requests, Day-3 nudges, Day-7 escalate-to-GC copies, Day-14 Block candidates. Use that ladder or a shorter one; the report should show what happened.
- Send PDF + live sheet link to the people who decide pay — usually PM + controller, sometimes the owner on small jobs.
- Leave the decision off the PDF. “Block Pay candidate — missing COI” is fine. “Do not pay under [statute]” is not admin work.
Renewals ride the same loop. A row that was Clean last month becomes Watch at 30 / 14 / 7 days out, then Block if the cert expires with no replacement on file. Same labels. No drama language.
Friday panic is usually a Monday problem that never got a status page. If the Block list is visible mid-week, the last-minute PDF hunt shrinks.
Who owns the pay call
| Role | Owns |
|---|---|
| Admin / chase desk | Requests, tracking, field flags vs your checklist, weekly status report |
| PM / controller / owner | Hold vs release pay; which subs stay on the job |
| Broker | Whether limits and endorsements fit the risk |
| Counsel | Lien statute questions, custom instruments, disputes |
CleanFile Ops, when you use us, is the chase desk. We collect and organize. We compare fields to requirements you provide. We do not stamp “insurance approved,” rewrite waivers, or tell you which hold is “safer under the statute.”
Your shop can still be generous — soft holds, partial draws, “pay this week and chase by Friday.” Those are GC calls. The report’s job is to make the gap visible.
What the report ties to: ACORD 25, W-9, state waivers
A useful pay-app document checklist for most small GCs is short:
- COI (ACORD 25) — current dates, named insured vs roster entity, certificate holder and any AI / P&NC / WOS language presence compared to what your subcontract asks for. The certificate is informational; many GCs also want endorsement PDFs when their contract says so. Flag MATCH / MISSING / EXPIRED / UNCLEAR. Do not rewrite the cert. Do not opine “you’re covered.”
- W-9 — on file for the same entity before first pay (and updated when entities change). Name mismatches go to your controller or CPA. Mask TIN on wide-share reports.
- State lien waiver for this cycle — the client-supplied or public state form you chose, routed for signature, returned with a signer that matches the sub entity closely enough for you to accept. Collection status only. No “this waiver type is safer” commentary from the chase desk.
Chase those three in one thread when you can. Subs hate three email storms for one payday.
Field-level COI hygiene: Subcontractor COI checklist for GCs. Before-first-pay W-9 rhythm: W-9 collection workflow for small GCs. Index: /resources.html.
How to read sample Monday buckets
Clean
Apex Electric — COI exp 2026-11-12 · W-9 on file · progress waiver signed for draw #4 · no open deficiency flags.
Block Pay (candidate)
River HVAC — COI expired 2026-08-28 · W-9 on file · waiver not started · flag: EXPIRED COI. Last chase: Day-7 escalate copy sent.
Watch
Northside Drywall — COI exp 2026-09-20 (inside 30 days) · W-9 on file · waiver signed · flag: RENEWAL DUE. Broker CC’d on renewal request.
Those lines are status. Your PM still decides whether River gets paid, partial-paid, or held. The report made the missing cert hard to overlook.
Want someone else to send this every week?
If your Monday list already lives in a messy inbox and you want an async desk to chase the PDFs and ship the weekly Clean File / Block Pay snapshot, CleanFile Ops runs that for small US GCs. Your rules. Your pay decision. No software rip-and-replace.
- Intake / questions: [email protected]
- How it works: https://vynlith.com
- More guides: /resources.html
Related
- Home: CleanFile Ops overview
- Resources: guide index
- Subcontractor COI checklist for GCs
- W-9 collection workflow for small GCs