You can be handed a vendor's insurance certificate with the right box ticked and still have nothing behind it. The tick is somebody's assertion on a summary sheet. The document that actually puts your association on the vendor's policy is a separate one, and it is not the page you were sent.
The reference we cite for that, re-read on 2026-08-27, puts it plainly: an X in either column is only an assertion, and additional insured status and waiver of subrogation are created by policy endorsements. So a manager who files the certificate because the columns look right has filed a piece of paper that describes coverage rather than one that confers it. If a claim ever lands, that gap is the whole exposure, and it surfaces at the worst possible moment.
Watch the CoverCheck — Certificate-of-insurance tracking for property and HOA managers demo
What this product does with that
CoverCheck is vendor insurance tracking for small property and homeowners-association managers. A vendor's certificate goes in, it gets checked against what each community requires, and anything short or expiring comes back with a drafted chase email to the vendor's agent, which a manager approves before it sends.
The rule the whole thing rests on is written into the decision function's own comment: unknown is never a pass. Not "unknown is probably fine". When the additional-insured box reads as absent, that is a blocker. When the box cannot be read at all, the finding is a review item that says so in words, asking for confirmation with the agent. A limit the reader could not make out never gets scored, it gets handed to a person. The tests for all of this sit under a heading that just says "unknown is never a pass".
The ladder underneath is four rungs, in order: any blocker makes it non-compliant, otherwise any review item makes it needs-review, otherwise anything inside the thirty-day notice window makes it expiring, otherwise compliant. A certificate issued more than 550 days ago earns a warning even when every policy on it still reads as in force.
Two ways in, one thing that decides
The landing page carries a free check with no sign-in. It has no reader attached and writes nothing down anywhere: you type the figures off the face of your certificate and the answer comes straight back. What makes that honest rather than a demo is that it hands your typed figures to the identical decision function the paid side uses.
| Free check on the landing | Paid upload | |
|---|---|---|
| Who reads the certificate | you type the figures in | a reader model reads the uploaded file, capped at 20 MB |
| Sign-in required | none | yes |
| What gets stored | nothing at all | one row per vendor and community, appended, never overwritten |
| What decides the verdict | checkCompliance | checkCompliance, the same one |
| Unreadable additional-insured box | review, never a pass | review, never a pass |
Grepped this run: outside the tests, that function has exactly three callers, the free check, the paid check, and the sample review document. There is no second scorer anywhere.
With no reader configured, an upload does not fall through to a green tick. It lands as waiting on a human, with no verdict written at all. And each morning at 06:15 every vendor's most recent certificate is checked again against the new date, so something that passed yesterday can read as expiring today with nothing about the paper having changed.
Run a certificate through the free check: https://covercheck.kynth.studio/kd
One shipped product, taken apart, once a month. What it does, what it cost to build, what the pipeline behind it looks like, and what the numbers did — read off the repository and the live site, not written from memory. Join the list.

Top comments (0)