Redesigning the commercial insurance quoting experience so agents could see carrier interest in real time, instead of filling out 40 pages and hoping for the best.
Context
Commercial insurance is not like buying car insurance online. A small business owner looking for general liability, workers' comp, or a commercial auto policy has to work through an independent agent. And that agent has to fill out a massive application, sometimes 40 pages or more, before submitting it to carriers who may or may not even write that type of risk.
The whole process was built on guesswork. Agents would spend 30 to 45 minutes completing a detailed application, submit it to a handful of carriers, and then wait days to find out if any of them were interested. Most of the time, the answer was no. The form was wrong for the carrier. The risk class didn't match. The business was in a state the carrier had pulled out of. All of that wasted effort could have been avoided if the agent had any signal at all about who was actually interested.
Discovery & Research
Before redesigning anything, I needed to understand how commercial insurance agents actually work. Their world is full of jargon, regulatory constraints, and deeply ingrained habits. You can't redesign a workflow you don't understand, and this domain is unforgiving to outsiders who skip that step.
Mapping the quoting journey from first client call to policy bind, with drop-off points highlighted
Strategy & Framing
The research pointed to one core insight. Carriers already know their appetite. They know which business types, risk classes, and geographies they want to write. That information exists in their systems. The problem was that none of it was surfaced to agents until after the full application was submitted.
Our strategy was simple in concept and hard in execution: connect to carrier appetite data in real time, and show agents which carriers are interested as they fill out the form. Not after. During.
After just a few key fields (business type, state, revenue range), show which carriers are likely to quote. Give agents a reason to keep going by proving someone is listening on the other side.
Use progressive disclosure to show only the fields that matter for the carriers still in play. If a carrier drops out because of a risk class mismatch, hide their specific questions. The form gets shorter as the agent goes, not longer.
Agents needed to trust the system. That meant showing the reasoning behind every match and mismatch, not just a green or red indicator. If a carrier dropped off, the agent should know exactly why.
Design Process
Commercial insurance forms are genuinely complex. There's no way around it. The challenge was not to simplify the domain, because agents need that detail. The challenge was to present complexity progressively, revealing information at the right moment so the agent always felt oriented.
The centerpiece of the redesign was a persistent sidebar that lived alongside the form. As the agent entered data, the sidebar updated in real time to show which carriers were still eligible, which had dropped off, and why. It was the agent's co-pilot through the entire quoting process.
Getting the information density right took multiple rounds of testing. Early versions showed too much, listing every carrier appetite rule in detail. Agents found it overwhelming. Later versions were too sparse, hiding the reasoning and eroding trust. The final design used a collapsed-by-default pattern, with carrier status visible at a glance and full reasoning available on expand.
Revenue and state match.
Employee count to confirm. Add employees →
Needs 2+ years in business.
Instead of presenting all 40 pages upfront, we broke the application into logical sections that adapted based on carrier eligibility. The first section gathered universal fields: business type, state, employee count, revenue. From there, the form branched based on which carriers were still in play.
If only two carriers remained after the first section, the agent would only see questions relevant to those two. The form literally got shorter as it became more specific. Agents told us this felt like the system was "working with them" rather than against them.
We ran four rounds of moderated testing with active agents, using real-world scenarios they'd encountered in the past week. The biggest surprise was how much agents valued the "why" behind carrier decisions. They didn't just want to know that Travelers dropped off. They wanted to know it was because of the NAICS code, so they could decide whether to reclassify or move on.
That feedback shaped the final interaction pattern: every carrier status change included a plain-language reason and, where applicable, a suggested action the agent could take to bring the carrier back into play.
“I’m reading rules instead of talking to my client.” cut it to a status
“Where did Hartford go?” A carrier dropped with no why. add the reason
“OK, it’s the prior coverage. Now what?” add the action
Key Design Decisions
The industry standard was "fill everything out, submit, and wait." We broke that model by streaming carrier eligibility data as the agent typed. This was technically expensive, requiring real-time API connections to carrier appetite engines. But it fundamentally changed the agent's experience from reactive to proactive. They could see the market responding to their input in real time, which gave them confidence and control.
Traditional insurance applications ask every question regardless of whether the answer matters. Our progressive approach only showed fields that were relevant to carriers still eligible. This meant agents sometimes completed applications in 12 minutes instead of 40. The key design tension was making sure agents understood why sections were appearing or disappearing, so we used clear transition animations and a persistent progress indicator that reflected the adaptive form length.
We could have simply shown green and red indicators next to carrier names. Agents told us that wasn't enough. They needed to understand the logic because their professional reputation was tied to the recommendations they made to clients. The final design exposed carrier appetite rules in plain language, and agents consistently said this was the feature that made them trust the platform. Trust was the real product, not the matching algorithm.
Outcomes
The redesigned quoting platform launched to Bold Penguin's full agent network. Real-time eligibility and progressive forms replaced the old static application workflow, and the results showed up quickly in the metrics that mattered.
Reflection
Working in commercial insurance taught me that domain complexity is not the enemy. The enemy is presenting that complexity all at once, without context, without feedback, and without respect for the user's expertise. The agents I worked with were deeply knowledgeable professionals. They didn't need the system to dumb things down. They needed it to be smarter about when and how it presented information.
The biggest lesson from this project was about trust. In enterprise software, especially in regulated industries, users won't adopt a tool they don't trust. And trust comes from transparency. Every time we exposed the reasoning behind a carrier match or showed agents exactly why a field appeared, adoption went up. Hiding complexity behind a clean interface is not the same as earning trust. You earn trust by showing your work.
I also learned the value of progressive disclosure as a design philosophy, not just a UI pattern. The entire product was built around the idea that the right information at the right time is more valuable than all the information all the time. That principle has shaped how I approach every complex product since.