PricingIQ: Rules-Based Pricing That Protects Margin on Every Deal
How PricingIQ turns admin fees, WC inputs, floors, and approvals into a rules engine, and why every pricing component is saved at quote time.
Every PEO has a pricing philosophy. Very few have a pricing system. The philosophy lives in the head of the owner or the CFO: we don't go below a certain admin fee per employee, we load WC a certain way for roofing, we need a signature before anyone discounts a benefits-heavy account. The system, if you can call it that, is a spreadsheet with a tab nobody is allowed to touch, a handful of reps who know the unwritten rules, and an approval process that runs over text message.
That works until it doesn't. A rep prices a deal on a Friday, the owner is traveling, the prospect wants an answer, and the margin that was supposed to be protected quietly leaks out. Six months later someone pulls the loss fund report and asks why this account is underwater, and nobody can reconstruct what the pricing inputs were on the day it was quoted.
PricingIQ is our answer to that. It is the pricing and rules engine inside HALO IQ, and this post is about what it does and why we built it the way we did.
What a PEO actually prices
Before the engine, the inputs. A PEO quote is a bundle, and the bundle has more pieces than most prospects realize.
There is the administrative fee, which might be a flat per-employee-per-month amount, a percentage of gross payroll, a tiered schedule by headcount, or some hybrid where the first fifty employees pay one rate and everyone above pays another. There is the workers' comp component, which is where most of the underwriting judgment lives: the class codes, the payroll by class, the manual rate the PEO is working from, whether the master policy is guaranteed cost or large deductible, and the load the PEO puts on top to fund its own retained losses. There is the employer tax side, where the PEO's handling of FUTA and SUTA under its own account matters to the client's effective cost. There is the benefits piece, if the PEO offers a master health plan, with employer contribution assumptions that can swing the total number more than the admin fee ever will. And there is the long tail of additional fees: setup, off-cycle payroll runs, garnishment processing, year-end forms, and whatever else the PEO charges for that a prospect will eventually find on an invoice.
Every one of those is a pricing component. Each one has a default, a floor, an allowable range, and somebody who is allowed to override it. A pricing engine is just a place where those facts are written down and enforced, instead of remembered.
The catalog
The first thing PricingIQ gives a PEO is a catalog. The catalog is the list of everything the PEO sells and what it costs, structured so the wizard and the proposal can read from it rather than from a rep's memory.
A catalog entry is not just a price. It carries the fee structure (per employee per month, percent of payroll, flat), the unit it applies to, the tenant-level default, the hard floor below which no one can go, and the approval tier required for a discount beneath the soft floor. For PEOs that bill through Stripe, the catalog syncs to Stripe so the thing that was quoted is the thing that gets invoiced. That sync matters, because the gap between what a proposal said and what the billing system was configured to charge is where billing disputes come from.
Catalog entries are versioned. When the admin fee schedule changes in January, quotes produced under the old schedule still point at the version they were priced with.
The rules engine
A catalog tells you what things cost. A rules engine tells you what is allowed.
The rules in PricingIQ are conditions attached to pricing components. A rule can say that the admin fee for any account under a certain headcount cannot drop below a floor. It can say that any WC class code in a hazardous group requires a load of at least some multiple of the manual rate. It can say that a discount on the benefits contribution beyond a threshold routes to a sales manager, and a discount beyond a higher threshold routes to the owner. It can say that an account in a particular state, or a particular industry, needs underwriting sign-off before the proposal can be published at all.
The point of expressing these as rules rather than as training is that rules fire every time. A rep cannot forget a rule, misremember it, or decide it probably does not apply this once. If the rule says a floor exists, the wizard will not let the number go below it without an approval event, and the approval event is logged with who approved, when, and what the number was before and after.
We built the approvals to be fast, because an approval process that slows deals down gets routed around. The approver sees the deal context from ConnectIQ, the proposed component, the rule it violates, and the margin impact, and can approve or decline from that view. The rep sees the status in the deal. Nobody has to find the text thread.
Why pricing components persist at quote time
Here is the part we care about most, and it is not glamorous.
When PricingIQ prices a deal, every component that went into the number is saved with the quote. Not a reference to the catalog, but the actual values: the admin fee structure and rate, the WC manual rate and the load applied, the class codes and the payroll by class, the benefits contribution assumptions, the additional fees, the rule evaluations, and any approvals. The quote becomes a snapshot of the PEO's pricing decision on the day it was made.
The reason is loss-fund calibration. A PEO that retains risk under a large-deductible master policy is running a small insurance company whether it admits it or not. The load it puts on WC is its premium, the loss fund is its reserve, and the only way to know whether the loads are right is to compare what was charged against what the book actually produced. That comparison is impossible if you cannot reconstruct what was charged, per account, per class, at the moment of pricing.
With persisted components, the question "are our WC loads adequate for this class group" becomes a query instead of an archaeology project. Intel Analyst can answer it in plain language because the data is sitting in structured rows, not buried in a spreadsheet version from eighteen months ago. ModIQ's loss picks can be checked against the loads that were actually applied. ClaimsIQ can show which accounts are running hot relative to what they were priced at. The pricing module stops being a calculator and becomes the front half of a feedback loop.
It also protects the PEO in the other direction. When a client disputes an invoice, or a broker asks why a renewal moved, the answer is in the quote record. In two decades of PEO sales the most corrosive thing I saw was a PEO that could not explain its own number to a client, and PricingIQ is built so that never has to happen.
How it fits the wizard
PricingIQ is not a separate screen a rep visits after building the proposal. It runs underneath the wizard. When the rep is in the Workers' Comp step, the manual rates are coming from CarrierIQ and the loads are coming from the pricing rules. When the rep reaches Investment Analysis, the hard costs are being computed from the priced components, and the additional fees are being pulled from the catalog so they show up on the proposal rather than surprising the client later. By the time Executive Summary AI drafts the narrative, it is describing a number that has already passed every rule the PEO configured.
That ordering means the rep never produces a proposal with a number the PEO cannot honor.
A hypothetical to make it concrete
Take a hypothetical 85-employee commercial cleaning company with payroll split across a janitorial class and a small clerical class. The rep enters the census, the class codes, and the payroll. PricingIQ pulls the tenant's default admin fee schedule for that headcount band, applies the WC load the rules specify for the janitorial class, and computes the hard costs. The rep, trying to win a competitive situation, drops the admin fee below the soft floor. The rule fires, the discount routes to the sales manager with the margin impact displayed, and the manager approves within the deal view. The quote is saved with every component, including the approval. A year later, when the account's claims come in higher than expected, the PEO can see exactly what load it charged and decide whether the rule for that class needs to change.
Nothing in that flow required anyone to remember anything.
Where this is going
Pricing discipline is one of the few things in a PEO that compounds. Every deal priced under enforced rules is a deal whose margin is known, and every quote with persisted components is a data point for calibrating the next one. PricingIQ exists so that the rules a PEO already believes in are the rules that actually run, and so that the book of business can be understood later, not just sold now.
If your pricing lives in a protected spreadsheet tab and an approval chain that depends on who is awake, that is the gap we built this for.
HALO IQ
Underwrite and deliver the proposal in one file.
Submissions, mods, and proposals for PEO operators and brokers, without the spreadsheet handoff.
Was this article helpful?
