Price Volume Mix (PVM) for Revenue Variance Analysis

EDIT 2021-01-12: the latest post and a video on how to calculate a perfect PVM is available here: DAX for the Perfect Price Volume Mix (PVM) Calculation (Power BI Tutorial)

EDIT: the most recent post about this topic (and a video) can be found here:

The first time I covered PVM for Revenue analysis, I focused more on the implementation side of things. In this post, I am going to take a deeper dive into the background for the calculation. Instead of me typing pages and pages of theory, I have decided that I will just put the essential notes here for those who would want to analyze the math behind the PVM formulas.

I have also written an article on how to calculate PVM for Gross Margin here:

I will go over the background, value, and consideration about PVM in my YouTube video.

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

RTY – Revenue This Year
RLY – Revenue Last Year
VTY – Volume This Year
VLY – Volume Last Year
PTY – Price This Year
PLY – Price Last Year

Our goal is to arrive at this formula where Revenue variance (RTY – RLY) (I will explain all buckets of the PVM in my video)

RTY – RLY = PriceImpact + VolumeImpact + MixImpact

if        RTY = PTY*VTY

and     RLY = PLY*VLY

then   RTY – RLY = PTY*VTY – PLY*VLY

if        ΔP = PTY – PLY (change in price) and ΔV = VTY – VLY (change in volume)

then   RTY – RLY = (PLY + ΔP)*(VLY + ΔV) – PLY*VLY = PLY*VLY + PLY*ΔV + ΔP*VLY + ΔP*ΔV – PLY*VLY

or        RTY – RLY = PLY*ΔV + ΔP*VLY + ΔP*ΔV

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







8 thoughts on “Price Volume Mix (PVM) for Revenue Variance Analysis

  1. Hi,

    Thank you for sharing your ideas and thoughts. I have read all your articles and seen your videos’ on PVM. I am trying do the same for my company albeit in power pivot. I have tried to adapt your model and have been successful. I am trying to bring about a pivot table wherein user can pull any of the attribute of Product and/or customer to view the cause of variance in that context However, i have two issues :

    1. the pivot table is not adding up all variances it instead picks up the first variance and puts in the total.

    2. when i pull in the attributes the pivot tables the values like price , volume , sales etc repeat across the attribute.

    i was thinking of bringing about one row for each attribute and show the PVM in columns adding up to diff in sales

    I would like to thank you for makin it so simple . we have made several attempts to do this in Excel and we have given up each time.

    Best Regards


  2. 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,

  3. I think that your explanation for mix is not correct. Mix in this matematical definition is not the product mix, it is the conjugate of price and volume, i.e., the volume increase times the price increase. That means you will have a mix component even if you have only one product.

    1. You are not wrong but you are also only partially right… It depends on how we define Mix… I am working on a comprehensive video to compare and contrast several different ways to calculate PVM.. Please stay tuned…

  4. If there are no sales in the current period, i.e. a discontinued item, how would the formulas change. Based on strict formulas we would have an unfavorable price variance and a favorable mix variance

Leave a 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