Plan vs actual for a Shopify store, in four numbers
Plan your Shopify store's sales as orders times average order value, then read the actual orders and Net Sales for the same days. Those four numbers split the gap between plan and actual into a volume effect and an order-value effect that add up to it exactly.
Plan in drivers: orders times average order value
A plan written as one sales total can only tell you that you missed. A plan written as orders and average order value (AOV) tells you which one moved. Our reasoning on the definition: use Net Sales divided by orders for both plan and actual, so the two averages measure the same thing. What Net Sales leaves out is on gross vs net sales.
Actuals for the same days, in the shop timezone
Read orders and Net Sales from Shopify's sales reports for exactly the plan's dates. Shopify says its Total sales over time report displays the number of orders and the total sales you've made over time, and it has an Average order value over time report; our reasoning is to divide Net Sales by orders yourself, so the actual average is defined exactly as the plan's was.
Keep the day boundaries the same as your Shopify reports. A spreadsheet or app that cuts days at a different midnight moves evening orders across the line, and that move shows up as a variance. How to spot it, with a worked example, is on the timezone cause.
Source: Shopify Help Center: Sales reports
Split the gap into volume and order value (SAMPLE NUMBERS)
| Line | Orders | AOV | Net Sales |
|---|---|---|---|
| Plan | 2,000 | $90 | $180,000 |
| Actual | 2,150 | $82 | $176,300 |
| Variance, actual minus plan | 150 | -$8 | -$3,700 |
| Volume: 150 orders at the plan's $90 | +$13,500 | ||
| Order value: -$8 across 2,150 actual orders | -$17,200 | ||
| Left unexplained | $0 |
SAMPLE NUMBERS, not a store's figures. Volume plus order value is -$3,700, the variance to the dollar.
Read the sample this way: the store beat plan on orders and still missed on sales, because each order was worth less. The headline -$3,700 hides a +$13,500 win and a -$17,200 problem.
Which variances to act on
- The larger effect first. In the sample, order value moved more dollars than volume, so that is where to look: discounts, product mix, or a free-shipping threshold that pulled order value down.
- Effects that repeat. Our reasoning: one month's miss can be timing; the same sign two or three periods running is the plan being wrong or the store changing.
- Not the ones a date cut made. Check the timezone and the date range before acting on a small variance at a period edge.
Re-forecast the quarter
Keep the plan you were measured against and add a forecast beside it: the weeks already closed at their actual orders and AOV, the weeks left at your best current read of each. Our reasoning: change the driver that moved, not the total, so next month's split still tells you which one it was. The habits that make a number hold up when someone checks it are on defensible numbers.
What ProfitRoot costs is on pricing; if you keep the books or the plan for several stores, see partners.
Common questions
How do I compare plan vs actual in Shopify?
Write the plan as orders times average order value for each period. For the same dates, read orders and Net Sales from Shopify's sales reports and divide Net Sales by orders for the actual average. Compare orders with orders and average with average, not only the totals.
What is a volume variance?
The extra (or missing) orders priced at the planned average order value. In the sample on this page, 150 more orders than plan at $90 is +$13,500.
What is an average order value variance?
The change in average order value across the orders you actually got. In the sample, -$8 an order across 2,150 orders is -$17,200.
Why do the two effects add up exactly?
Because volume is priced at the plan's average and the order-value change is counted on the actual orders. Done that way there is no leftover cross term; price both at the same average and the parts no longer sum to the gap.
Which date range should actuals use?
The same days as the plan, with the same day boundaries as your Shopify reports. A tool that cuts days at a different midnight can move an evening order into the next day or week, which shows up as a variance that is not one.
What this does not tell you
This splits sales only. A plan that also covers margin needs cost per item, fees and ad spend for the same days, and a variance in margin can move in the other direction from a variance in sales.
The method on this page is our reasoning, not a Shopify statement. The worked example uses SAMPLE NUMBERS, not a store's figures.
Install ProfitRoot and see these steps on your own orders.
Install free from the Shopify App StoreOrders synced from a connected Shopify store are transmitted to and stored on our servers so they can be recomputed on later visits.
Sources last checked 2026-11-13.