The pricing KPIs worth reporting connect a decision to money: gross profit in currency, price realisation against list, win rate at the price quoted, and margin by product group with the mix shown. The misleading ones measure position or activity: price index against a competitor set, number of price changes, and average discount.
The test is simple. If the number moves and nobody can say what to do differently, it is not a KPI, it is decoration.
The four worth reporting
- Gross profit in currency, not percentage. Percentage margin can rise while profit falls, and percentages hide the size of the thing you are optimising.
- Price realisation: average achieved price divided by list price, per product group. It shows where discounting has become systemic rather than exceptional.
- Win rate at quoted price, split by price band. If you win 80 per cent of quotes, your prices are probably too low. That is a finding, not a compliment.
- Margin by product group, with revenue mix printed beside it. Blended margin without mix is close to meaningless, for the reason below.
Why blended margin misleads: a worked example
Take a month with 200,000 euros of revenue: 120,000 from a group carrying 40 per cent margin, and 80,000 from a group carrying 10 per cent.
Gross profit is 48,000 plus 8,000, which is 56,000, so blended margin is 28 per cent. Next month revenue is still 200,000, but the split reverses: 80,000 at 40 per cent and 120,000 at 10 per cent. Gross profit is 32,000 plus 12,000, which is 44,000, so blended margin is 22 per cent.
Not one price changed. Margin fell 6 percentage points and profit fell 12,000 euros purely on mix. If the monthly report shows the blended number alone, somebody will spend the next quarter hunting a pricing problem that does not exist.
Price index: the KPI most likely to mislead
Price index compares your prices to a competitor set, usually as one number where 100 means parity. Three things break it.
- Basket composition. Add or remove matched products and the index moves without a single price changing.
- Weighting. An unweighted index treats a product you sell twice a year the same as one you sell daily. Weight by your own units or gross profit, or do not report it.
- Match quality. An index built on 8 per cent wrong matches carries an error term nobody ever quotes alongside it.
If you keep it, report it weighted, per category, next to the number of matched products behind it and the share observed in the last 24 hours. A single company-wide index number tells you nothing you can act on.
Number of price changes
This measures how busy the pricing team was. It rises when a rule is misconfigured, and it rises when a competitor's site starts returning bad data. Neither is a good month.
If you want an activity metric, report the share of the range not repriced in 90 days against costs that have changed. That one points at real neglect, and neglect is usually a price left too low.
Average discount
Average discount is a distribution reported as a point. Two teams with an identical 12 per cent average can be running completely different businesses: one gives 12 per cent to everybody, the other gives nothing to most customers and 45 per cent to a handful of accounts.
Report the shape instead: median, ninetieth percentile, and the count of transactions above your approval threshold. The tail is where the money went.
Two data quality metrics that belong on the same page
Pricing reports are built on collected data, so the report should state the quality of that data where the reader can see it.
- Match coverage: matched pairs that returned a price in the last cycle, as a share of the pairs you expect. Always print the denominator.
- Price freshness: the median age of the observations used. Above 48 hours on a daily collection means the pipeline is failing quietly.
The one-page pricing report
One page, monthly, the same shape every time.
- Gross profit in currency, this month against last month and the same month last year
- Margin by product group, with revenue mix beside it
- Price realisation by group, naming the three groups that moved most
- Win rate by price band for quoted business
- Discount distribution, not the average
- Match coverage and price freshness, with denominators
- Three named decisions taken since the last report, and what happened after each
The last line changes behaviour more than the other six combined. A KPI nobody has ever acted on is not a KPI, it is a habit.
The bias worth correcting deliberately
Pricing reports drift towards defending price cuts, because a lost order is visible and a margin left on the table is not. Somebody complains about the first. Nobody complains about the second.
Balance it on purpose: for every product flagged as too expensive, require the report to list the products where you are the cheapest and cannot say why. That second list is usually longer, and it is usually worth more.