Nobody gets on your site with a lapsed certificate
Thirty days out from expiry, the renewal request goes to the sub and the agent who actually issues it — naming the coverage, the limits and the endorsements that job needs. What comes back gets filed against the right sub and the tracker moves on.
Subcontractor certificates — 30-day window
23 active subs
- Not cleared
Halvorsen Plumbing
Nothing on file · on the Brennan job Monday
GLWC - 4 days
Vega Drywall
Cert names the old certificate holder
GLWC - 13 days
Kessler Electric
Waiver of subrogation on file
GL - 21 days
Ironwood Framing
Additional insured endorsement current
WC
The spreadsheet says everyone's covered. It was last updated in February.
Works with
- Gmail
- Outlook
- Google Drive
- Google Sheets
Certificates arrive as PDF attachments and get filed in the Drive folder you already keep them in. Your subs don't need an account, a portal, or an app — which is the only version of this that actually works.
The chore
How this goes right now
You have a folder somewhere with everyone's certificates in it, and a spreadsheet that was accurate in February. Somebody's general liability renewed in March and you never got the new ACORD. Somebody else's workers' comp lapsed in April and you'd have no way of knowing unless you went looking.
When you do chase one, it takes three emails, because the sub doesn't have the certificate — his agent does. So you email the sub, he forwards it to his agent, the agent sends you a cert that lists the old certificate holder or leaves off the additional insured endorsement, and you send it back. That's a week of small emails for one piece of paper.
So mostly it doesn't happen. The certs get collected once, at onboarding, and then everyone gets on with building.
The difference
The gap is between collecting certs once and keeping them current
Try it
Walk through it yourself
This is the actual shape of the workflow — the same trigger, the same steps, the same draft waiting for your say-so. Click through it.
Collect subcontractor COIs
Three certificates lapse inside 30 days
The morning check went through 23 active subs. Three expire before the end of the month, and one has nothing on file at all — but is scheduled on a job Monday.
What it does
Compare every expiry date on the subs tracker against today
Vega Drywall 2 May, Kessler Electric 11 May, Ironwood Framing 19 May. Halvorsen Plumbing has no certificate on record.
Google SheetsLook at what's actually filed for each of them
Vega's current ACORD 25 names your old entity as certificate holder — that one needs correcting, not just renewing.
Google DriveDraft the request to each sub and their agent together
Four emails, each naming the coverage, the limits and the endorsements that sub's scope requires.
GmailFlag anyone who isn't clear to be on site
Halvorsen Plumbing marked not cleared — they're on the Brennan job Monday and there's nothing on file.
Google Sheets
Draft list — nothing has been sent
Subcontractor insurance status after this morning's check
- Not cleared for site
Halvorsen Plumbing
No certificate on file · scheduled on the Brennan job Monday 6 May
- Correction requested
Vega Drywall
GL and WC expire 2 May · filed cert names the old certificate holder
- Renewal requested
Kessler Electric
GL expires 11 May · waiver of subrogation on file and current
- Renewal requested
Ironwood Framing
WC expires 19 May · additional insured endorsement current
Send these four requests and flag Halvorsen as not cleared for site?
Open any of them and change the wording, the limits you're asking for, or who it copies. You can drop one entirely — if Kessler's renewal is already sitting in your inbox, take it out and only three go.
Certificates come back and file themselves
Each request goes to the sub with their agent copied, and your certificate holder details attached so nobody has to ask. When a PDF comes back it's saved to that sub's folder, the expiry date on the tracker updates, and anyone still short stays flagged until it's resolved.
That's the whole workflow.
It drafts, you approve, nothing sends on its own.
How it works
What it's actually doing
Four steps against your inbox, your Drive folder and your tracker.
- 1
- Google Sheets
- ExExcel
It reads your subs tracker every morning
Whatever spreadsheet you already keep — subs down the side, policy types and expiry dates across the top. It compares every date against today and picks up anything inside your renewal window, plus anyone with a blank where a certificate should be.
- 2
- Google Drive
It checks what's actually on file before asking
It looks at the certificate in your Drive folder rather than trusting the spreadsheet. That's how it catches a cert that's technically in date but names the wrong certificate holder, or is missing the additional insured endorsement that job requires.
- 3
- Gmail
- OuOutlook
It writes to the sub and the agent together
The certificate comes from the broker, so the request goes to both at once with your certificate holder details attached. The email names the coverage, the limits and the endorsements you need, which is what stops the cert coming back short.
- 4
- Google Drive
- Google Sheets
It files what comes back and updates the row
When a PDF arrives it's read, checked against what was asked for, saved into that sub's folder, and the expiry date on the tracker updates. Anything that came back short gets flagged for you rather than filed.
It drafts. You approve. It never tells a sub they're off the job.
Insurance is where a wrong email does real damage — to a working relationship or to your own position if something goes wrong. So it prepares the chase and the paperwork, and every message waits for you.
Step one
It drafts
Step two — you
You read it and approve
Step three
Only then does it send
Requests wait for your approval
Four expiring certs means four drafts, sitting together so you can send them in one go or go through them individually. Nothing reaches a sub or their agent until you approve it.
Flagging is internal, not a message
Marking a sub as not cleared for site changes a cell on your tracker. It doesn't email the sub, doesn't tell your PM, and doesn't cancel anything. Whether that sub works Monday is your call to make and your conversation to have.
It won't judge whether coverage is adequate
It checks a certificate against what you asked for — dates, limits, named endorsements. Whether those limits are right for that scope is a question for you and your broker, and it doesn't pretend otherwise.
Nothing gets deleted
Expired certificates stay in the folder. When an audit asks what cover a sub had in March, the March certificate is still there with the date it was filed.
Setup
What setting this up involves
- 1
Connect
- Gmail or Outlook — whichever you send from
- The Drive folder where certificates already live
- Your subs tracker, in Google Sheets or Excel
- 2
Tell it how you work
- How far ahead to chase — 30 days is standard, 45 if your subs' agents are slow
- What you require by trade, so an electrician's ask isn't identical to a drywaller's
- Your certificate holder details, exactly as they should appear on the ACORD
- Which endorsements you need named — additional insured, waiver of subrogation, primary and non-contributory
- 3
Then it runs
Half an hour, once
The tracker columns take ten minutes. The rest is writing down your coverage requirements properly, which is worth doing anyway — most contractors have never had them in one place.
Edge cases
Where it's careful, and what it won't do
What it handles
The certificate that's in date but wrong
A cert can be current and still useless — old certificate holder, missing endorsement, limits below what that scope needs. It compares what's filed against what you require and asks for a corrected certificate rather than ticking the box.
Agents who go quiet
Brokers are busy and certificate requests sit at the bottom of the pile. If there's no certificate a week after the first ask, a second request gets drafted, this time addressed to the agent directly with the sub copied.
A new sub with nothing on file
Someone added to the tracker without a certificate gets treated as urgent rather than as a 30-day renewal, because they're usually about to start. The next morning's check flags them not cleared and drafts the request straight away.
Mid-term cancellation
A policy can be cancelled before its expiry date, and the certificate in your folder won't tell you. If a cancellation notice arrives in your inbox it's picked up and that sub is flagged immediately, ahead of the expiry schedule.
What it does not do
It doesn't verify coverage with the carrier
It reads the certificate it was sent. A certificate is a snapshot, not proof the policy is still in force — if you need that confirmed, that's a call to the carrier and it can't make it for you.
It doesn't decide who works
It flags a sub as not cleared. Pulling them off Monday's schedule, ringing them, or letting them start anyway is entirely your decision.
It doesn't give you an opinion on adequacy
Whether a $1M per occurrence limit is right for a given scope is a question for your broker. It checks against the requirements you set, and nothing more.
It doesn't handle your own insurance
This is about the subs working for you. Your own GL, workers' comp and umbrella renewals aren't in scope.
Time back
Four to six hours a month
- Time back
- Four to six hours a month
- Spent on
- The work that bills
- What it costs
- $19 / monthStarterplan — see what’s included
How that’s worked out: Based on 15–25 active subs with annual policies, which is roughly two or three renewals a month at three rounds of email each — plus the periodic afternoon spent auditing the whole folder because nobody trusts the spreadsheet. The hours are real; the reason to do it is the audit exposure, which is worth considerably more than the hours.
Fair questions
The things contractors ask first
My subs are guys I've worked with for fifteen years. Isn't this overkill?
The relationship isn't the risk — the paperwork is. A sub you trust completely can still have a policy lapse he doesn't know about, and at a workers' comp audit the question isn't whether you trust him, it's whether you can produce a certificate covering the dates he was on your site. This is about being able to produce it.
Won't chasing certificates annoy my subs?
It goes to the agent as much as the sub, which is the part that saves everyone time. Most subs would rather get one clear email listing exactly what's needed than three vague ones. And it only asks when something's genuinely expiring or genuinely wrong.
We track this in a construction management platform already.
Then you've probably got the tracking side handled and the chasing is still manual. This deliberately runs on email, Drive and a spreadsheet, because that's what small contractors actually use — if you've already rolled out something heavier, this is likely the wrong tool for you and we'd rather say so.
More construction chores
Other things that keep falling off the list
Collect lien waivers
Which subs still owe you a waiver on this draw, chased automatically, checked for the right type and through date, and filed by job.
Chase change order approvals
A reminder to the client on anything unsigned past two days, and a running total of work you're performing without a signature behind it.
Chase unpaid invoices
Reminders that escalate with the age of the debt, the invoice attached, and a Monday aging summary that includes unbilled retainage.
Compile daily jobsite reports
Photos off the foreman's phone become a written daily log — crew, weather, work completed, delays — filed by project every evening.
Chase unanswered estimates
Three days of silence on a proposal, and a follow-up is waiting in your drafts with the scope and price already in it.
Triage warranty callbacks
Post-handover complaints acknowledged same day, sorted into warranty or chargeable, logged against the job and put in the diary.
The same job in other trades and industries
FAQ
Questions worth answering properly
Who does the request actually go to?
Both the subcontractor and their insurance agent, on the same email. The certificate is issued by the broker, not the sub, so writing to the sub alone just adds a forwarding step. Copying both is what turns three rounds of email into one.
Can it tell if a certificate is missing an endorsement?
It checks a returned certificate against the requirements you set — the certificate holder details, expiry dates, coverage types, limits and named endorsements like additional insured or waiver of subrogation. If something's missing it flags it for you instead of filing it.
Does it stop a sub from working?
No. It marks them as not cleared on your tracker and shows you why. Whether they're on site Monday is your decision — it doesn't email the sub about it, doesn't tell your PM, and doesn't change any schedule.
Where do the certificates get filed?
In the Drive folder you already use, under that subcontractor. Expired certificates stay where they are rather than being replaced, so if an audit asks what cover somebody had eight months ago, that certificate is still there with the date it was received.
What if a sub's policy is cancelled mid-term?
A certificate won't tell you that — it's accurate only on the day it was issued. If a cancellation notice reaches your inbox it gets picked up and that sub is flagged straight away rather than waiting for the expiry date to come round.
Do we need Procore or a construction management platform for this?
No, and it doesn't connect to one. It runs on your inbox, your Drive folder and a spreadsheet, which is deliberate — asking a subcontractor to log into your system to upload a certificate is how these systems end up empty.
Know who's covered, without going looking
Point it at your subs tracker and the folder your certificates live in. The first list of what's expiring shows up the next morning.
Start free