The 12-column tracker GCs use to monitor every subcontractor certificate of insurance across every active project. With days-to-expiration formulas, endorsement verification, and renewal cadence baked in so renewals stop landing 50 days late.
Why GCs need a real subcontractor COI tracker, not just a list of expiration dates
Every general contractor running more than three projects has the same Friday afternoon: a project administrator opens the COI binder, finds three certificates that expired last week, two that expired last month, and one from a sub who’s been on site for sixty days under a policy nobody verified. The status meeting on Monday will surface the gap, the prime’s risk manager will get pulled into a fire drill, and the sub will be told to stop working until a current cert lands. Except they won’t actually stop, because the project can’t afford the schedule slip, and now the prime is exposed on a worker who is materially uninsured for the work being performed.
The fix isn’t another reminder email. It’s a tracker. A single source of truth that captures every subcontractor’s certificate of insurance across every active project, calculates days-to-expiration on every row in real time, surfaces the policies that are 30, 60, and 90 days from lapsing, and tells the project administrator exactly which subs to chase this week and which can wait. Spreadsheets that just list expiration dates aren’t enough. The tracker has to capture which endorsements are on file (not just box-checked on the certificate), which carrier is on each policy and the carrier’s A.M. Best rating, which subcontract numbers and project IDs each policy covers, and the review cadence. Because COIs without a managed review process drift out of compliance the moment the sub’s renewal cycle hits.
What makes COI tracking on a federal or large-commercial project different from generic vendor-management work:
- Multiple policies per sub, all with different expirations. CGL, Auto, Workers’ Comp, Umbrella, and (sometimes) Builder’s Risk. Five policies per sub, each with its own expiration date. A single tracker row per sub doesn’t work; the granular structure is one row per policy.
- Endorsements are separate from box-checks. The certificate confirms the additional-insured language exists; the actual endorsement form on file (CG 20 10, CG 20 37, CG 24 04, CG 25 03, CG 20 01) proves it. Most COI trackers track expiration dates and stop there. The federal-grade tracker tracks both box-check and endorsement-on-file as separate columns.
- Carrier ratings matter as much as expiration dates. A current certificate from a B+ carrier is non-compliant on most federal projects regardless of how clean the form looks. Track the A.M. Best rating per carrier; flag when a renewal moves to a lower-rated insurer.
- Status thresholds drive the daily workflow. “Current,” “Expiring soon” (within 30 days), “Expired,” and “Pending renewal” are the four states a project administrator works through every Monday morning. The tracker has to surface them automatically. Manual color-coding doesn’t scale past 20 subs.
- Review history matters in audits. When the contracting officer asks for proof that the prime verified the sub’s COI before mobilization, the answer is the completed review log: who reviewed it, when, and what they found. The tracker doubles as the review record.
This tracker is the practitioner’s version. It’s the artifact a federal-prime risk manager actually maintains as the daily working document, not a quarterly report, not a management dashboard, but the spreadsheet open on the project administrator’s second monitor every morning. Use it on every active project. Update it the moment a new sub mobilizes. Re-run the review on every renewal cycle. Keep the completed tracker accessible to the agency contracting officer on demand.
Who this tracker is for
- General contractors managing 20–500+ subcontractor COIs across active projects
- Federal primes required to verify and retain sub-COIs under FAR 28.106 and Miller Act provisions
- Commercial GCs with insurance flow-down obligations to private owners and lenders
- Risk managers and compliance officers running weekly COI review passes and chasing renewals
- Project administrators maintaining the daily working binder of active sub coverage
- Insurance brokers advising the prime on renewal cadences and gaps
If you’re a sub trying to issue a clean COI back to your prime, you want our ACORD 25 review checklist (federal projects) instead. It’s the upstream review that determines whether the certificate lands on this tracker as Current or Flag.
The 12 columns the tracker captures
The tracker captures 12 columns for every policy on every subcontractor on every active project. Set up once per sub, refresh per renewal cycle:
- Sub legal entity name and DBA. The named insured on the certificate must match the subcontract signature block character-for-character. “ABC Inc.” is not the same as “ABC Construction LLC” on a claim. Capture the legal entity exactly as it appears on the COI; capture the DBA in a separate sub-field if the sub operates under one. DBA-and-parent-subsidiary mismatches generate the most preventable coverage disputes. Track both so they can be cross-checked against the subcontract.
- Subcontract number and project ID. Each tracker row ties a specific policy to a specific subcontract on a specific project. Multiple subs may operate under the same parent legal entity across multiple projects; the subcontract number plus project ID is what makes the tracker row uniquely auditable. When the contracting officer asks “which COI applied to subcontract 24-117 on Project Lima,” this column is how the tracker answers in five seconds.
- Carrier name and A.M. Best rating. The insurer named on the certificate plus the A.M. Best rating verified at ambest.com on the date of review. Most federal primes require A- or better; some require A or A+. A B+ carrier on a federal project is a common rejection trigger. Track the carrier separately per policy (CGL and Auto are often different insurers); flag when a renewal lands on a lower-rated carrier than the prior cycle.
- Policy type. CGL (Commercial General Liability), Auto Liability, Workers’ Compensation, Umbrella / Excess, Builder’s Risk, Professional Liability, Pollution, and others. Each row in the tracker is one policy type per sub per project. A sub with CGL, Auto, WC, and Umbrella on a single project occupies four tracker rows. Granular enough that any one policy can lapse without taking the entire sub offline in the tracker view.
- Effective date and expiration date. Pulled directly from the certificate’s policy table. The effective date confirms the policy was in force when the sub mobilized; the expiration date drives every downstream calculation in the tracker. Capture both even though the expiration date is the operationally relevant one. Auditors check both, and effective-date errors are common when subs roll between insurers mid-project.
- Days-to-expiration (formula-driven). Auto-calculated in the XLSX as =expiration_date - TODAY(). Conditional formatting drives the visual: green when >60 days, yellow at 30-60 days, orange at 0-30 days, red at expired. This column is what makes the tracker a daily working document instead of a static log. Every morning the project administrator opens the file and the visual surface tells them exactly which subs to chase. The formula recalculates automatically; nobody has to update it manually.
- CGL each-occurrence and aggregate limits. Federal-prime baseline is $1M per occurrence / $2M aggregate, with higher-risk trades (electrical, structural steel, demolition) commonly requiring $2M / $4M. Capture both limit values per policy, plus products-completed-operations aggregate as a separate sub-field when applicable. The tracker flags when limits drop below the subcontract requirement on renewal. A common mistake when a sub switches carriers mid-cycle without a broker double-check.
- Umbrella amount and follow-form Y/N. Federal primes often require $5M minimum umbrella; large commercial projects $10M+. Capture the umbrella limit and confirm whether it’s truly follow-form (follows the underlying CGL/Auto/WC terms exactly) or non-follow-form (narrower terms that leave gap exposure). A “$5M umbrella” with non-follow-form language is materially weaker than the same dollar amount on a follow-form basis, track both fields.
- Required endorsements verified (Y/N per endorsement). The five federal-grade endorsements every prime should track per CGL policy: CG 20 10 (Additional Insured, Ongoing Operations), CG 20 37 (Additional Insured, Completed Operations), CG 24 04 (Waiver of Subrogation, CGL), CG 25 03 (Per-Project Aggregate), and CG 20 01 (Primary and Non-Contributory). Capture each as its own Y/N column based on the certificate’s box-check or Description of Operations notation. State-specific WC waiver-of-subrogation forms get a parallel column.
- Endorsement copy on file (Y/N. Separate from box-check). This is the column most COI trackers skip. The certificate confirms the endorsement language exists; the actual endorsement form on file proves it. Federal contracting officers regularly audit the endorsement-copy file, not just the COI. Track this as a separate Y/N per endorsement listed in column 9. A sub with all five endorsements box-checked but no copies on file is a Flag, not Current.
- Last review date and reviewer name. Who at the prime reviewed the COI, on what date, and what they found. This column is the audit trail. When the agency contracting officer asks for proof that the prime verified the sub’s coverage before mobilization, the answer is the timestamped review entry. Update on every renewal cycle and every spot-check. Cycle the reviewer name through the risk-management team so review duty doesn’t ossify on one person.
- Status: Current / Expiring soon / Expired / Pending renewal. A formula-driven status field that summarizes the row at a glance. Current = effective, all required endorsements verified, days-to-expiration > 30. Expiring soon = days-to-expiration ≤ 30. Expired = days-to-expiration < 0. Pending renewal = sub has acknowledged the renewal request and a new cert is in flight (a manual override of the date-driven calculation). The status drives the Monday-morning project-administrator workflow: chase Expiring soon, escalate Expired, monitor Pending renewal.
How to set up and maintain the tracker per project
Set up the tracker at project kickoff, then maintain it as the daily working document for the project administrator. For each new sub mobilizing on a federal or large-commercial project:
- Pull the sub’s complete COI package (ACORD 25 + endorsement copies for CG 20 10, CG 20 37, CG 24 04, CG 25 03, CG 20 01). Add one row per policy type to the tracker (typically CGL, Auto, WC, Umbrella → four rows per sub minimum). Fill columns 1-8 from the certificate; columns 9-10 from the endorsements binder; column 11 from the review you’re performing right now.
- Confirm the formula in column 6 (days-to-expiration) is recalculating against TODAY(). Verify by checking a known expiration date. Confirm the status column 12 is auto-cascading from the date-driven inputs.
- Set the renewal-chase cadence: send the renewal-request email at 60 days from expiration, follow up at 30 days, escalate to the sub’s broker at 14 days. The tracker’s days-to-expiration column drives the cadence.
- Re-review the tracker every Monday morning. Address every Expiring soon row first, every Expired row immediately (stop-mobilization until corrected), and every Pending renewal row by close of week.
- On every renewal: pull the new COI + endorsement copies, update the row’s effective and expiration dates (column 5), update the carrier and rating if changed (column 3), update the limits if changed (columns 7-8), reconfirm endorsement Y/N (columns 9-10), and timestamp the new review (column 11). Status (column 12) auto-resets to Current.
Quarterly cadence: re-pull every active sub’s COI even when no renewal is in flight, and re-run the full review on each. Subs sometimes change carriers mid-cycle, drop endorsements without telling the prime, or move to a lower-rated insurer. The renewal email isn’t always the trigger. Quarterly spot-checks catch the off-cycle changes.
Stop chasing renewals 50 days late
The 12 columns above take a project administrator 8 minutes per sub to maintain across an active week, plus another 30 minutes per Monday-morning review pass. Multiply by 50 active subs across 4 projects and you’ve built a half-time job out of expiration tracking and renewal chasing. Contracts Connected’s COI Analyzer reads every certificate the moment a sub emails it in, automatically extracts the carrier, limits, expiration dates, and endorsements, validates them against the subcontract requirements, populates the tracker without a project administrator touching it, and auto-fires the 60/30/14-day renewal cadence to subs whose policies are approaching expiration. The same 12-column tracker, but the prime’s risk team gets the Monday-morning review brief auto-generated instead of building it themselves. This is the wedge: the COI Analyzer is what we built first because it’s the workflow most general contractors are drowning in. The tracker tells you what good looks like; the analyzer makes it run on every sub on every project without anyone touching it.
For educational purposes. These templates, checklists, and trackers are operator-built starting points designed to help you move faster on the kind of work that usually drowns construction admins in email chains. They are not legal, insurance, accounting, or tax advice. Each project, jurisdiction, and contract has its own quirks. Review the document, refine the language, and consult your attorney, broker, CPA, or compliance officer before relying on it for a live project decision.
Frequently asked questions about subcontractor COI tracking
How early should I start chasing a subcontractor’s COI renewal?
Industry standard is 60 days before expiration. Send the first renewal-request email at 60 days, follow up at 30 days, escalate to the sub’s insurance broker at 14 days, and treat the policy as Expired the moment the expiration date passes if no renewal cert has landed. Trackers that surface the days-to-expiration column let project administrators run the cadence at the row level. Without it, renewals routinely land 30-50 days after expiration because nobody noticed in time.
What’s the difference between a certificate of insurance and an endorsement?
The certificate of insurance (ACORD 25) is informational. It confirms a policy exists with certain features as of a specific date. The endorsement is the actual form attached to the policy that obligates the insurer to extend coverage to a third party (the additional insured) or waive a right (subrogation). Coverage is established by the policy and modified by endorsements, not by the certificate. Always collect copies of the actual endorsement forms (CG 20 10, CG 20 37, CG 24 04, CG 25 03, CG 20 01) referenced on the certificate. The ACORD 25 box-check confirms the endorsement is supposed to be there; the endorsement copy proves it actually is.
Which carrier ratings should I require on a federal project?
Most federal primes require A- or better at A.M. Best, with VIII or larger financial size. Some require A or A+. The carrier’s rating must be verified directly at ambest.com on the date of COI review. It doesn’t carry over from prior reviews because ratings change. Flag any policy that’s renewing onto a lower-rated carrier than the prior cycle, even if the new carrier still meets the minimum threshold; that’s a leading indicator the sub is shopping their insurance and may have had a claim event.
What happens if a subcontractor’s COI expires while they’re on the project?
The sub becomes materially uninsured for the work being performed and the prime’s exposure increases immediately. Best practice is a contractual right (in the subcontract) to stop the sub’s work and withhold pay applications until a current COI is provided. The tracker’s Expired status surfaces these rows on the daily review; the daily action is a same-day notice to the sub’s site superintendent and project manager, with a stop-work threat by close of business if no current cert lands. Don’t wait. Every additional day of work under expired coverage is incremental exposure.
Can I track sub COIs in a regular spreadsheet, or do I need software?
A spreadsheet works for portfolios under ~25 active subs across 1-3 projects, especially when the spreadsheet has the formulas and conditional formatting this tracker provides. Above that scale, the manual maintenance burden becomes the limiting factor. Industry estimates are 15-20 hours weekly on COI tasks for portfolios beyond 50 active subs. Software solutions that auto-extract endorsement data, run automated renewal-chase cadences, and integrate with sub-portal uploads start to make economic sense at that volume. Below it, a well-built tracker is competitive with most paid platforms.
What’s the audit risk if my COI tracker is incomplete?
On federal projects, the contracting officer can request the complete COI history for any sub on demand under FAR 28.106 documentation requirements. An incomplete tracker (missing endorsement-on-file Y/N, missing review history, missing carrier ratings) is a finding regardless of whether actual coverage was in place. The finding can trigger a corrective action requirement, withhold of pay applications, or in repeat-finding cases a referral for past-performance ratings impact. The tracker doubles as the audit record; if it’s not complete, the audit answer is “we’ll have to research it”, which is the wrong answer.