Price Index Formula: How to Calculate Where Your Prices Sit Against Competitors (2026)

Last updated: 11 Nov 2026

Price Index Formula: How to Calculate Where Your Prices Sit Against Competitors (2026)

Your director asks: "Are we cheaper or more expensive than the competition?" You have a spreadsheet of competitor prices. Some products match, some don't, and one shop charges shipping. You need one number you can defend.

That number is a price index. The price index formula is your price ÷ competitor price × 100. An index of 100 means you match the competitor, 105 means you are 5% more expensive, and 95 means you are 5% cheaper. For a whole category, you average the product indexes and weight them by sales, so your best sellers count most.

This guide works through the price index calculation for 5 products against 2 competitors, with clearly labelled example numbers, and covers the three things that break most indexes: missing matches, shipping and VAT.

Price index formula: example result for 5 products against 2 competitors
Simple vs sales-weighted competitor price index, example data

What is a competitor price index?

A competitor price index is a single number that shows your price position against one competitor or the market. It compares identical products, divides your price by theirs and multiplies by 100. A score of 100 means price parity. It turns hundreds of separate price gaps into one figure you can track week by week.

The idea is the same one statisticians use for inflation. The ECB explains that the EU's Harmonised Index of Consumer Prices weights each group of goods by "the respective share of each group in the total expenditure of all households", and that "by law, the weights are updated every year". A retail price index borrows that logic. Products people buy more of should count more.

What is the price index formula?

For one product against one competitor, the price index formula is: index = your price ÷ competitor price × 100. For a category, take each product's index, multiply it by that product's sales, add the results and divide by total sales. Use identical products, the same unit and the same currency on both sides.

Before you compare reports, check one thing. Vendors write the formula both ways round.

Source Formula as published An index above 100 means
Dealavo Your price ÷ average competitor price × 100 You are more expensive
PriceShape Your price ÷ competitor price × 100 You are more expensive
Competera Competitor price ÷ your price × 100 You are cheaper
Prisync Competitor price ÷ your price × 100 You are cheaper
Pricefy Competitor price ÷ your price × 100 You are cheaper

Both versions work. Mixing them doesn't. A tool showing "108" and a colleague's file showing "93" may agree. Write down which way round your index runs. This guide uses your price on top, so above 100 always means "we are more expensive".

How do you read 100, above 100 and below 100?

At 100 you charge the same as the competitor. Above 100 you are more expensive: 106 means 6% above them. Below 100 you are cheaper: 94 means 6% below. Many retailers treat a band around 100, often 95 to 105, as parity, and only look closer when a category leaves that band.

That band is common. Dealavo's guide labels an index of 95–105 as "price parity", below 95 as "significantly cheaper than market" and above 105 as premium positioning. PriceShape also mentions a parity range of 95 to 105, and notes that scores far below 90 can mean undercutting that hurts margins.

Where you want to sit depends on your strategy. Our sister guide site, also published by ScrapeWise, has a page on how to calculate a price index. It notes that discount retailers aim below 100, while premium retailers can hold an index above 100.

How do you calculate a price index? A worked example

Work out an index for each product, then combine them in two ways. A simple index averages the product indexes, so every product counts the same. A sales-weighted index multiplies each one by its revenue and divides by total revenue, so best sellers count most. Report both, with coverage.

Here is a full price index calculation. All numbers below are example data, made up to show the method. They are not real shop prices. The shop sells sports equipment, the prices include VAT, and shipping is ignored for now.

Product (example) Your price Competitor A Competitor B Units sold / month Your revenue
Running shoe €119.00 €109.00 €125.00 120 €14,280
Yoga mat €29.90 €32.90 €27.90 400 €11,960
Dumbbell set 20 kg €79.00 €74.00 no match 60 €4,740
Water bottle 0.75 L €14.90 €14.90 €15.90 900 €13,410
Foam roller €24.90 €19.90 €22.90 150 €3,735

Step 1: an index per product. Divide your price by each competitor's price and multiply by 100. The running shoe against Competitor A is 119.00 ÷ 109.00 × 100 = 109.2.

Product (example) Index vs A Index vs B
Running shoe 109.2 95.2
Yoga mat 90.9 107.2
Dumbbell set 20 kg 106.8 not matched
Water bottle 0.75 L 100.0 93.7
Foam roller 125.1 108.7

Step 2: a simple index. Average the product indexes. Against Competitor A that is (109.2 + 90.9 + 106.8 + 100.0 + 125.1) ÷ 5 = 106.4. Against Competitor B, over the 4 matched products, it is 101.2.

Step 3: a sales-weighted index. Multiply each product index by that product's revenue, add them up and divide by total revenue. Against Competitor A the weighted index is 103.1. Against Competitor B it is 99.2.

Price index calculation: simple vs sales-weighted index for two competitors, example data
Weighting by revenue changes the price position

Weighting changed the answer. The simple index says you are 6.4% more expensive than Competitor A. The weighted index says 3.1%. The foam roller explains the difference: the biggest price gap (index 125.1) but the smallest revenue (€3,735). The simple index counts it as much as the running shoe; the weighted index barely notices it.

Against Competitor B the story flips. The simple index of 101.2 says you are slightly more expensive. The weighted index of 99.2 says you are slightly cheaper on what customers actually buy, mainly thanks to the water bottle and the running shoe, your two biggest products by revenue.

Report the weighted number upwards. Keep the simple one as a warning light: a big gap between the two means a few low-volume products are badly priced.

A basket version also exists: your monthly units at your prices divided by the same units at the competitor's prices. Here it gives 102.2 against A and 98.8 against B. Pick one method and keep it.

How do you handle products a competitor doesn't sell?

Leave unmatched products out of that competitor's index, never fill them with zero or a guess, and report coverage next to the index. Coverage is the share of your revenue the index is based on. An index built on 30% of your revenue says much less than one built on 90%.

In the example, Competitor B doesn't sell the dumbbell set. So the index against B covers 4 of 5 products and €43,385 of €48,125 revenue: 90.2% coverage. Write it as "99.2 (90% coverage)".

Competera's guide does the same. Its SKU table marks missing products with "-", and it averages over matched products only. None of the five vendor guides sets a minimum coverage level, so agree one with your team. If coverage drops sharply, check your matching before you trust the index.

A match also has to be the same product. "Similar products make the index meaningless," the guide site warns. Another brand's 20 kg set is not a match, and a 6-pack needs converting to a unit price first. Our guide to product data matching explains where matching goes wrong.

Should the index include shipping and VAT?

Compare prices the way your customer sees them. For consumer shops in the EU that means prices including VAT, because the Price Indication Directive defines the selling price as the final price "including VAT and all other taxes". Shipping is a choice: track the item price and the delivered price as two separate indexes.

Price gap with and without shipping for a small item, example data
Shipping can turn parity into a 33% price gap

VAT. The definitions in Directive 98/6/EC, Article 2 say both the selling price and the unit price include VAT. So consumer prices in the same country already compare like for like. Watch two cases. B2B shops often show prices without VAT, and cross-border comparisons mix different VAT rates. Convert both sides to the same basis before you divide.

Shipping. Comparison sites in the Nordics handle shipping in a way that matters here. Prisjakt Norway says the prices it shows are "eksklusive frakt" (excluding shipping) unless it states otherwise, and uses the price with shipping only as a tie-breaker. Prisjagt in Denmark says the same. PriceSpy UK lets shoppers sort by price including delivery. So shoppers on Prisjakt and Prisjagt see the item price first, and only some of them sort by the delivered price.

Shipping matters most for cheap items. In the example, the water bottle is €14.90 at both you and Competitor A: index 100. Now say you charge €4.90 delivery on a small order and Competitor A ships it free. For a customer buying only the bottle, your delivered price is €19.80 against €14.90, an index of 132.9. Your item index says parity, while a single-item shopper sees a 33% price gap.

Keep the item-price index as your main number, and add a delivered-price index for low-value products.

How often should you recalculate the index?

Recalculate as often as prices in the category move. For promotion-heavy categories that means weekly or more often. The guide site puts it plainly: "A month-old index misses promotions." In our experience, daily data is enough for most teams. The bigger delay is usually the process around the number.

In my experience the slow part is rarely one price. It's the Excel files emailed back and forth, each named something like "Category X_Prices_FINAL_v3.xlsx", with three people adding their input before anyone acts. In Estonia, category managers often have assistants who collect competitor prices by hand. By the time the index is ready, it describes last month.

One home and furniture retailer we work with uses the index for exactly this: a regular check of its own positioning across retailers, not a reaction to every price change. That's the right use. An index tells you where you stand. It does not tell you to cut a price because one competitor did.

I don't drop my price just because a competitor did

When one competitor drops a price, check the weighted index and coverage first. Inside your target band, a single move is noise. A category drifting out of the band for weeks is a signal.

What do you need to build a competitor price index?

You need four things: a product list with your prices and sales, matched competitor prices for the same products, one agreed formula direction, and a regular refresh. The hard part is collecting competitor prices and matching them to your SKUs reliably.

Option What you get What you still do
Manual collection in Excel Full control, no tool cost Collect, match and calculate by hand every time
Price monitoring software with a built-in index Index dashboards, often per category Check which way round the formula runs, and the matching
Data collection plus your own sheet or BI tool Raw matched prices you can weight any way you like Build the index formula once

The same guide site, Competitor Price Comparison, compares eight options, from manual checks to enterprise platforms, and walks through the steps from choosing competitors to calculating the index. ScrapeWise, which publishes this blog, is one of the options there. It collects competitor prices on a daily schedule and matches them to your product list by EAN, title, brand, size and picture. Matching is priced at €0.15 per 1,000 products for text and EAN and €1.50 per 1,000 for pictures (minimum €1 a run). The charge is live in the wallet: a run reserves the most it can cost and settles to what it actually used (November 2026). It delivers a table rather than a finished index, so you keep control of the formula and the weights. If you want an index calculated for you, check whether a tool's comparison reports include one and which way round its formula runs.

If you are still weighing up the budget, our breakdown of competitor price monitoring costs compares the pricing models.

What should you do next?

Start small. Pick one category, your top 20 products by revenue and the two or three competitors your customers actually compare you with. Build the weighted index once by hand, using the steps above, and write down the formula direction and the coverage. That gives you a baseline in an afternoon.

Then decide how to keep it fresh. You can check a few products right now with the free competitor price checker, or set up regular competitor price tracking. If you want the numbers without the copy-paste, upload your product list and competitor URLs to ScrapeWise and get a matched price table back: the first 5 requests are free, no card needed.

Paste a competitor URL and start tracking prices

The shops you name, as a structured table once a day at most. No code, pay per page, the first 5 requests are free.

Not ready to sign up? See 40 rows of real Google Shopping price data →

5 free requests no credit card · pay per page, no monthly plan · book a 15-min call →

FAQ

Frequently asked questions

Price index formula - how to calculate your price position against competitors

Divide your price by the competitor's price and multiply by 100. A product you sell for €119 that a competitor sells for €109 has an index of 109.2, so you are 9.2% more expensive. Some tools, such as Competera, Prisync and Pricefy, put the competitor's price on top instead, so above 100 means you are cheaper. Check which way round a report runs before you compare numbers.

An index of 100 means price parity: you charge the same as the competitor or the market average. Above 100 you are more expensive, below 100 you are cheaper, when your price is on top of the formula. Many retailers treat 95 to 105 as parity. Dealavo and PriceShape both describe that band, and only categories outside it get a closer look.

Calculate an index for each product, multiply each one by that product's revenue or units, add the results and divide by total revenue or units. This makes best sellers count more than slow movers. In our example with five products, the simple index against one competitor was 106.4 and the revenue-weighted index was 103.1, because the product with the biggest price gap sold the least.

Leave them out of that competitor's index rather than filling the gap with zero or an estimate. Then report coverage next to the index: the share of your revenue the index is based on. An index of 99.2 at 90% coverage is far more reliable than the same number at 30% coverage. A sudden drop in coverage usually points to a matching problem.

Use prices including VAT for consumer shops, as EU rules define the selling price as the final price including VAT and all other taxes. Convert B2B prices shown without VAT first. Track shipping as a second, delivered-price index. Comparison sites such as Prisjakt show prices excluding shipping by default, but for cheap items a delivery fee can turn price parity into a large gap.