Most small contractors only learn what a certificate of insurance is worth when the annual premium audit arrives. The auditor asks for proof of coverage for every subcontractor you paid last year. Some of those subs never sent a certificate, and some sent one that lapsed in March. The auditor then counts what you paid those subs as your own payroll and charges premium on it. One framing sub you paid $60,000 can add $5,000 to $10,000 to a workers comp bill you thought was settled.
Avoiding that bill doesn't take expensive software. It takes a simple system that you actually follow: collect the right documents, verify them, track expiration dates, and refuse to pay without current coverage. This guide covers each step.
Why Uninsured Subs Become Your Problem
Your workers compensation and general liability policies are priced on an estimate of your exposure, usually your payroll or your revenue. At the end of the policy year the carrier audits your books and replaces the estimate with real numbers. Here, real numbers include every dollar you paid a sub who can't show their own coverage.
Insurers see it this way: if your uninsured drywall sub's helper falls off a scaffold, your comp policy will likely end up paying the claim. Many states make the general contractor the “statutory employer” of an uninsured sub's workers. Since you carry that risk, the carrier charges you for it.
Here's a typical example:
- Sub payments without valid COIs: $85,000
- Comp rate for the carpentry class code: $11.50 per $100 of payroll (rates vary widely by state and trade)
- Added comp premium: $9,775
- GL premium added on top (often charged on uninsured sub costs too): another $1,500–$3,000
The bill arrives months after the jobs closed, so you can't pass it on to a customer, and it comes straight out of a year's profit you thought was already final. Some auditors give a materials credit if the sub's invoice separates labor from materials. If it doesn't, expect them to count the full invoice.
A certificate you don't have on audit day counts the same as no insurance. The auditor won't accept “he told me he was covered.”
What to Collect From Every Sub
A certificate of insurance, usually an ACORD 25 form, only summarizes coverage. It doesn't grant you any rights. Collect the certificate plus the supporting documents your contracts require. For most residential and light commercial work, ask for:
- General liability — $1M per occurrence and $2M aggregate is the usual minimum. Raise it if your own policy or the owner's contract requires more.
- Workers compensation — statutory limits, plus employer's liability (often $500K/$500K/$500K or $1M). If the sub has no employees, get the state's exemption certificate or a written statement. Know the rules for “ghost policies” in your state.
- Commercial auto — if the sub drives company vehicles to your site or hauls materials.
- Additional insured endorsement — the actual endorsement page, not just a checked box on the certificate. CG 20 10 covers ongoing operations and CG 20 37 covers completed operations. Completed ops coverage protects you when a leak shows up two years later.
- Waiver of subrogation — stops the sub's carrier from suing you to recover what it paid out.
- Primary and non-contributory wording — makes the sub's policy pay before yours.
- W-9 — not insurance, but collect it at the same time so year-end 1099s aren't a scramble.
The endorsement is the step people skip most. A certificate can say “Certificate holder is named additional insured” while the policy has no endorsement behind it. In that case the wording means nothing. Ask the sub's agent for the endorsement form number and keep a copy with the certificate.
Verify Before You File
Fake and altered certificates are more common than most contractors think. Editing a PDF is easy, and a sub whose policy was cancelled for non-payment has every reason to send last year's certificate with new dates. Use these verification rules:
- Get certificates from the agent, never from the sub. Ask for the agent's email and request the COI directly, naming you as certificate holder. A certificate forwarded by the sub is a red flag.
- Check that names match exactly. The named insured on the certificate should match the name on the sub's W-9 and invoices. “Mike's Framing” and “MJR Construction LLC” are different entities.
- Check the policy dates against your work dates. The coverage has to span the days the sub was on your site. Paying in June doesn't matter if the work was in April and the policy started in May.
- Look up the workers comp policy. Many states run free online coverage lookups by business name or FEIN, and it takes about two minutes.
- Read the description of operations. If the sub's class code is landscaping and they're framing your second floor, the carrier may deny the claim. Your auditor may also disallow the certificate.
Rule of thumb: if you can't reach the agent who issued the certificate, treat the certificate as missing.
Build a Tracking System You'll Actually Use
Expired certificates cause more audit charges than missing ones. A sub hands over a valid COI at the start of the relationship, the policy renews or lapses eleven months later, and nobody checks. Two years later you have a folder of outdated certificates and a five-figure audit bill.
A tracking log needs these fields for each sub:
- Sub name and FEIN
- Agent name, phone, and email
- GL expiration date and limits
- Workers comp expiration date or exemption status
- Auto expiration date (if required)
- Endorsements on file (AI ongoing, AI completed ops, waiver, primary/non-contributory)
- Date verified and how (agent email, state lookup)
Then add two habits. First, set a reminder 30 days before each expiration date and email the agent for the renewal certificate that day. Second, before you approve any sub payment, check the log. Ten seconds of checking can save hundreds of dollars in premium per invoice.
The log can be a spreadsheet, but it works better next to your job costing. If the sub's coverage status sits beside their invoices, a lapse shows up when you're about to pay. In TrestleBook you can attach coverage details and expiration dates to each sub on a job, so the reminder comes up when you're reviewing that job's costs rather than buried in a separate file.
Ready to put this into practice? Download TrestleBook Free — it’s free and works offline.
Make “No COI, No Check” a Contract Term
Tracking only helps if it has consequences. Put the insurance requirement in your subcontract or master subcontract agreement, and tie it to payment:
- Coverage minimums are spelled out — list the limits and endorsements from the section above.
- Certificates come before mobilization — the sub doesn't start until a verified COI is on file.
- Payment is conditioned on current coverage — any invoice for work done while coverage was lapsed is held until proof of coverage is provided.
- Audit chargeback — if you're charged added premium because the sub had no coverage, you can deduct it from money owed or bill it back to them.
- Notice of cancellation — the sub must tell you within a set number of days (10 is common) if any required policy is cancelled or not renewed.
The chargeback clause gets attention. A sub who argues about paying $40 for a certificate request takes it seriously once they see they'd owe you $6,000 at audit. Enforce it the first time. If you let it slide once, subs will expect you to let it slide again.
Holding payment also protects you when the money has already moved. If a sub hits a lapse halfway through a job, you can stop the next payment before it goes out. Recovering money you've already paid is much harder than holding money you still owe.
Holding back a $4,000 progress payment for a week while a sub fixes their coverage costs you nothing. Paying it and then finding out at audit costs you the premium plus the argument.
Preparing for the Audit Itself
When the audit notice comes, usually 30 to 90 days after the policy period ends, you want to hand over a complete package. Don't let the auditor build the picture from your bank statements. Prepare:
- A sub payment report for the policy period — every sub, total paid, split between labor and materials where invoices allow it.
- The matching certificates — for each sub, the COI or COIs covering every payment date in the period. If a sub renewed partway through, include both the old and new certificates.
- Exemption documentation for subs with no employees.
- Supporting invoices for any sub where you're claiming a materials credit.
Go through the report before the auditor does. Highlight any sub payment with no matching coverage and try to fix it now. Agents can often issue a certificate showing coverage that existed during a past period. A sub may have been insured and just never sent you proof. Fixing that before the audit costs a phone call. Fixing it afterward means filing a dispute, which carriers don't hurry to process.
This is where cost data organized by job and vendor helps most. Contractors who track sub costs by job, as TrestleBook does even with no signal on a jobsite, can export sub payments by vendor and date without rebuilding them from a checkbook register. Auditors trust clean records, and contractors with clean records tend to get fewer adjustments.
Where This Overlaps With Your Clients and Your Own Coverage
Certificates work in both directions. Commercial owners, property managers, and many landlords will ask for your COI before you start work. Landlords who manage rentals in tools like KeyLoft often keep vendor insurance records alongside their maintenance logs, because tenant-occupied units carry real liability. Keep a current certificate from your own agent ready to send. Make sure the additional insured endorsement your client asks for is on your policy, not only on your subs' policies.
The same thinking applies to the one-person subs you hire. Many solo tradespeople run their business on a phone, tracking hours and invoices in an app like Stintly, and they don't think about the insurance side until a GC asks. Some of your best subs are like this. Give them a one-page list of exactly what you need and your agent's contact info as an example. That makes compliance easy and keeps good subs working with you.
Finally, ask your own agent two questions before your next renewal. How does your carrier treat uninsured sub costs at audit? Do they give a materials credit, and what documentation do they require? The answers differ by carrier and by state, and they decide how strict your tracking needs to be.
A 30-Minute Setup Checklist
If you have no system right now, start with this:
- List every sub you've paid this policy year.
- For each one, note whether you have a current COI. Mark gaps in red.
- Email each sub's agent directly for a current certificate naming you as certificate holder, with endorsement copies.
- Add expiration dates to your tracking log and set reminders 30 days out.
- Add the “no COI, no check” and audit chargeback language to your subcontract template.
- Before every sub payment from now on, check coverage first.
Tracking certificates is dull work, and that's why it gets skipped. But it's one of the few compliance tasks where skipping it costs you a specific, predictable amount: the comp rate times the dollars you paid uninsured subs. Collect the right documents, check them with the agent, track expiration dates where you'll see them, and make payment depend on coverage. Do that and the annual audit becomes routine paperwork instead of a surprise bill.