AI Adoption GuideInsuranceUnderwrite
Continuous real-time risk scoring
ML re-scores risk continuously from telematics, IoT, satellite, weather, and claims signals instead of relying on point-in-time assessment.
Insurance processQuoteUnderwriteBindIssueBillServiceRenewClaim
By Don, DoneThat’s AI coach · updated
A midterm score is a file note with two dates, not a new bind
Point-in-time underwriting freezes risk at bind or at last renewal. Continuous scoring does not replace that bind. It keeps a live view of the same risk so an underwriter can change terms while the policy is in force.
Every score that reaches a human must cite two vintages: when the signals were observed, and which model version produced the number. If either vintage is missing, the score is not a score. It is an unlabeled number, and unlabeled numbers do not belong on an underwriting desk.
The score never cancels coverage. Cancellation, non-renewal, and midterm notice are legal acts. The model produces a ranked view and a reason code. An underwriter, or a rules path the underwriter owns, decides whether to tighten deductibles, add a condition, request an inspection, or leave the file alone.
Load licensed feeds as contracts, not as always-on truth
Start with the licenses you already pay for, not with a new sensor. Telematics from a fleet program, IoT from a monitored property, satellite and weather from a catastrophe vendor, and claims from your own systems plus bureau extracts are the usual stack. Policy systems such as Guidewire, and licensed data providers such as Verisk, CoreLogic, and LexisNexis Risk Solutions, sit here as feed sources and systems of record. They are not the scoring brain. Treat every source as a feed with a refresh cadence, a permitted use, and a defined gap behavior.
Before you score, record permitted use (underwriting, marketing, or claims), refresh cadence and typical lag, what missing looks like (null, stale watermark, or auth error), and who owns the join key (VIN, location, policy, or named insured).
Join keys fail more often than models. A telematics device that moved to a different VIN, a geocode that snapped to the wrong rooftop, or a weather grid that no longer matches the insured location will quietly poison a score. Fail the join in the open. Do not silently fall back to a prior address.
This is the same discipline as external data enrichment at quote, applied after bind. Quote-time enrichment answers whether you may offer. Continuous scoring answers whether the risk you already wrote has moved.
Use only what the license actually delivers. If satellite is quarterly and telematics is daily, the combined score's signal vintage is the oldest material input you relied on, not the newest ping.
Score only when both vintages can be printed on the file
A usable score is a short stamp: risk index, signal vintage with each contributing window, and model vintage with version id and training cutoff. The underwriter can disagree with the number. They cannot be asked to trust a number with no dates.
Request time is not signal vintage. A 2 a.m. job that re-reads last week's IoT snapshot is last week's signal. The observation window is the vintage that matters.
A score with no vintage is the first failure. Dashboards like a single gauge. If the API returns only a float, drop it. Do not store it. Do not show it. Require signal vintage and model vintage on every emit.
Mixing vintages without saying so is the next failure. Telematics from this morning plus a catastrophe score from last quarter is a valid composite if you label both. It is invalid if you present one number as real time.
Promote a model the same way you promote a rating factor. Freeze the version in production. Log which policies were scored with which version. When you ship a new version, do not silently rewrite yesterday's scores. Re-score on a schedule or on a trigger, and write a new row. The file should show what the score was, under which model, on which signal window.
Leave the cell empty when a feed is down
Empty stays empty. If the telematics vendor is in an outage, the IoT token expired, or the satellite scene did not land, do not impute a typical driver, a normal leak rate, or last month's roof condition as if it were current.
Inventing a score when the feed is down is the failure that looks like uptime. The pipeline is green. The gauge still moves. The underwriter thinks the risk was observed today. It was not. Prefer a blank score and a visible feed status (down, stale past SLA, unauthorized) over a filled number guessed from priors.
Stale is not the same as down. A weather feed that updates every six hours and is four hours old is within contract. The same feed at 30 hours is stale. Set the SLA on the license, not on the model's hunger for data. Past SLA, blank the dependent features. Blank the score if those features are material. If they are not material, score the reduced set and say so: weather omitted, with the last good timestamp.
Do not backfill the blank later as if the gap never happened. When the feed returns, score forward from the new observation window. You may write a catch-up score labeled as catch-up. Never overwrite the blank row. The blank is evidence that you did not pretend to see.
One night of silence on a mixed commercial book
A regional carrier writes mixed commercial auto and light commercial property. Overnight, the telematics vendor fails authentication. IoT on the warehouses is fine. Weather, satellite, and claims extracts are fine.
The wrong pipeline keeps emitting auto scores from the last successful ping, stamps them with this morning's job time, and pushes accounts into a deteriorated queue because an imputed idle pattern looks like drivers coming off the road. Someone treats the queue as a cancel list and drafts midterm notices.
The right pipeline blanks the auto scores, keeps property scores that do not depend on the dead feed, and shows telematics unavailable, with the last true signal vintage. The underwriter opens the accounts that already had a property IoT spike (a freezer unit cycling off) and a weather watch on the same campus. They endorse a higher water-damage deductible and request a short restoration plan. They do not touch the auto book until telematics returns. When it does, new auto scores land with a new signal vintage. No catch-up fiction. No notices that were really outages.
That is the working order: load licensed feeds, score only with vintages, leave blanks, then let the underwriter act.
The underwriter changes terms; this loop does not auto-cancel
Wire the score to a workbench, not to a cancellation job. Keep the action set short: request more information, inspect, change deductibles or sublimits, add a protective safeguard as a condition, schedule a midterm conversation, or do nothing. Non-renewal and cancellation stay on a separate path with legal review, notice periods, and a human signature.
Treating the score as a cancel is the remaining failure. It usually arrives as operational efficiency: if the score crosses a threshold, issue notice. That collapses a monitoring product into an unbound rating action. It also punishes outages, join errors, and model drift as if they were insured behavior.
If you want automated follow-through, automate the briefing and the suggested endorsement language, not the legal act. An underwriter decision support briefing should carry the two vintages, the missing-feed list, the reason codes, and the recommended term change. The underwriter accepts, edits, or dismisses.
Continuous scoring is not renewal. Renewal is a scheduled re-underwrite with a new offer. If the live score has been drifting all year, feed that history into automated re-underwriting at renewal as evidence, still with vintages. Do not let a Tuesday afternoon spike rewrite the annual product.
Some movements should never become a price change. A weather watch or an IoT leak alert is often a prevention task, not a rating task. Route those to proactive risk mitigation alerts so the insured can act. Score the residual only after the window closes, and only if the signals actually returned.
Ship licensed feeds with join keys, gap codes, and permitted-use checks first. Then a scorer that refuses to emit without signal vintage and model vintage. Then blanks on missing or stale-past-SLA material feeds, never a guessed fill. Then a workbench where an underwriter changes terms. If any of those four is missing, you do not have continuous real-time risk scoring. You have a gauge.
Is this worth automating for you?
Whether this pays back depends on how much time it takes your team today. Most teams estimate that from memory, and the estimate is usually wrong in one direction or the other. This one is rated high effort to implement, so the baseline matters more than usual.
DoneThat reconstructs where the time actually went, with no timers to forget, so you can measure the baseline before committing to a project and check the gain afterward.
Measure the baseline first