v2.0

GoRules Version 2 is here - redesigned, now with managed cloud.GoRules Version 2 is here!

Watch the launch videoWatch

Auto Insurance Premium Calculator

Dynamic pricing system that determines accurate premiums based on driver profile, vehicle specifications, and coverage options for personalized insurance rates.

Solution

This auto insurance premium calculator delivers tailored quotes by analyzing key risk indicators across multiple dimensions. The system evaluates driver risk by examining age brackets and incident history, assigning specific risk multipliers and categories that reflect statistical likelihood of claims. Vehicle assessment factors incorporate both type (sedan, SUV, sports car) and age considerations, recognizing that newer vehicles typically present lower risk profiles but higher replacement costs.

Coverage evaluation adjusts pricing based on policy type and deductible selection, with comprehensive coverage commanding higher premiums while higher deductibles reduce monthly costs. The calculator applies these risk factors to a base premium rate calculated per thousand dollars of coverage. This modular approach allows for transparent, consistent pricing while ensuring each quote accurately reflects the specific risk combination presented by each customer's unique circumstances.

How it works

The decision graph follows a sequential evaluation process:

  1. Driver Risk Assessment: Evaluates the driver's age and incident history (accidents and violations), assigning both a numerical risk factor and categorical risk level.

  2. Base Premium Calculation: Determines the foundational premium by multiplying a standard rate per thousand dollars against the requested coverage amount.

  3. Vehicle Risk Evaluation: Analyzes vehicle type and age to apply an appropriate risk multiplier, recognizing that sports cars and older vehicles typically represent higher insurance risks.

  4. Coverage Adjustment: Modifies the premium based on selected coverage type (basic, standard, comprehensive) and deductible amount, with more extensive coverage and lower deductibles increasing the final premium.

  5. Final Premium Calculation: Combines all risk factors and applies them to the base premium to determine the customer's personalized insurance rate.

Where teams use it

  • Online insurance quote systems
  • Agent quoting tools for in-person consultations
  • Mobile insurance apps with instant pricing
  • Price comparison platforms for insurance marketplaces
  • Underwriting automation for insurance carriers
  • Risk-based pricing for fleet management companies

Inside the decision model

Auto Insurance Premium Calculator ships as a JDM decision graph with 5 nodes, 3 decision tables and 27 rules. Download it, load it into GoRules, and run it as-is on Zen Engine.

Decision graph5 nodes · read-only
input requesttable driverRiskAssessmentexpression calculateBasePremiumtable vehicleRiskAssessmenttable finalPremiumCalculation
01

Request

input

Quotes start from two objects: customer, with age and the drivingHistory incident counts, and policy, carrying coverageAmount, coverageType, deductible, vehicleAge, and vehicleType. These are the only fields the rater reads.

Sample requestJSON
{
  "customer": {
    "age": 35,
    "gender": "female",
    "creditScore": 720,
    "drivingHistory": {
      "accidentsLast3Years": 0,
      "violationsLast3Years": 1
    }
  },
  "policy": {
    "coverageAmount": 300000,
    "coverageType": "comprehensive",
    "deductible": 500,
    "vehicleAge": 3,
    "vehicleType": "sedan"
  }
}
02

Driver Risk Assessment

table

Driver pricing crosses customer.age bands against a derived Total Incidents column, customer.drivingHistory.accidentsLast3Years plus violationsLast3Years, under a first hit policy. Drivers under 25 with more than 1 incident take the worst ageRiskFactor of 1.5 and a 'high' category, [25..65] drivers with zero incidents rate 1.0 and 'low', and over-65 drivers land at 1.1 or 1.3 depending on whether they have any incidents at all.

Collapsing accidents and violations into one incident count is a simplification of the surcharge points real raters use, but the shape matches loss experience: youthful operators and incident frequency are the two strongest predictors of auto claims, which is why no under-25 row rates better than 1.3. The mild senior loading reflects the gradual frequency uptick past retirement age rather than any hard cutoff.

Decision tablefirst hit policy
Agecustomer.ageTotal Incidentscustomer.drivingHistory.accidentsLast3Years + customer.drivingHistory.violationsLast3YearsAge Risk FactorriskFactors.ageRiskFactorDriver Risk CategoryriskFactors.driverRiskCategory
< 25> 11.5'high'
< 250, 11.3'medium-high'
[25..65]> 21.4'medium-high'
[25..65]1, 21.2'medium'
[25..65]01.0'low'
> 65> 01.3'medium-high'

+1 more row in the downloadable template

03

Calculate Base Premium

expression

A flat rate of 5.5 per thousand anchors the price: coverageAmountInThousands divides policy.coverageAmount by 1000 and basePremium multiplies the two, so the sample 300000 policy starts at 1650 before any risk factors apply. Rate-per-thousand is the standard way carriers express base rates, which keeps the starting number legible to underwriters.

Expressions3 fields
basePremiumPerThousand5.5
coverageAmountInThousandspolicy.coverageAmount / 1000
basePremium$.basePremiumPerThousand * $.coverageAmountInThousands
04

Vehicle Risk Assessment

table

Each vehicle row pairs policy.vehicleType with a policy.vehicleAge band: sedans run from 0.9 under 3 years to 1.1 past 7, an 'suv' runs 1.1 to 1.3, and 'sports' cars climb from 1.5 to 1.8 over the same age bands. A blank catch-all row assigns 1.2 to any unrecognized type, so the table always prices.

Sports cars carrying roughly double the sedan factor tracks how symbol-based vehicle rating penalizes performance vehicles on both claim frequency and severity. Loading older vehicles more within each type is a sensible choice for this template: aging cars lack current safety and anti-theft equipment, even though their lower replacement cost cuts the other way on physical damage.

Decision tablefirst hit policy
Vehicle Typepolicy.vehicleTypeVehicle Agepolicy.vehicleAgeVehicle Risk FactorriskFactors.vehicleRiskFactor
'sedan'< 30.9
'sedan'[3..7]1.0
'sedan'> 71.1
'suv'< 31.1
'suv'[3..7]1.2
'suv'> 71.3

+4 more rows in the downloadable template

05

Final Premium Calculation

table

The last table maps policy.coverageType against deductible bands with a first hit policy: 'basic' cover with a deductible above 1000 earns the cheapest coverageFactor of 0.8, 'comprehensive' with a deductible under 500 tops out at 1.3, and a blank fallback row emits a neutral 1.0. Its outputs also declare the premium field the graph returns.

Deductible credits of this shape are ordinary retention pricing: every dollar the insured keeps reduces expected paid losses and suppresses small-claim frequency, so within each coverage type a higher deductible always moves the factor down. The gap between 'basic' and 'comprehensive' rows reflects that comprehensive adds first-party physical damage perils on top of liability, which is genuinely more exposure, not just a richer tier name.

Decision tablefirst hit policy
Coverage Typepolicy.coverageTypeDeductiblepolicy.deductibleCoverage FactorriskFactors.coverageFactorFinal Premiumpremium
'basic'> 10000.8-
'basic'[500..1000]0.9-
'basic'< 5001.0-
'standard'> 10000.9-
'standard'[500..1000]1.0-
'standard'< 5001.1-

+4 more rows in the downloadable template

Make this template
your own.

Load Auto Insurance Premium Calculator into GoRules, adjust the rules to your policy, and ship it behind your own API.