A single lapsed COI on the wrong job can turn a profitable project into a six-figure liability. Most general contractors know this. The problem is not awareness. The problem is execution: tracking dozens of subcontractors, dozens of documents, and dozens of expiration dates across multiple active projects without anything falling through.
This guide covers exactly how to do that. You will get the full document list, the three main tracking approaches with honest tradeoffs, the alert cadence that actually prevents lapses, and a concrete implementation checklist. If you are managing more than a handful of subs, this is the operational foundation you need.
What Documents You Are Actually Tracking
Before you build a system, you need to know what the system has to hold. Most GCs conflate "certificate of insurance" with "compliance," but a COI is only the starting point.
The Certificate of Insurance
A COI is a summary document. The underlying policies are what matter legally, but the COI is what you can act on day to day. When you collect one, you need to verify specific fields, not just confirm the document exists.
- Policy type and limits: General liability, auto, workers compensation, and umbrella. Confirm the limits meet your contract minimums for each sub trade.
- Effective and expiration dates: Both the policy period and the certificate date. A COI issued today against a policy that expires next month is a near-term problem.
- Named insured: Must match the legal entity name on your subcontract. Mismatches are common and invalidate your coverage assumption.
- Additional insured endorsement: Your company (and often the project owner) must be listed as an additional insured on a separate endorsement, not just in the description box. This is one of the most commonly missed requirements.
- Waiver of subrogation: Your contract likely requires the sub's insurer to waive the right to subrogate against you. Confirm this is endorsed onto the policy, not just referenced on the certificate.
- Primary and non-contributory language: This provision establishes that the sub's policy responds first before yours. If it is missing, your insurer may try to share the loss proportionally. Require it in writing on the endorsement.
- Notice of cancellation: Many certificates list a standard 30-day cancellation notice, but verify your contracts require it and that the certificate reflects it.
Contractor Licenses
License requirements vary by state, parish, and trade. In Louisiana and most states, you need to track both the state contractor's license and any specialty licenses (electrical, plumbing, HVAC). License expirations are often annual and tied to continuing education requirements, so they can lapse without the sub realizing it. A sub working on your job without a current license is a code violation and a liability that lands on you.
W-9 Forms
The W-9 does not expire in the same way a COI does, but it needs to be on file before you issue any payment. If a sub's legal name or tax ID changes, you need a new one. Treat it as a gate at onboarding, not an afterthought at year-end when you are scrambling for 1099 data.
OSHA Documentation
Depending on your project type and contract requirements, you may need to collect OSHA 10 or OSHA 30 certifications for workers on site. These certifications have a shelf life. Some owners and public contracts require current OSHA training for every worker who steps on site. Track the individual certifications, not just a blanket affirmation from the sub.
Bonds
Performance bonds and payment bonds have their own terms and expiration logic. On larger projects or public work, your contract may require bonded subs for certain scopes. Collect the bond and track the term alongside your other documents.
Three Ways GCs Track This (And Their Tradeoffs)
Approach 1: Spreadsheets and Shared Drives
This is where most GCs start. A spreadsheet with one row per sub, columns for each document type, expiration dates, and a status flag. COI PDFs stored in a shared folder, organized by company name or project.
What works: It is free, immediate, and flexible. For a GC with fewer than ten active subs, a well-maintained spreadsheet is genuinely adequate.
What breaks down: Spreadsheets require manual updates. Someone has to open the file, update the date, and re-check the endorsements every time a sub sends a renewal. Nobody sets a calendar reminder for 45 days before expiration across 60 rows. The document storage and the tracking list are in two different places. And when the person who built the spreadsheet leaves, institutional knowledge walks out with them.
The bigger failure mode is the lapse gap. A COI expires on a Friday. The sub does not send the renewal until Tuesday. Nobody checked the spreadsheet over the weekend. The sub worked on Monday. You are now looking at a period of uninsured work on your job site, and you have no documentation that you caught it in real time. Industry experience suggests this scenario is far more common than most GCs want to admit.
Approach 2: Construction ERP or Project Management Modules
Platforms like Procore, Autodesk Construction Cloud, and Sage include subcontractor compliance modules or document management features. If you are already paying for one of these platforms, using their built-in compliance tracking is a reasonable choice.
What works: Documents live inside the same system as your project data. You can tie compliance status to project milestones and payment applications. The audit trail is built in.
What breaks down: These modules are often secondary features, not the core product. Alert logic can be limited. The interface for managing endorsement-level details is sometimes clunky. And if you have subs working across multiple projects in the system, managing their compliance record at the company level versus the project level can create duplication and confusion. You may find yourself doing significant manual work inside a tool that was supposed to automate it.
Cost is also a factor. Full ERP platforms carry subscription costs that are sized for larger firms. If your primary need is compliance tracking, you are paying for a lot of capability you do not use to get the module you need.
Approach 3: Dedicated Compliance Platforms
Platforms built specifically for subcontractor compliance tracking, like SubVerify, handle the entire workflow: document collection, expiration tracking, endorsement verification, alert cadences, and compliance dashboards by project and sub. The architecture is built around the compliance problem, not grafted onto a broader project management tool.
What works: Automated alerts fire before you have to remember to check. The dashboard gives you a real-time view of which subs are compliant across all active projects. SubVerify, for instance, is designed to close the lapse gap specifically, flagging expirations before they create an uninsured window rather than after. Document collection can be pushed to the sub directly, reducing the administrative burden on your office.
What breaks down: It is another system to onboard subs into, and change management takes time. If your subs are not responsive about uploading documents, you still have a process problem that no software fully solves. Integration with your accounting or project management tools varies by platform.
For GCs managing more than 20 to 30 active subcontractors, the dedicated platform typically pays for itself in avoided coverage gaps and administrative time. For smaller operations, it depends on your risk profile and how many projects are running at once.
The Expiration Alert Cadence
The most important thing your tracking system does is fire alerts before documents lapse. The cadence that works in practice is this:
- 60 days out: First notice to the sub. Give them maximum lead time. This is an informational alert, not an urgent one.
- 45 days out: Second notice. Ask for a confirmation that renewal is in process.
- 30 days out: Urgent notice. At this point, flag the sub's status internally and begin contingency planning if renewal is not confirmed.
- 15 days out: Escalation. If you do not have a current COI or license renewal in hand, the sub should not receive new work assignments and may need to be paused on active work depending on your contract terms and risk tolerance.
- Day of expiration: Status changes to non-compliant automatically. No manual judgment call required.
This cadence assumes your system is sending the alerts automatically. If you are doing it manually, be realistic: you will miss dates. The value of automation here is not convenience. It is that the alert fires on Saturday just as reliably as it fires on Tuesday.
Validation: Checking the Document, Not Just Receiving It
Collecting documents and validating documents are different tasks. Many GCs tick the box when the PDF arrives without checking whether the document actually meets their requirements.
Validation means reading the certificate against a checklist:
- Do the limits meet the minimums in your subcontract for this trade?
- Is your company listed as an additional insured on an actual endorsement, not just noted in the description field?
- Does the waiver of subrogation apply to all required policy types?
- Is primary and non-contributory language present?
- Does the named insured match the legal entity in your contract exactly?
- Is the license number current and in good standing with the issuing authority?
For license verification, do not rely solely on the document the sub provides. Most state licensing boards have a public lookup. Spot-check new subs and check any sub where you have a reason to be uncertain. A license can be suspended after issuance of the paper certificate.
Tying Compliance to Onboarding and Payment
The enforcement mechanism that makes compliance tracking real is connecting it to money. If a sub can get paid regardless of compliance status, your tracking system is administrative theater.
At onboarding, no sub should receive a signed subcontract or access to a project site until their compliance file is complete and validated. This means W-9 on file, COI validated with endorsements confirmed, and license current. Make this a hard gate, not a soft ask.
At payment, your accounts payable process should include a compliance status check before issuing a check or ACH. This does not need to be a deep re-review every time. It means confirming that the sub's status in your tracking system is current. If anything has lapsed since the last payment run, the payment holds until it is resolved.
This sounds strict. It is also the only thing that gives the compliance system teeth. Subs respond to payment holds faster than they respond to email reminders.
Common Failure Modes
Most compliance breakdowns at GC firms fall into a few patterns:
- The lapse gap: A COI expires over a weekend or holiday. The sub works. Nobody catches it until the next business day or the next audit. This is the most common and most avoidable failure, and it is entirely a function of manual versus automated monitoring.
- Fragmented systems: Documents live in email inboxes, the project manager's desktop folder, a shared drive, and a spreadsheet that nobody updates consistently. There is no single source of truth.
- Missing endorsements: The COI arrives and gets filed. Nobody checked for the additional insured endorsement or primary and non-contributory language. You find out there is a problem during a claim, not before.
- Mismatched entity names: The sub's legal entity name changed after they were acquired, restructured, or rebranded. Their COI still shows the old name. Your subcontract shows the new name. The coverage connection is broken.
- License blind spots: Specialty licenses (electrical, plumbing) are tracked for the sub's company but not for individual workers or sub-tiers. On projects with sub-tier requirements, this creates exposure.
Implementation Checklist
If you are building or rebuilding your compliance tracking system, work through this list in order:
- Define your standard document requirements by trade type (limits, endorsements, license types). Write this down and attach it to your subcontract template.
- Audit your current sub roster. Identify every sub with a missing or expired document before you fix the system.
- Choose your tracking tool based on sub count and project volume. Spreadsheet for under 10 subs, consider a dedicated platform above 25.
- Build your alert cadence into the system. 60, 45, 30, 15 days out. Automate it.
- Create a validation checklist and assign one person responsible for document review.
- Add a compliance gate to your onboarding workflow. No signed subcontract without a complete file.
- Add a compliance check to your payment run. Non-compliant status triggers a hold, not a reminder.
- Set a quarterly audit. Pull the full compliance report and resolve anything that looks wrong.
If you are building broader operational systems beyond compliance, the principles here apply to other workflows too. Warren & Sabb builds custom automation systems for exactly these kinds of operational problems, where the gap between what off-the-shelf software does and what your business actually needs creates real risk.
Compliance tracking is not complicated. It is disciplined. The firms that get it right are not using anything exotic. They pick a system, define the rules, automate the alerts, and enforce the gates. That is the whole thing.
Frequently asked questions
How often should I collect updated COIs from subcontractors?
You should collect a new COI from every subcontractor whenever their policy renews, which is typically annually. Do not wait for the sub to send it. Your tracking system should alert you 30 to 60 days before expiration so you can request the renewal proactively and have it in hand before the old one lapses.
What is the additional insured endorsement and why does it matter?
An additional insured endorsement is a formal policy modification that extends the sub's liability coverage to your company. Without it, your company is not actually covered under their policy, even if the certificate names you in the description box. Require a copy of the actual endorsement form, not just a notation on the COI.
What happens if a subcontractor's COI lapses while they are working on my project?
If a sub's coverage lapses and an incident occurs during that window, your general liability policy may be the only coverage responding to the claim. Depending on your policy terms, your insurer may also have subrogation rights against the sub. The practical result is that a lapse period shifts liability back to you.
Do I need to track workers compensation separately from general liability on subcontractor COIs?
Yes. Workers compensation and general liability are separate policies with separate limits and expiration dates. Both should appear on the COI and both should be tracked independently. A sub with current general liability but lapsed workers comp is still non-compliant, and you carry exposure for any worker injury that occurs during the lapse.
What is the best way to get subcontractors to submit compliance documents on time?
The most effective lever is tying compliance status to payment. When subs know that a lapsed COI or expired license will hold their check, they respond quickly. Automated reminders help with lead time, but the payment gate is what drives consistent compliance behavior across your sub base.