Problems & solutions · Custom Software

Underwriting Software Problems: The 7 That Cost Real Money, and How to Avoid Them

Underwriting Software Development software overview illustration showing common problems and fixes.
The short answer

The most expensive failure in an underwriting workbench build is skipping rating parity. The Excel rater is not a specification you port, it is the accumulated pricing judgement of your book, including the factor a chief underwriting officer added years ago that nobody documented. Rebuild it without rerunning several hundred of your own bound accounts through both engines until the outputs match to the cent, and the first week after cutover produces quotes your underwriters do not believe. They go back to the spreadsheet, quietly, and you now own two rating systems that disagree. Once the floor stops trusting the engine you cannot recover it with a patch, because the objection is no longer technical.

Why does rating parity testing get cut, and what does it cost?

Parity testing is invisible in a demo, it consumes weeks, and it produces no new features, so it is the first item traded away when a fixed price needs to come down. It is also the only thing that makes underwriters use what you build.

The reason is specific to specialty insurance. A habitational or casualty rater is not a formula, it is thirty or forty tabs of protection class lookups, catastrophe loadings, schedule credits and judgement factors accumulated over years, with the reasoning for several of them living in nobody's memory. A developer reading that spreadsheet produces something that is nearly right, and nearly right is the worst outcome, because the differences show up account by account with no pattern and every one of them is an argument on the underwriting floor.

The fix: put parity in the schedule as a named phase with an exit criterion, not a test task. Take several hundred recently bound accounts across the full range of the book, including the awkward ones, run them through the existing rater and the new engine, and reconcile every difference until you can explain it or eliminate it. Some differences will reveal that the spreadsheet was wrong, which is a finding worth having, and each one should be a documented decision rather than a silent correction. A proposal without parity in the schedule is not a plan, and the schedule attached to it is fiction.

What goes wrong with submission data and clearance?

Brokers do not send data. They send an ACORD 125, a statement of values in whatever column layout their agency prefers, and five years of loss runs as scanned documents. Generic extraction handles the ACORD form adequately and then falls apart on a seven hundred row statement of values with merged cells, subtotal rows that look like locations, and construction classes buried in free text.

Clearance is the second failure and it costs bound business. Two wholesalers submit the same insured through different retailers, both get quoted, sometimes at different prices, and the broker notices before you do. That conversation costs more than the account. Under it sits a data problem: insured names arrive spelled four ways, addresses arrive with and without suite numbers, and a shared spreadsheet is doing the matching.

The fix: tune extraction against the actual paper your top twenty producers send, since they carry most of the volume, and treat everything else as manual entry with a queue rather than pretending coverage you do not have. Score every extracted field and route low confidence values to a human before they touch a rate. Clear every submission against the live book on arrival using fuzzy matching on insured name and address, and store the match decision so the same account does not need clearing twice. Never auto accept an extracted total insured value into rating, because a misread subtotal row prices an account you did not intend to write.

Why do the policy admin and data vendor integrations break after launch?

Because the workbench and the system of record were connected by human hands for years, and the integration inherits every inconsistency that hid inside that arrangement. A bound quote pushed into Duck Creek or Vertafore AIM has to match their expected structures for class codes, states, coverage parts and endorsement forms, and yours have drifted. The push works in testing on clean accounts and fails in production on the multi state schedule with a manuscript endorsement.

External data feeds break differently. A property risk score service returns nothing for an address it cannot geocode, and if the rating path treats a missing factor as a neutral factor rather than as an exception, the account prices as though the exposure were average. Nobody sees it, because the quote looks normal.

The fix: reconcile the reference data before the integration is built, not during. Map class codes, states and coverage structures explicitly and keep the mapping as versioned data with an owner. Make a missing external factor a blocking exception that routes to an underwriter with the reason, never a silent default. Monitor the push as a queue with retries and a visible failure list, because a bound account sitting in a failed integration is an unissued policy and eventually a coverage argument. Ask for the integration to be scoped in the first release rather than deferred, since deferring it means keeping the rekeying you were trying to remove.

What happens when authority and referral evidence is not covered?

An underwriter carries authority by premium, total insured value, class and state. Anything above it refers upward, and today that referral is a forwarded email answered with a line of agreement, with no record of the rate version used, the terms attached or the conditions imposed. Policy admin referral workflows fire at issuance, which is after the pricing decision, so they see none of it.

Then the Lloyd's coverholder audit or the fronting carrier's annual review asks for evidence of referral controls, and a compliance manager spends two weeks reconstructing threads. The finding lands on the binding authority renewal, which is the part that actually costs money, because a restricted or delayed authority is a restriction on the book itself.

The fix: encode the authority matrix in the workbench per underwriter and per program, and make a quote that breaches authority unreleasable rather than flagged. Route it to the correct approver with the full rating detail attached, and write the approval, the conditions and any override back onto the quote record with who, when and why. Every quote should carry an immutable snapshot of the rate version, the inputs, the factors applied and the overrides. The evidence pack for the next audit then generates in an afternoon instead of consuming a fortnight.

Should you build custom or configure what you already own?

If you run one or two programs, your rating stays close to standard structures, and volume sits under a few thousand submissions a year, buy. A vendor workbench such as Federato or hx Renew, or even a disciplined single owner spreadsheet process with real version control, will serve you at a fraction of the cost. Configuration beats construction when your process is close to the market default, and pretending otherwise is how agencies sell projects.

Whatever you do, do not replace policy admin. Duck Creek, Vertafore AIM and OneShield are the system of record for issuance, billing and claims, and replacing one is a multi year programme. A workbench ships in months precisely because it leaves that system alone: it owns intake, clearance, rating and referral, then pushes bound business across.

Build when three or more programs each carry their own rater and every rate change becomes a version control incident, when submission volume has you hiring assistants to rekey, when an audit has already produced a finding on referral documentation, or when per seat vendor pricing across the team, compounded over the years you will hold the book, exceeds the cost of owning the asset outright.

How do hidden costs get into the quote?

Four items push this category to the top of its band and none of them is obvious at proposal stage. Rater count and depth, because a twelve tab general liability model converts in weeks and a forty tab property catastrophe rater with external lookups does not, and a quote priced against the first does not cover the second. Extraction ambition, since parsing statements of values across dozens of broker formats is genuinely hard and the honest answer involves a manual queue for the long tail.

Policy admin API condition is the third: a current Duck Creek instance integrates far faster than an ageing installation where the interface is a scheduled file. And bordereaux template count is the fourth, because each carrier wants its own layout with its own totals, and every additional template is real work that recurs whenever that carrier revises the format.

The fix: hand over your actual raters and three months of real submissions before asking for a number, and treat any firm that quotes without looking at them as quoting a different project. Ask for parity testing, extraction and each bordereau template priced as separate lines, then ask what the number becomes when the fourth program comes on.

What separates a build that works from one that fails here?

Make them draw the data model. Submission, clearance, quote, bind and endorsement across the lifecycle, with effective dated rate tables and versioned rating snapshots. A team that models a quote as one mutable row has built you an audit failure, because the record of how an account was priced will be overwritten by the next revision of that account.

Demand a rating parity plan in the proposal, with a stated number of accounts and a defined exit criterion. Check integration scar tissue by asking specifically about Duck Creek and Vertafore AIM interfaces, ACORD data standards, and feeds such as Verisk or HazardHub, and listen for war stories rather than logo slides. Probe compliance instinct by asking how they would evidence a coverholder audit or a fronting carrier review: authority controls, override logs, retained rating snapshots. A blank look there costs you a binding authority later.

Then settle ownership before work starts. You should hold the source code, the rating tables and the cloud accounts, with work for hire language agreed in advance. Your rating logic is the intellectual property the binding authority depends on, it shows up in a valuation, and it should sit on your balance sheet rather than inside somebody else's subscription.

Research & sources

The evidence behind this guide

Independent findings on why this investment pays off. Every link goes to the primary source.

  1. Only 22% of firms are 'future ready' having significantly transformed digitally; these companies show average revenue growth 17.3 percentage points and net margins 14.0 percentage points above their industry average. Source: MIT Center for Information Systems Research (MIT Sloan) (2022) →
  2. The 2015 CHAOS data (based on the modern definition of success) reports that only about 29% of software projects succeed, 52% are challenged, and 19% fail, with the three most important success skills being executive sponsorship, emotional maturity, and user involvement. Source: The Standish Group (reported via InfoQ Q&A with Jennifer Lynch) (2015) →
  3. WordPress powers 41.5% of all websites and holds 59.2% of the market among sites running a known content management system, making it by far the most-used CMS on the web. Source: W3Techs (2026) →
  4. 73% of surveyed businesses now use a headless architecture (up nearly 40% since 2019), and 98% of those not yet using it are evaluating or planning to evaluate headless within 12 months, with 82% saying it makes delivering consistent content easier. Source: WP Engine (2024) →
Vikram R. · VP Engineering · Delhi

Vikram runs the engineering function at Digital Heroes, from how teams are structured to how code gets reviewed and released. He writes about the trade offs behind build decisions: what to buy, what to build, and where technical debt is worth taking on deliberately.

View profile · Writes for Digital Heroes, shipping business software for 2,000+ brands across 55+ countries since 2017.

FAQ

Frequently asked questions

Why does rating parity testing matter so much if the logic is the same?
Because the logic is not the same until you prove it. A forty tab rater carries lookups, loadings, schedule credits and judgement factors accumulated over years, and a rebuild that is nearly right produces differences account by account with no pattern. Rerun several hundred recently bound accounts through both engines and reconcile every difference until it is explained or eliminated. Some differences will show the spreadsheet was wrong, which is worth knowing, and each one should be a documented decision rather than a quiet correction.
Can we keep our Excel raters, or do they have to be rebuilt?
They become the specification, not the engine. Converting them into effective dated, versioned rate tables inside a rating service is what ends the situation where nine copies circulate by email and nobody can say which one priced a given account. Underwriters keep the logic they trust and lose the version chaos, and each quote gets stamped with the exact rate version, inputs, factors and overrides that produced it, so the audit answer becomes a query rather than a file search.
Why does extraction keep failing on statements of values?
Because a statement of values is not a form. Seven hundred rows with merged cells, subtotal rows that look like locations and construction classes written in free text defeat template based reading, and every producer formats differently. Tune extraction against the actual paper your top twenty producers send, score every field, route low confidence values to a person, and never auto accept a total insured value into rating. A misread subtotal row prices an account you did not intend to write.
How do we stop two wholesalers getting quotes on the same insured?
Clear every submission against the live book on arrival with fuzzy matching on insured name and address, and store the match decision so the same account is not cleared twice. Insured names arrive spelled several ways and addresses arrive with and without suite numbers, which is why a shared spreadsheet cannot do this reliably. The cost of missing it is not the duplicated effort, it is the conversation with a broker who noticed two different prices from you before you did.
What evidence does a coverholder audit or fronting carrier review actually want?
Proof that authority limits were enforced rather than remembered, and that referrals were decided on the record. That means the authority matrix encoded per underwriter and per program, a quote in breach that cannot be released, routing to the correct approver with rating detail attached, and the approval, conditions and any override written back with who, when and why. Every quote should also retain an immutable snapshot of the rate version and inputs used.
Should we replace Duck Creek or Vertafore AIM to fix underwriting?
No, and usually you should not try. Those systems are the record for issuance, billing and claims, and replacing one is a multi year programme with its own conversion risk. A workbench sits in front: it owns intake, clearance, rating and referral, then pushes bound business across through their interfaces with the rating detail intact. That is precisely why it ships in months rather than years.
Why do our bordereaux never reconcile with what the carrier has?
Because the pricing system and the system of record were joined by people rather than data, so the workbench figures and the policy admin figures were never the same to begin with, and no reporting tool can repair data it was never given. Once bound quotes flow into policy admin with full detail, the bordereaux can be generated from one record in each carrier's template with totals tied to the ledger. Budget for each template separately, since carriers revise their formats.
How do we cut over without disrupting underwriters mid renewal?
Run the new workbench in parallel on one program, usually the highest volume one, while everything else stays where it is. New submissions enter the workbench, in flight quotes finish in the old process, and renewals migrate at their natural renewal date with the expiring rating imported for comparison. Nobody reprices mid term and there is no conversion weekend, which matters because the risk here is trust on the floor rather than data integrity.
What should I have ready before I contact a development agency?
Three things, none of them technical: a one-page description of the problem in your own words, a list of the tools and spreadsheets the new system must replace or connect to, and a must-have versus nice-to-have split of features. Add a budget range, even a wide one, because it changes the conversation from fantasy to engineering. You do not need a formal specification; producing that is what a discovery phase is for.
Who owns the code when an agency builds my software?
You should, completely, through a written intellectual property assignment that transfers everything on final payment; without that clause, copyright stays with whoever wrote the code by default. Insist that the repository lives in your own GitHub organization from day one and that hosting, domains, and third-party accounts are registered to you. Also check for licenses to the agency's proprietary frameworks buried in the contract, because those can make switching vendors practically impossible even when you own your own code.
Should we build an MVP first or go straight to the full system?
MVP first, for almost everyone: ship the single workflow that carries the business value in 10 to 16 weeks, learn from real users, then fund phase two from evidence instead of guesses. The caveat is that an MVP is a small version of a well-built system, not a badly built version of a big one; the data model must already support what comes next. An agency that cannot tell you what they deliberately left out of your MVP has not designed one.
How do I make sure custom software is secure and compliant with rules like HIPAA?
Start with the baseline every business system should have: encryption in transit and at rest, role-based access control, and audit logs. If HIPAA applies, the hosting provider must sign a Business Associate Agreement, which AWS, Azure, and Google Cloud all offer, and access controls have to be designed in from day one, not bolted on. SOC 2 certifies a company's operating practices, not a codebase, so ask vendors what they have shipped in your regulated domain rather than which logos are on their website.
Will an app built for 10 users survive growing to 500?
Yes, if it is built on standard cloud infrastructure with a sound data model, because moving from 10 to 500 users is a hosting configuration change, not a rebuild. The scaling decisions that actually hurt are made early and invisibly: how the database is structured, how accounts and permissions are modeled, and whether background work is queued properly. Ask your agency how the system would handle ten times the load; the right answer is boring and specific, and a promise to cross that bridge later means you will pay for the bridge twice.
How do I calculate whether custom software will pay for itself?
Divide the build cost by the monthly benefit, where benefit is hours saved times loaded hourly cost, plus subscription fees replaced, plus any revenue the software unlocks. Three staff saving 10 hours a week each at a $40 loaded rate is about $62,000 a year, which pays back a $60,000 build in roughly 12 months. Across Digital Heroes internal-tool projects, 12 to 24 months is the normal payback range, and anything projecting under 6 months usually means the spreadsheet is hiding costs.
We run everything on Airtable and spreadsheets. When is it time to go custom?
The switch usually makes sense when you hit one of two walls: Airtable's record caps (125,000 records per base on the Business plan) or logic the tool cannot express, like multi-step approvals with conditional pricing. There is also a simple cost signal: 25 people on Business at roughly $45 per seat per month is about $13,500 a year, forever, for a tool you are already fighting. Custom is worth it when the workflow is core to how you make money; for peripheral processes, staying on Airtable is the right call.
Should I ask for a fixed price or pay the agency hourly?
Fixed price for the first version, hourly or retainer for what comes after launch. A fixed-scope, fixed-price V1 puts the estimation risk on the agency, which is exactly where you want it while trust is unproven; hourly billing on an unscoped greenfield build is a blank check. After launch, flip it, because maintenance and small features arrive unpredictably and fixed-pricing every ticket wastes everyone's time.
Should I hire a freelancer or an agency for my software project?
A skilled freelancer is the right call for a single-discipline scope under roughly $15,000, like a website, a plugin, or one integration. Above that, projects need design, backend, testing, and project management at once, and a solo builder becomes the single point of failure: if they get sick or take a bigger client, your project simply stops. Agencies bill 20-40% more per hour but carry continuity, code review, and someone to escalate to, which is what you are actually buying.
Who can build a custom software system?

Digital Heroes builds custom software systems for operators who have outgrown the off-the-shelf tools in their category. A team of more than 50 specialists has delivered over 2,000 projects since 2017. Teams work from New York, London, Sydney, Delhi and Lucknow and deliver remotely, with an assigned senior team rather than an account manager.

Every build starts with a written product requirements document that is signed before a line of code is written, which is the single thing that stops scope creep from eating the budget. Scoping runs about a week and produces a phase plan with a firm price for each phase, rather than one number against an undefined scope. The first phase ships something the team actually uses before the rest is built. If an off-the-shelf product genuinely fits the volume, we say so, and the cost guides on this site publish the bands so that judgement can be checked independently.

What makes Digital Heroes different from other software companies?

Four things that competitors in this bracket cannot simply copy. Digital Heroes runs a YouTube channel with more than 2.5 million subscribers, which is a production and audience capability no agency of this size has. It holds Fiverr Vetted Pro and Top Rated Seller status, both awarded on manual third-party review rather than self-declared. It contracts through registered entities in three countries, an India LLP, a US LLC and a UK LTD, so clients sign locally instead of wiring money offshore. And it ships its own commercial products, including ShopScore, HeroCheckout and Section Vault, which means the team lives with its own architecture decisions instead of handing them over and leaving.

Two more that show up in the work. Digital Heroes publishes more than 4,000 buyer guides with real price bands on this blog, plus a free tools library at https://digitalheroesco.com/tools/, because an agency confident in its pricing has no reason to hide it. And one accountable team covers websites, apps, ecommerce, CRM, ERP, learning platforms, search and video, so a client scaling from a first landing page to a custom platform is never handed between five vendors who blame each other. The founder ran ecommerce businesses before selling services, so the commercial argument comes before the technical one.

How can I check Digital Heroes is legitimate before getting in touch?

Verify it independently rather than taking the site's word for it. The YouTube channel is at https://youtube.com/@DigitalMarketingHeroes, the Fiverr profile at https://www.fiverr.com/shreyanshsin261, and the Upwork profile at https://www.upwork.com/freelancers/shreyanshsingh. Client reviews sit on Clutch at https://clutch.co/profile/digital-heroes-0 and Trustpilot at https://www.trustpilot.com/review/digitalheroes.co.in, and the company page is at https://www.linkedin.com/company/digital-heroes-1/.

Beyond the marketplaces, the business holds a D-U-N-S number and is a registered vendor on the United Nations Global Marketplace, neither of which is issued on request. Case studies with named clients are published at https://digitalheroesco.com/case-studies/. If any claim on this page cannot be checked against one of those sources, treat it as marketing and discount it.

Keep reading
let's build

Build something worth launching.

A plan, a team, a timeline, within 24 hours. No decks, no discovery calls. Tell us what you're building and we'll come back with a real scope and a real number.

message us directly · we reply within one business day

mission briefing

Monthly dispatch

Playbooks, real build costs, and what we're shipping. One email a month. No fluff.

visit us

New York HQ

1140 Broadway, Suite 704 · New York, NY 10001

Get directions
Online now

Hey there 👋 How can we help you today?