---
title: "Purchase Price Variance (PPV): Formula, Examples and Journal Entries"
description: "Purchase price variance (PPV) is actual price minus standard price, times quantity bought. Formula, worked example, journal entries and causes."
canonical: https://luckpanda.app/blog/purchase-price-variance
author: "Dhrumil Barot"
author_bio: "Dhrumil is a small-business operations and compliance expert. Dhrumil built LuckPanda so small businesses can run invoicing, inventory, accounts and compliance in one place."
published: 2026-10-27
updated: 2026-10-27
category: "Purchasing and inventory"
keywords: "purchase price variance"
language: en
---

# Purchase Price Variance (PPV): Formula, Examples and Journal Entries

Purchase price variance is (actual price - standard price) x quantity bought. Formula, worked example, journal entries, causes and the FX split.

By [Dhrumil Barot](https://luckpanda.app/about#founder), Founder. Published 27 Oct 2026. Updated 27 Oct 2026. 7 min read.

**TL;DR:** Purchase price variance (PPV) is the difference between what you actually paid for purchased items and the standard (planned) price, multiplied by the quantity you bought: PPV = (Actual price - Standard price) x Actual quantity. A positive PPV is unfavourable (you paid more than planned); a negative PPV is favourable. It is recorded when goods are received or invoiced, and it tells purchasing and finance how supplier prices are moving against the budget.

Purchase price variance (PPV) is a cost accounting measure that shows how far the actual purchase price of an item differs from its standard price, in money, for the quantity purchased. If you planned to pay $14.00 a unit, bought 500 units and paid $15.00, your PPV is (15.00 - 14.00) x 500 = $500 unfavourable. Companies that value inventory at standard cost post this difference to a separate PPV (or price difference) account, so inventory stays at standard and the variance is visible on its own line. The abbreviation PPV also means pay-per-view or positive predictive value; this guide is about purchasing.

## What is purchase price variance and its formula?

Purchase price variance is the gap between the actual unit price and the standard unit price, multiplied by the actual quantity bought. The standard price is the price the business expects to pay for a given quality, order size and delivery speed, usually set once a year in the budget.

Three inputs drive it:

- **Actual price:** the net unit price on the purchase order or the supplier invoice, after trade discounts.
- **Standard price:** the planned cost held on the item record. Sage Intacct defines it as "a fixed amount that's assigned to an item-warehouse combination" ([Sage Intacct help](https://www-p504.intacct.com/ia/docs/en_US/help_action/Purchasing/Purchasing_reports/purchase-price-variance.htm)).
- **Actual quantity:** the units purchased or received, not the units used in production.

PPV is mainly a manufacturing and distribution metric, because these businesses carry stock at standard cost. Material purchases can be the largest single cost for a manufacturer, so a few percent of price movement changes gross margin noticeably.

The formula is:

\`\`` PPV = (Actual price - Standard price) x Actual quantity `\`\`

Read the sign this way:

| Result | Meaning | Label |
| --- | --- | --- |
| Positive (for example +$500) | Paid more than planned | Unfavourable |
| Negative (for example -$300) | Paid less than planned | Favourable |
| Zero | Paid exactly the standard | No variance |

Sage Intacct's documentation states the same rule: "A positive variance means you are paying more than planned... A negative variance means you are paying less than planned" ([Sage Intacct help](https://www-p504.intacct.com/ia/docs/en_US/help_action/Purchasing/Purchasing_reports/purchase-price-variance.htm)).

A forward-looking version uses forecasts instead of actuals: Forecast PPV = (Forecast price - Standard price) x Forecast quantity. Finance teams use it to warn about margin pressure before the purchases happen.

!\[PPV formula inputs and the resulting favourable or unfavourable variance\](diagram: {"kind": "tables", "tables": \[{"title": "Inputs", "columns": \["Field", "Value"\], "rows": \[\["Standard price", "$14.00"\], \["Actual price", "$15.00"\], \["Quantity bought", "500"\]\]}, {"title": "Result", "columns": \["Step", "Value"\], "rows": \[\["Price gap", "$1.00"\], \["x Quantity", "500"\], \["PPV", "$500 unfavourable"\]\], "highlight": \[2\]}\], "arrows": \["(Actual - Standard) x Qty"\], "note": "A positive PPV means the business paid more than planned."})

## How do you calculate PPV? A worked example

Here is a full example with three purchase orders for one item, a steel bracket with a standard price of $4.20.

| PO | Quantity | Actual unit price | Price gap | PPV |
| --- | ---: | ---: | ---: | --- |
| PO-1041 | 2,000 | $4.10 | -$0.10 | -$200.00 (favourable) |
| PO-1057 | 1,500 | $4.45 | +$0.25 | +$375.00 (unfavourable) |
| PO-1063 (rush, air freight added to price) | 400 | $4.95 | +$0.75 | +$300.00 (unfavourable) |
| Total | 3,900 |  |  | +$475.00 (unfavourable) |

Steps:

1. Take the net unit price from each PO or invoice.
2. Subtract the standard price ($4.20).
3. Multiply by the quantity on that line.
4. Add the lines. The net PPV for the period is +$475.00, so the business paid $475.00 more than its standard for these 3,900 brackets.

As a percentage of standard spend: $475.00 / (3,900 x $4.20 = $16,380.00) = 2.9%. Reporting PPV as a percentage makes items with very different prices comparable.

Notice what the total hides: one supplier price was below standard, one was above, and a single rush order produced most of the overrun per unit. Always report PPV by line, supplier and cause, not just as one number.

## When is PPV recorded: at receipt or at invoice?

PPV is recorded at the point where inventory is first valued, which in most systems is the goods receipt.

- **At goods receipt (most common):** the stock account is debited at quantity x standard price; the difference from the PO price goes to the PPV account. SAP describes this for materials with standard price control: only "the value of the delivered quantity x standard price" is posted to the stock account and the difference from the net order price is posted to a price difference account ([SAP Help, posting price variances](https://help.sap.com/saphelp_46c/helpdata/en/a8/b994b2452b11d189430000e829fbbd/content.htm)). In SAP that line carries the transaction key PRD.
- **At invoice:** if the supplier invoices a different price from the PO, a second difference appears. Many companies call this the invoice price variance (IPV) and post it separately, because it points to a different problem: the supplier billed off-contract, or the PO price was wrong.

Sage Intacct's report offers both views: PO price against standard cost, and PO price against vendor invoice price ([Sage Intacct help](https://www-p504.intacct.com/ia/docs/en_US/help_action/Purchasing/Purchasing_reports/purchase-price-variance.htm)). The invoice comparison is the price leg of a three-way match between the PO, the [goods received record and the bill](https://luckpanda.app/blog/invoice-approval-process).

## Which journal entries record it?

The journal entries for PPV keep inventory at standard and isolate the difference. Using PO-1057 (1,500 units, standard $4.20, actual $4.45):

At goods receipt:

\`\`` Dr Inventory (raw materials)        6,300.00   (1,500 x 4.20) Dr Purchase price variance            375.00   (1,500 x 0.25) Cr GR/IR clearing (accrued AP)          6,675.00   (1,500 x 4.45) `\`\`

When the supplier invoice arrives at the PO price:

\`\`` Dr GR/IR clearing                   6,675.00 Cr Accounts payable                     6,675.00 `\`\`

For a favourable variance (PO-1041), the PPV line is a credit of $200.00 instead of a debit.

At period end, small PPV balances are usually expensed to cost of goods sold. Large ones are allocated between raw materials, work in progress, finished goods and COGS in proportion to where the purchased items sit, so that inventory still approximates actual cost. That last point is a reporting requirement, not a preference: IAS 2 and India's Ind AS 2 (paragraph 21) allow the standard cost method "for convenience if the results approximate cost", and say standards should be reviewed regularly and revised in light of current conditions ([IFRS, IAS 2 Inventories](https://www.ifrs.org/issued-standards/list-of-standards/ias-2-inventories/); [Ind AS 2 text](https://taxguru.in/chartered-accountant/indian-accounting-standard-ind-as-2.html)). A standard that produces a large PPV every month is no longer approximating cost and needs to be updated.

!\[Where a PPV lands in the ledger at goods receipt for PO-1057\](diagram: {"kind": "tables", "tables": \[{"title": "Goods receipt, PO-1057", "columns": \["Account", "Debit", "Credit"\], "rows": \[\["Inventory at standard", "6,300.00", ""\], \["Purchase price variance", "375.00", ""\], \["GR/IR clearing", "", "6,675.00"\]\], "highlight": \[1\]}\], "note": "Inventory stays at standard; the $375 overrun sits in its own account."})

## Why do actual prices drift from the standard?

Purchase price variance comes from either the price paid moving or the standard being wrong. The common causes:

| Cause | What happened | Usual fix |
| --- | --- | --- |
| Market price change | Commodity or input costs rose or fell (steel, resin, paper, fuel surcharges) | Update the standard; consider fixed-price or indexed contracts |
| Volume assumption | Standard assumed 10,000 units a year at a volume discount; you bought 8,000 and lost the discount | Set the standard at realistic volume |
| Rush orders | Expedited freight or a premium for short lead time | Better planning, safety stock, reorder points |
| New or changed supplier | Price structure not yet reflected in the standard | Revise the standard at switch-over |
| Off-contract buying | Someone bought from a non-approved supplier or ignored the agreed price | Enforce POs against approved vendor prices |
| Exchange rate | Supplier invoices in another currency and the rate moved | Book the FX part separately (see below) |
| Inventory layering | Actual cost pulled from a FIFO layer that differs from today's price | Know which cost the comparison uses |

AccountingTools gives a clean example of the volume trap: a standard of $5.00 set on 10,000 units, only 8,000 bought, discounts lost, $5.50 paid, so $0.50 x 8,000 = $4,000 unfavourable ([AccountingTools](https://www.accountingtools.com/articles/purchase-price-variance)). Nobody negotiated badly; the plan was wrong.

## How do exchange rates affect PPV?

Exchange rates create PPV whenever you buy in a foreign currency and the standard is held in your home currency. Split the variance so purchasing is judged only on what it controls.

Example: an Indian importer has a standard of ₹840 per unit, set when the supplier's price was $10.00 at ₹84.00 per dollar. The PO is placed at $9.80, and the goods are received when the rate is ₹86.50.

- Actual price in rupees: 9.80 x 86.50 = ₹847.70. Total PPV per unit: ₹7.70 unfavourable.
- Price effect (supplier price at the standard rate): (9.80 - 10.00) x 84.00 = -₹16.80 (favourable). Purchasing negotiated well.
- Currency effect (actual dollar price at the rate change): 9.80 x (86.50 - 84.00) = +₹24.50 (unfavourable). Treasury, not purchasing, owns this.

The two parts add up: -16.80 + 24.50 = ₹7.70. Without the split, the buyer who cut the dollar price would be blamed for a rupee move.

## PPV vs material price variance: what is the difference?

PPV and material price variance use the same price gap but a different quantity. PPV multiplies by the quantity **purchased**, so it is recognised when you buy. Material price variance (in many textbooks, direct materials price variance) multiplies by the quantity **used** in production, so it is recognised when material is consumed ([HighRadius](https://www.highradius.com/resources/Blog/price-variance/)).

|  | Purchase price variance | Material price variance | Material usage (quantity) variance |
| --- | --- | --- | --- |
| Measures | Price paid vs standard | Price paid vs standard | Quantity used vs standard quantity |
| Quantity basis | Units bought | Units used | Standard price x (actual - standard quantity) |
| Recognised | At purchase or receipt | At consumption | At consumption |
| Owner | Purchasing | Purchasing / production | Production |

If you buy 1,000 kg and use 700 kg in the month, PPV covers all 1,000 kg straight away, while material price variance covers only the 700 kg. Recognising variance at purchase is the more common choice, because it shows price problems a month or more earlier.

## How do small businesses track PPV without standard costing?

Most small businesses value stock at weighted average or FIFO cost, not standard cost, so there is no PPV account in their books. They can still track the same signal as a report:

1. Pick a reference price per item: the last price paid, the price in a quote or rate contract, or the average of the last quarter.
2. Compare every new PO or supplier bill against it: (new price - reference) x quantity.
3. Flag lines above a threshold, for example more than 3% or more than ₹5,000 / $100 per line.
4. Review the flags monthly by supplier and item, then renegotiate, re-quote, or update your selling prices.

The useful part is not the accounting entry; it is noticing that a supplier has raised prices by 6% across three orders before it eats the margin on everything you sell. Check what that does to your selling price with the [markup calculator](https://luckpanda.app/tools/markup-calculator), and how it flows into [cost of goods sold](https://luckpanda.app/blog/cogs-formula). If you already raise POs, a [blanket purchase order](https://luckpanda.app/blog/blanket-purchase-order) with agreed prices removes much of the variance at source.

In LuckPanda's [Purchasing module](https://luckpanda.app/modules/purchasing), vendors, purchase orders and bills sit on one record, so the PO price and the billed price for each item line can be compared without retyping anything.

## Questions

### Is a positive purchase price variance good or bad?

A positive PPV is unfavourable: you paid more than the standard price. A negative PPV is favourable. Some teams flip the sign in reports, so always check whether the report labels F or U.

### Is purchase price variance an expense?

PPV is posted to its own variance account. At period end, small balances are usually charged to cost of goods sold; larger ones are allocated across inventory and COGS so inventory approximates actual cost, as IAS 2 and Ind AS 2 require.

### Who is responsible for purchase price variance?

Purchasing usually owns PPV because it negotiates prices and chooses suppliers. Exchange rate effects, rush orders caused by poor planning and unrealistic standards set in the budget belong to treasury, planning and finance respectively, which is why splitting PPV by cause matters.

### Can a favourable PPV be a bad sign?

Yes. A low price can come from cheaper, lower-quality material, which then shows up as higher scrap, rework or returns (an unfavourable usage variance). Buying large quantities to win a discount also ties up cash in stock.

### What is a good PPV percentage?

There is no universal benchmark. Many finance teams treat anything within a small band (often 1 to 2% of standard spend) as noise and investigate items beyond it. A persistent variance in one direction means the standard needs revising.

### What is the difference between PPV and invoice price variance?

PPV compares the purchase price with the standard cost. Invoice price variance compares the supplier's invoice with the purchase order price, and is caught during invoice matching.

## More guides

- [EOQ Formula: Economic Order Quantity With Worked Examples](https://luckpanda.app/blog/eoq-formula)
- [COGS Formula: How to Calculate Cost of Goods Sold](https://luckpanda.app/blog/cogs-formula)
- [Cycle Counting: Methods, Schedule and How to Do It](https://luckpanda.app/blog/cycle-counting)

## Related tools

- [Markup calculator](https://luckpanda.app/tools/markup-calculator): Selling price from cost and markup, and the margin it gives.

## About the author

**Written by [Dhrumil Barot](https://luckpanda.app/about#founder)**, Founder. Dhrumil is a small-business operations and compliance expert. Dhrumil built LuckPanda so small businesses can run invoicing, inventory, accounts and compliance in one place. [LinkedIn](https://www.linkedin.com/in/bdhrumil) · [X](https://x.com/fyidhrumil)
