Building compliant software in insurance / The rules that reach your code
Incident response and breach notification in your application
An incident response plan is usually a document describing what people will do. The part that lives in the application is different and gets far less attention: identifying exactly which policyholders were affected, and firing a notification within a clock that starts the moment a breach is determined, not the moment someone gets around to writing the notice.
Key takeaways
- The notification clock starts at breach determination, not discovery of the underlying incident, and most states specify a small number of business days from that point.
- Determining the affected population precisely, not approximately, is the step most applications are not built to do quickly.
- A notification plan naming a person who has since left the company is a common and easily checked failure.
- The application needs a rehearsed, tested path from determination to notification, which a document describing the intended steps cannot provide on its own.
Most incident response plans read well. They name a person, describe a sequence of steps, and reference the applicable notification law. What they rarely describe in enough detail is what has to happen inside the application itself, and that gap tends to surface at the worst possible time: during an actual incident, under the clock the law imposes.
This page picks up directly from state-by-state data security requirements for insurance software, which covers where the state-specific deadlines and thresholds live. This page covers what the application has to be able to do once an incident is underway.
When the clock actually starts
States that adopted the NAIC model law generally start the notification clock at determination that a breach occurred, not at the moment suspicious activity was first noticed. The states that adopted the 3-business-day figure for notifying the commissioner measure from that determination point [1]. This distinction matters more than it looks. A security team might spend days or weeks investigating an anomaly before concluding it was, in fact, unauthorized access to policyholder data. The clock does not start during that investigation. It starts the moment the company can say, with confidence, that a breach occurred.
The practical consequence is that "determination" needs to be a real, timestamped event inside your incident process, not a fuzzy transition nobody marked. If your process cannot point to the exact moment determination was made, you cannot demonstrate you met the deadline, because you cannot demonstrate when the deadline started.
Identifying who was actually affected
This is the step most applications are least prepared for, and it is the one an examiner is most likely to probe.
"We think it affected policyholders in our claims database" is not the same as a precise list. A precise answer requires the application to reconstruct, after the fact, exactly which records a specific access path could reach during a specific window: which database tables, which fields, which time range, and cross-referenced against which specific users or systems had access during that window. Most applications were built without this reconstruction in mind, because it is not a feature anyone asked for until the day it was urgently needed.
Building it in advance means the same audit trail infrastructure that satisfies ordinary access logging requirements doubles as the mechanism for answering "who was affected." If access to a policyholder record produces a log entry naming the record, the actor, and the time, then reconstructing the affected population after an incident becomes a query against existing data rather than a forensic project invented on the spot. This is a direct payoff of building the access logging described in designated security officer and access control, and it is worth testing the query itself before an incident, not during one.
Notifying within each state's window
Once the affected population is known, precisely, notification has to go out within the window each affected policyholder's state requires, which is the configuration mechanism covered on the previous page in this guide.
The engineering requirement here is that the notification workflow can be triggered and can complete within the tightest applicable window across the whole affected population. If a breach affects policyholders in five states with different deadlines, the workflow needs to either notify everyone within the shortest window or manage per-state timing correctly, and testing this means simulating a multi-state incident before a real one happens, not assuming the workflow scales correctly under pressure.
The plan itself needs to be tested, and testing it means more than writing it down
A document describing the incident response process is a starting point, not a control. The control is a rehearsal: running the actual sequence, from a simulated determination event through affected-population identification to notification, and timing it against the deadline.
Two failures show up reliably in a rehearsal that never show up in a document review. The first is that the plan names a specific person responsible for triggering notification, and that person has changed roles or left the company, which is a startlingly common and easily preventable gap. The second is that the affected-population query, the one described above, takes longer to run than the notification deadline allows, because nobody tested it against a realistic data volume until the day it mattered.
What this means for the application, concretely
Pulled together, an application built to satisfy this part of the model law needs: a timestamped determination event as a first-class record, an audit trail detailed enough to reconstruct exactly who was affected by a given access pattern, a notification workflow that reads state-specific deadlines from configuration rather than a fixed value, and a rehearsal process that runs the whole sequence periodically against realistic data, which prose alone cannot substitute for.
Building each of these as a checked, tested capability, rather than as a paragraph in a policy, is what turns "we have an incident response plan" into something that actually holds up when a real incident tests it. If you want to see whether your current application could actually answer "who was affected and were they notified in time" for a real incident, get in touch and we will help you find out before an examiner does.
Common questions
When does the breach notification clock actually start under state insurance law?
It starts at determination that a breach occurred, not at the moment an anomaly was first noticed. States that adopted the NAIC model law's 3-business-day figure for notifying the commissioner measure from that determination point, so an investigation that takes days or weeks does not itself count against the clock, but the determination moment needs to be a specific, timestamped event.
Why is identifying the affected population the hardest part of breach notification?
Because it requires reconstructing exactly which records a specific access path could reach during a specific time window, cross-referenced against who had access during that window, and most applications were not built with this reconstruction in mind. An approximate answer is not sufficient when the notification obligation applies to a specific, identifiable group of policyholders.
How can an application be prepared to identify affected policyholders quickly?
By building detailed access logging in advance, recording which record was accessed, by whom, and when. That same audit trail, built for ordinary compliance purposes, becomes the mechanism for answering who was affected after an incident, turning a forensic project invented under time pressure into a query against data that already exists.
What happens if a breach affects policyholders in multiple states with different deadlines?
The notification workflow has to either meet the shortest applicable deadline across the whole affected population or manage per-state timing correctly, and this needs to be tested through simulation before a real multi-state incident occurs. Assuming a single-state workflow will scale correctly under a multi-state incident is a common and risky assumption.
Is a written incident response plan enough to satisfy the model law?
A written plan is a starting point, not a control. The control is a rehearsal that runs the actual sequence, from a simulated breach determination through identifying the affected population to sending notifications, and times it against the applicable deadline, since gaps like an outdated contact or a slow query rarely show up in a document review.
What is a common failure found only during an incident response rehearsal?
A plan naming a specific person responsible for triggering notification, where that person has since changed roles or left the company. This is a preventable gap that a document review will not catch, because the document still reads correctly, but a rehearsal that tries to actually reach that person will.
How does audit logging connect to breach notification requirements?
Detailed audit logging, recording who accessed which policyholder record and when, is the data source that makes it possible to identify the affected population after a breach quickly and precisely. Without it, determining who was affected becomes a slow, approximate, after-the-fact investigation rather than a query against existing records.
What should be tested before an insurance company relies on its incident response plan?
The full sequence should be tested end to end: a simulated determination event, a query identifying the affected population against realistic data volumes, and the notification workflow firing within each affected state's deadline. Testing each piece in isolation can miss failures that only appear when the whole sequence runs together under a real time constraint.
Related reading
How to run a postmortem when AI wrote the code
The incident review reaches the line that caused the outage, and the answer to "why is it like that" is that a model produced it and a person approved it in four minutes. Most postmortem formats have nowhere to put that.
What belongs in a runbook nobody reads
Most runbooks are written for a calm reader who has time. The person who opens one is tired, frightened, and has about ninety seconds, and almost nothing in a normal runbook survives that.
More in The rules that reach your code
State-by-state data security requirements for insurance software
More than 25 states have adopted some version of the NAIC Insurance Data Security Model Law, and each adopted version can differ in its notification deadline, its size threshold, and its exemptions. An application licensed in a dozen states needs a way to represent that variation, not a single rule that happens to be right for the state the team thought about first.
Model Audit Rule controls for software teams
The NAIC Model Audit Rule applies to insurers above a premium threshold and requires an independent annual audit covering internal control over financial reporting. It explicitly permits automated and computer-assisted techniques to support that control, which is the opening for a software team to turn an annual audit scramble into something closer to continuous evidence.