How Do You Track Subcontractor COIs and Expirations?
By Wyatt Cooper · Published · 6 min read
Key takeaways
- Keep one log per job with a row per sub per policy: coverage, insurer, policy number, expiration date, whether limits and endorsements match the subcontract, and a status.
- Track the expiration date of every policy, not the certificate's date: a certificate stays the same while the policy behind it lapses.
- Ask for the renewal certificate 30 days before each expiration, so a lapse never reaches a pay app.
- Hold payment for a lapsed or missing certificate only where the subcontract says you may, and tell the sub exactly what clears the hold.
Track subcontractor COIs on one log per job, with a row for each policy each sub must carry: general liability, auto, workers' compensation and umbrella. Record the insurer, policy number, expiration date, whether the limits and endorsements meet the subcontract, and a status. Check new certificates at award, ask for renewals 30 days before each expiration, and check the log before every pay app. Where the subcontract allows, hold payment until a lapsed policy is replaced.
What to record for each certificate
A certificate of insurance is one page summarizing several policies, each with its own dates. Track the policies, not the page. The neighbor guide what paperwork a GC requires from a sub covers the whole packet; this is the insurance part, kept current for the life of the job.
| Column | Where it comes from | Why it matters |
|---|---|---|
| Subcontractor and trade | The insured box | The legal name must match the subcontract |
| Coverage | Type of insurance | One row each for general liability, auto, workers' comp and umbrella |
| Insurer and policy number | Insurer letter and policy number | Shows a renewal is a new policy, not the old one re-sent |
| Expiration date | Policy expiration column | The date that drives the renewal request |
| Limits meet the exhibit? | Limits column, against the subcontract's insurance exhibit | A certificate below the required limit is a rejection, not a filing |
| Endorsements received? | Additional insured and subrogation columns, plus the endorsement copies | The certificate alone doesn't add you to the policy |
| Status | Your review | Valid, expiring, expired, waiting for review, sent back or missing |
Keep the endorsement copies with the certificate, which does not change the policy (ACORD FAQ; the current ACORD 25 says so at the top); what each box means is in how to read a certificate of insurance, and the endorsement itself in how to get added as additional insured.
The cycle: request, check, watch, renew
- 1GCAt award, sends the insurance exhibit and asks for certificates and endorsements with a due date
- 2Sub's agentIssues the certificate and endorsement copies
- 3GCChecks names, limits, dates and endorsements against the exhibit; approves or sends back with what to fix
- 4GCWatches expiration dates; 30 days out, asks for the renewal
- 5Sub's agentSends the renewal certificate with the new policy dates
- 6GCChecks it like the first one; before each pay app, confirms nothing has lapsed
Three checkpoints catch nearly everything: before the sub mobilizes, before each pay app is approved, and 30 days before any policy expires. Workers' comp and auto often renew on different dates from general liability, so one sub can need several renewals a year.
Watch for certificates that promise more than the policy: Texas says no certificate filed with TDI can say more than the related policy (TDI FAQ), and how to read a certificate of insurance covers the blanket additional insured case. A certificate with hand-typed wording that contradicts its own policy is a reason to call the agent.
A worked example: the log on March 1
| Sub | Coverage | Expires | Days left | Status | Action |
|---|---|---|---|---|---|
| Ridge Concrete | General liability | June 30, 2027 | 121 | Valid | None |
| Ridge Concrete | Workers' comp | March 15, 2027 | 14 | Expiring | Ask for the renewal today |
| Marsh Electric | General liability | February 20, 2027 | −9 | Expired | Hold its March pay app, as the subcontract allows; ask for the renewal |
| Marsh Electric | Umbrella | September 1, 2027 | 184 | Sent back | Additional-insured endorsement missing |
| Pine Street Glazing | Auto | — | — | Missing | Mobilizes March 8: ask the agent this week |
The counts: March 1 to March 15 is 14 days; February 20 to March 1, 2027 is 9 days, because February 2027 has 28 days; March 1 to June 30 is 30 + 30 + 31 + 30 = 121 days. Marsh Electric is the one that matters this week: its general liability lapsed nine days ago, so any work it does now is uninsured as far as your file shows.
When to hold payment
- Put the right in the subcontract: payment may be withheld while any required insurance is lapsed or not on file. Without that clause, a hold is a dispute.
- Check the prompt-payment rules where the job is; they limit when and how payment can be withheld. See prompt payment acts.
- Tell the sub in writing what is missing and what clears it, the day you find it, not on pay day.
- Release the hold the day the renewal checks out, and pay on the next run.
How it works in Conflo
Conflo's Compliance tool keeps every required document for every company on the job: general liability, auto, workers' comp and umbrella certificates, W-9s, contractor licenses and lien waivers. You request a document with a due date and a note; the sub uploads it with its expiration date, carrier and policy number; you approve it or send it back with what to fix. Each one shows as valid, expiring within 30 days, expired, waiting for review or missing, with problems listed first for each company.
When a document marked as required for payment is missing, expired or waiting for review, that company is on payment hold, and its pay apps list the hold among what is holding payment. Issuing or signing a subcontract while a company's certificates, W-9 or license are missing or expired brings up a warning that an approver can override only with a reason, which is logged.

The bottom line
Track policies, not pages: one row per sub per coverage, with its expiration date, whether it meets the exhibit, and a status. Ask for renewals 30 days out and check the log before every pay app.
A payment hold is fair and quick when the subcontract allows it and the sub knows exactly what clears it.
Sources
- Certificates of Insurance: Frequently Asked Questions — ACORD. Read October 22, 2026.
- ACORD 25, Certificate of Liability Insurance (2025/12), on the approved certificates list — New York State Department of Financial Services. Read October 22, 2026.
- Certificates of Insurance Frequently Asked Questions — Texas Department of Insurance. Read October 22, 2026.
Questions
How do you track subcontractor certificates of insurance?
On one log per job with a row per sub per policy: coverage, insurer, policy number, expiration date, whether limits and endorsements meet the subcontract, and a status. Check at award, 30 days before each expiration, and before every pay app.
How far ahead should I ask for a renewal certificate?
About 30 days before the policy expires. That leaves time for the agent to issue it and for you to check it before a pay app comes in.
Can a GC hold payment for an expired certificate?
If the subcontract gives that right, and subject to the prompt-payment law where the job is. Put the clause in the subcontract and tell the sub in writing what clears the hold.
Is the certificate's date the expiration date?
No. The date at the top is when the certificate was issued. Each policy listed has its own effective and expiration dates, and those are what you track.
Do I need the endorsements, or is the certificate enough?
Get the endorsements. ACORD says a certificate doesn't change a policy; only an endorsement does, so additional-insured and waiver-of-subrogation wording must be in the endorsement itself.
Related
Preconstruction
What Paperwork Does a GC Require From a Sub?
The documents a GC asks a subcontractor for before work and payment: W-9, insurance certificate and endorsements, license, safety program, waivers.
· 6 min read
Preconstruction
How Do You Read a Certificate of Insurance (ACORD 25)?
How to read an ACORD 25 certificate of liability insurance box by box, and what a GC checks in each one against the subcontract's insurance exhibit.
· 7 min read
Preconstruction
How Do You Get Added as Additional Insured?
How a GC gets added as additional insured on a sub's policy: the subcontract wording, the endorsement to ask for, and why a certificate alone isn't enough.
· 6 min read
Money
How Does a GC Review a Subcontractor's Pay App?
Check each line against the field, stored materials against backup, change orders against approvals, then the math and the lien waivers. With an example.
· 7 min read
Role hub
The General Contractor's Guide: Bid to Closeout
What a general contractor is responsible for at every phase of a commercial job, from bidding and buyout to RFIs, change orders, pay apps and closeout.
· 8 min read
