How to verify contractor progress reports before a builder's risk renewal
When a builder's risk file lands on your desk for renewal, the stage-of-completion number on the declarations page usually comes from one source: the contractor's own pay application. The G702/G703, a percent-complete line in an email, a phone call from the broker relaying what the GC told them last week. It's the only number most underwriters have ever had to work with, and it's also the number with the most obvious incentive problem attached to it.
That doesn't make contractors dishonest. A superintendent filling out a draw request has reasons to round up (draw timing, lender pressure, keeping the schedule story consistent) that have nothing to do with insurance. But the insurance exposure moves with the actual state of the structure, not with the number on the pay app, and those two things drift apart more often than renewal files assume.
Why self-reported progress updates don't hold up on their own
The core issue is that percent complete, as reported, measures cost incurred against the schedule of values. It doesn't measure what's standing on the site. A project can be 60% complete on cost (structural steel, MEP rough-in, a lot of expensive interior finish work purchased but not installed) while the building envelope is nowhere near dried-in. For a builder's risk underwriter, the envelope status matters more than the cost curve, because that's what drives water and wind exposure.
There's also the renewal-cycle gap itself. Most builder's risk policies renew annually or at project milestones, which means the file you're updating is working off a progress snapshot that's already weeks or months stale by the time it reaches the underwriting desk. A lot can change on an active site in that window, including things nobody had a reason to mention: a footprint expansion, a change order that added a wing, a fence line that came down and never went back up.
None of this means the contractor's number is wrong. It means it's one input, and renewal underwriting files that treat it as the only input are pricing exposure on trust rather than on observation.
What an independent verification pass actually checks
Verifying a progress report doesn't require a site visit on every file. The useful checks are narrower than that:
- Does the footprint match what was underwritten? A slab or frame that's larger (or smaller, or shaped differently) than the original schedule of values is the single clearest sign the self-reported number needs a second look.
- Is the structure at the stage the pay app implies? Framing up versus still at foundation is visible from above even when the finer-grained interior percentages aren't.
- Has site security changed? Fencing down, a gate left open, materials staged in a way that wasn't there last month. These are underwriting-relevant on their own, independent of percent complete.
A repeat image of the site, pulled on a monthly cadence and compared against the prior read, answers all three without anyone having to ask the contractor to confirm their own number. The check doesn't depend on the party being checked.
Building it into the renewal underwriting file
An outside progress read earns its keep as a standing exhibit, attached at every renewal rather than pulled out only when something looks off. File it alongside the pay application, note where the two agree, and flag where they don't. Most of the time they'll line up fine, and that agreement is itself useful documentation if the file is ever reviewed or reinsured. When they don't line up, you've caught the drift before the renewal price gets set off a number that's already out of date.
Builder's Risk Monitor builds exactly that exhibit: a monthly read of stage of completion, footprint change, and visible site security pulled from repeat high-resolution imagery, delivered as an overlay you can drop straight into the renewal file.
If percent-complete verification keeps coming down to "the contractor says so," it might be worth seeing what an independent monthly read looks like on one of your active files.