Cold-start sites: scoring new business before your next embedding refresh

Aerial view of a newly built warehouse and office building beside a highway roundabout.

Every book has them: locations bound last month that don't exist in last year's embedding file. A new distribution center in a county you just started writing, a manufacturing plant that renewed with a different TIV, a line of business you picked up in Q3. Call it a cold-start site: a location on the current book with no vector attached to it yet, because the annual refresh ran before the policy did.

It's a structural gap built into any annual-cadence product, and it shows up every renewal cycle for a book that's still growing.

Why cold-start happens on an annual cadence

Embedding files get built once a year, keyed to a site list that existed at the time of the run. New business written in the months between refreshes isn't in that list, so there's no vector for it. The same thing happens when a cedant adds locations mid-term, or when an underwriter finally gets a usable lat/long for a site that had been sitting on a schedule as a named-insured blob.

The gap comes from tying delivery to a site list and a once-a-year production run. Cold-start sites will always exist in a growing book. The real question for a portfolio risk quant is what goes in that feature column until the next file lands.

What to put in the feature column before you have a real vector

A few approaches teams use, in rough order of how much they lean on existing structure:

  • Leave it null and flag it. If your scoring model handles missing features (tree-based models mostly do), add a binary "unscored-this-cycle" flag alongside the null. That keeps the model honest about which rows are imputed and which are observed, and it lets you audit how much of the book's current score is riding on real imagery versus a placeholder.
  • Borrow from the nearest scored neighbor. If you already carry lat/long and a scored site sits within the same CBSA or county, its vector is a defensible stand-in until the new site gets its own imagery pull, closer to the true exposure environment than a portfolio average even though it's a different building.
  • Fall back to a segment average. For sites with weaker geographic context, a new country, a peril zone you haven't written much in, use the mean vector for that occupancy class and region. Cruder, but it stops a null from propagating through the whole scoring pipeline.

None of these substitute for a real embedding. They bridge the gap between refresh cycles, and the choice depends on how much that feature actually moves your score at the margin. When imagery-derived signal carries real weight in hazard discrimination, a borrowed vector from three counties over is a weaker patch than it first looks.

Sizing the refresh gap on your own renewal calendar

Line up your book's growth curve against the refresh date. Bind most new business in Q1 while the file refreshes in Q4, and you're carrying a full year of cold-start sites through your busiest renewal season. Growth that's steadier across the year shrinks the gap, because fewer sites are new in any given month.

Either way, the count of sites in the current book with no vector attached is worth tracking as its own portfolio metric, separate from loss ratio or PML. It tells you how much of this cycle's score is observed versus imputed, and it's the number that should drive which of the three approaches above you default to.

Imagery Embeddings ships a vector per site, keyed to your site list, refreshed annually from ≤0.5 m VHR imagery. The annual cadence means the gap between refreshes doesn't go away on its own. What you get is one clean, imagery-derived feature to decide how to bridge it when a cold-start site shows up on the book. If you're weighing how that column fits into a scoring model you already run, the overview page walks through what's in the file and how it's delivered.

Feed it into your next refresh cycle and see how much of the cold-start guesswork it replaces.