Price Volume Mix (PVM) for Gross Margin Variance Analysis

I have covered Price Volume Mix (PVM) analysis for Revenue Variance in the earlier article. I recommend that you take a look at it first because PVM for Revenue variance analysis is much easier to understand as there are fewer moving parts to think about in the calculations.

Assuming that you are now well versed in the PVM for Revenue analysis, let’s jump in to PVM for Gross Margin analysis. Again, I will save you a lot of reading time by having only the essentials of the material in this post and coving most of the content in a YouTube video.

I mentioned before that PVM for Gross Margin is a lot more complicated than PVM for Revenue. The reason it is more complicated is because Revenue is a result of two variables, Volume and Price, whereas to do a similar analysis for Gross Margin we also have to account for Unit Cost.

Let us start with basic definitions and assumptions. Let us say that we will be analyzing Gross Margin This Year (or Actual) and comparing it to Gross Margin Last Year (or Target)

GMTY – Gross Margin This Year
GMLY – Gross Margin Last Year
RTY – Revenue This Year
RLY – Revenue Last Year
COGSTY – Cost of Goods Sold This Year
COGSLY – Cost of Goods Last Year
VTY – Volume This Year
VLY – Volume Last Year
PTY – Price This Year
PLY – Price Last Year
CTY – Unit Cost This Year
CLY – Unit Cost Last Year

Our goal is to arrive at a formula where Gross Margin variance (RTY – RLY) (I will explain all buckets of the PVM in my video) is represented by

GMTY – GMLY = PriceImpact + VolumeImpact + MixImpact

In addition, our goal is to implement the calculation in such a way that the PriceImpact of the Revenue PVM is the same as PriceImpact in the Gross Margin PVM.

Let us begin!




if     ΔP = PTY – PLY (change in price) and ΔV = VTY – VLY (change in volume) and ΔC = CTY – CLY (change in unit cost)

then    GMTY – GMLY = (PLY + ΔP)*(VLY + ΔV) – (CLY + ΔC)*(VLY + ΔV) – (PLY*VLY – CLY*VLY)


items in RED cancel each other out

so    GMTY – GMLY = ΔP*VLY

or     GMTY – GMLY = ΔP*VLY + ΔV*(PLY– CLY) + ΔV*(ΔP – ΔC)ΔC*VLY

From the formula above, we can now define our Gross Margin PVM calculations as the following:






= ΔV*(ΔP – ΔC) – ΔC*VLY

13 thoughts on “Price Volume Mix (PVM) for Gross Margin Variance Analysis

  1. Hi, thank you for this interesting article.

    Is there any chance you could share with us an example power bi file?

    Thank you so much!

    Kind regards,

    1. I am working on a very comprehensive tutorial with a sample file to cover two ways of implementing PVM for Revenue and Gross Margin. Unfortunately, I am not moving as fast as I would like, but I am hoping to finish it in the next couple of weeks, so you will be able to look in the file and see all the logic there

  2. Hi biZ-i!

    First of all thank you for sharing your knowledge! I am struggling with a mix calculation were I don’t have a variation in Cost or Price but yes in volume and mix. With the formula that you are using if my variation in price and cost are =0 the result of the mix impact will be 0 but the mix may be indeed changing and generating an impact. how can I calculate this impact in this situation?

    Thanks a lot for your time and effort!


  3. This is great! How do we calculate volume and Price impact for a single product Year on year. There is no mix impact there.

  4. Great explanation and good model to work with. However, I’m used to showing the cost/price squeeze, i.e. the company’s capability to pass on any purchase cost variances to their customers. On the margin PVM walk I would therefore show the net of your price impact and (part of) the mix element.

    The cost/price squeeze would then show as (ΔP-ΔC)*VLY, whilst your mix is ΔV*(ΔP – ΔC).

Leave a Reply to A.B. Cancel reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s