How to Track Construction Permits and Insurance Expiration Dates
A permit that quietly expires mid-project, or a subcontractor whose insurance lapsed three weeks ago without anyone noticing, is rarely caught by accident. It's caught because someone is actually tracking it.
Why this is worth tracking deliberately
A subcontractor's general liability policy lapses on the fifteenth. Nobody notices until an incident on the twenty-second, when the certificate on file turns out to be six months expired. At that point it's not a paperwork problem anymore, it's a coverage problem, at the worst possible time to discover one. Permits have the same quiet failure mode: a permit issued at the start of a project can expire before the work it covers is finished, especially on projects that run long or get paused. Both of these are avoidable, and both are avoided the same way: by tracking expiration dates before they become somebody's emergency.
Start with one document register, not several
The most common reason permit and insurance tracking fails isn't that nobody's watching. It's that three different people are each watching a different partial list, in a different format, and none of the three lists agree. A single, centralized register for a project, listing every permit and every insurance certificate that applies to it, is worth more than three well-intentioned spreadsheets that drift out of sync with each other within a month.
What to track for each permit
For every permit tied to a project, record enough that anyone on the team could answer a question about it without digging through a filing cabinet.
- Permit number and type of work it covers
- Issuing authority, since larger projects often involve more than one
- Current status: applied for, issued, or expired
- Issue date and expiration date
- Who's responsible for renewal or extension if the work runs past the expiration date
What to track for each insurance certificate
For each certificate of insurance on file, record the named insured, the policy number, the coverage type, the policy period, and who holds the current certificate. If your contract requires additional insured status or specific coverage limits, note whether the certificate actually reflects that, not just that a certificate exists. A certificate that doesn't match what the contract requires is functionally the same problem as having no certificate at all, just harder to notice.
A certificate of insurance is not the policy
A certificate of insurance is a summary document, usually one page, prepared by an insurance agent or broker to show that a policy exists and to describe its basic terms. It is not the insurance policy itself, and it isn't a guarantee of coverage for any specific claim. The underlying policy, with its actual terms, exclusions, and conditions, is what governs whether a particular loss is covered. Tracking certificates is a practical way to monitor whether coverage appears to be in place, but a real question about whether something is actually covered is a question for the policy and the insurer, not the certificate.
Assign renewal responsibility to a person, not a company
"The subcontractor is responsible for keeping their insurance current" is true and also not very useful when a certificate expires anyway. Someone on your side needs to own tracking it too, since you're the one who needs the current certificate on file, not just the sub. The same goes for permits: a named person, not a vague assumption that "the office handles it," should own watching the expiration date and starting the renewal process early enough that it doesn't become urgent.
Set reminders before the expiration date, not on it
A reminder that fires on the expiration date is a reminder that something already lapsed. Set reminders early enough that there's real time to act: to request a renewed certificate, to follow up on a permit extension, or to find out that a renewal is already stalled somewhere. Thirty days is a reasonable starting point for most permits and certificates, though busier renewal processes may need more lead time.
Finding what's missing, not just what's expired
An expired document is easy to spot once you're tracking dates. A missing one is easier to miss entirely, especially on a project with several subcontractors, because there's no date to flag it. Periodically check your register against your actual subcontractor list and permit requirements, not just against the dates already on file, to catch a certificate that was never collected in the first place.
Keep a record of the follow-up, too
When you ask a subcontractor for an updated certificate, or follow up on a stalled permit application, keep a brief record of when you asked and what the response was. If a document stays outstanding for weeks, that record of follow-up is often what shows you acted reasonably, separate from whatever the other party eventually did or didn't do.
Managing this across more than one project
A single project's permit and insurance register is manageable by hand. Several projects running at once, each with their own permits and their own list of subcontractor certificates, is where a per-project spreadsheet approach tends to break down, because reviewing expiration dates means opening every project's file individually instead of seeing everything that's expiring soon across the whole business in one place.
A note on requirements
What permits and insurance coverage a specific project actually requires depends on the contract, the insurer, the local building and licensing authorities, and the conditions of the specific project. None of that is universal, and this guide doesn't attempt to state what any particular project needs. Confirm actual requirements with your contract, your insurance provider or broker, and the relevant local authority rather than assuming a standard set applies.
Practical tracking table
A simple example of what a combined register might look like. The entries below are fictional and for illustration only.
| Type | Reference | Holder/insured | Status | Expires | Owner |
|---|---|---|---|---|---|
| Building permit | BP-4471 | Example GC Inc. | Issued | Jun 30 | J. Alvarez |
| General liability COI | POL-88213 | Example Electric Inc. | Active | Apr 15 | R. Chen |
| Workers' comp COI | POL-55902 | Example Plumbing Co. | Expiring soon | Mar 28 | R. Chen |
Related reading
Ready to organize your projects?
Start free and see how ConstruDo keeps every task, photo, and message in one place.