Home / Blog / Net Sales vs Gross Sales
How-to · 2026

Net Sales vs Gross Sales in Shopify

Four numbers, one word, and a finance team that never agrees with the dashboard. What each figure includes, which one belongs in which conversation, and the two places the difference comes from.

By · Published August 20, 2026 · 8 min read

Ask three people at a store what they sold last month and you can get three answers, all correct. Shopify reports gross sales, net sales and total sales; finance has a fourth figure; and the differences between them are entirely explicable and almost never explained.

The four numbers

Gross sales   sum of line totals, before anything
Discounts     line-level and order-level, both
Refunds       returns, at whatever date you chose
Net sales     gross sales − discounts − refunds
Total sales   net sales + shipping (+ tax, depending on the report)

Gross sales measures demand: what customers put in baskets at list price. Net sales measures revenue kept from goods. Total sales measures money that arrived, including the shipping you charged and often the tax you collected on someone else behalf.

They are useful for different things. Gross sales is the right number for asking whether the catalogue is selling. Net sales is the right number for margin work. Total sales is the wrong number for almost everything except reconciling a bank deposit, and it is the one that most often ends up on a dashboard because it is the biggest.

Discounts arrive in two shapes

Line-level discounts sit on the line: a product marked down 15%. Order-level discounts sit on the order: a code taking 20 off the basket. The total is unaffected by which is which — until you want a breakdown by product, at which point the order-level ones have no product to attach to.

The fix is allocation, in proportion to each line share of that order revenue. Worth doing carefully, and there is a full walkthrough of the trap in the contribution margin piece: allocating by share of the month total gives an identical grand figure and a wrong answer per category.

Refunds, and the month they belong to

An order in January, refunded in February. Two defensible treatments:

Accountants generally want the second. Anyone measuring whether a product line sells well generally wants the first, because a product with a 30% return rate should not look successful in the month it shipped. There is a fuller treatment in attributing refunds to the right month.

The failure is not choosing either one. A report that buckets refunds by refund date and sales by order date, without saying so, produces months that do not reconcile against themselves and no visible reason why.

From twenty-five years of watching this argument

Every one of these disagreements I have sat through was resolved the same way: someone finally asked which report each figure came from. Not once was anybody calculating anything wrongly. They were quoting different reports, under the same word, in the same meeting.

The fix that works is boring. Pick one figure, write its definition in one sentence, and put that sentence where the number is displayed. “Net sales: line totals less discounts and refunds, excludes shipping and tax, refunds in the month of the order.” Twenty-two words, and it ends the argument permanently.

Doing it in Excel

With lines in Lines, orders in Orders and refunds in Refunds:

Gross sales   =SUM(Lines[Line total])
Discounts     =SUM(Lines[Discount])+SUM(Orders[Discount])
Refunds       =SUM(Refunds[Amount])
Net sales     =B1-B2-B3

Monthly, add an order-date month column with =EOMONTH([@[Order date]],0) and switch to SUMIFS. For refunds by order month rather than refund month, the refund rows need the order date joined on first — which is the entire difficulty, and the reason most workbooks quietly use the refund date.

If your export has no line detail

Plenty of stores can only export at order level: one row per order, with a subtotal and a discount, and no product breakdown at all. Net sales still works — subtotal less discounts less refunds — and every product-level question becomes impossible, not harder.

That is worth knowing before you plan a month of analysis around a file that cannot support it. If you need margin by product, the line-item export is not optional, and neither is a per-variant cost list.

One figure, whoever asks

Quiriz for e-commerce defines net sales once — line totals less discounts less refunds, shipping and tax excluded — so the same sentence returns the same number for everyone. In Excel that is =QUIRIZ.ASK("net sales by month in 2025", "table").

Net sales and net revenue are the same figure under two names here, deliberately, rather than two subtly different ones. Where the export is order-level only, the figure still computes and the product breakdown declines with a reason rather than returning something plausible.

The honest boundary: this will not match your accountant, and it is not trying to. Revenue recognition, deferred shipping revenue and the treatment of tax are accounting decisions we do not make for you.

If your dashboard and your finance figure disagree, check shipping first. It is in total sales, it is not in net sales, and it accounts for more of these arguments than every other cause combined.

Get one sales figure everyone agrees on

Upload your Shopify export and ask for net sales by month, with the definition attached to the answer. Free to start.

Try Quiriz free →

Frequently asked questions

What is the difference between gross sales and net sales in Shopify?
Gross sales is the sum of line totals before discounts, refunds, shipping and tax — it measures demand. Net sales subtracts discounts and refunds, and measures revenue you actually kept from the goods. The gap between them is not overhead: it is entirely money customers were charged less, or given back.
Does net sales include shipping and tax?
Normally no. Net sales is a product-revenue figure, and shipping and tax are collected alongside it rather than being part of it. Shopify total sales does include shipping, which is the single most common reason a dashboard figure does not match the one finance is using. If your net sales includes either, the important thing is that the label says so.
Why does my Shopify net sales not match my accountant figure?
Usually a timing difference and a scope difference at once. Timing: your accountant recognises revenue by invoice or fulfilment date, the store reports by order date, and refunds may be booked in the month issued rather than the month sold. Scope: pending, unfulfilled, cancelled and test orders may be in one population and not the other. Neither figure is wrong, and no tool reconciles them for you — the two populations have to be agreed first.
Is net sales the same as net revenue?
In most store reporting, yes — the two names describe the same calculation, and a business that uses both usually has one figure with two labels rather than two figures. It is worth checking, though: some teams use net revenue to mean net sales after payment-processing fees, which is a third number again. If two reports carry the two names, confirm they hold the same value before assuming which is which.
How do I split an order-level discount across products?
Spread it across that order own lines in proportion to each line share of the order revenue. A 20 discount on a 60 and a 40 line puts 12 on the first and 8 on the second. Allocating by share of the month total instead reconciles to the same grand total and is wrong for every individual category, which is why it survives most checks.