{"id":39,"date":"2026-06-09T09:00:00","date_gmt":"2026-06-09T09:00:00","guid":{"rendered":"https:\/\/saletides.com\/blog\/?p=39"},"modified":"2026-06-14T10:51:46","modified_gmt":"2026-06-14T10:51:46","slug":"gross-vs-net-revenue-why-your-woocommerce-sales-reports-might-be-lying-to-you","status":"publish","type":"post","link":"https:\/\/saletides.com\/blog\/gross-vs-net-revenue-why-your-woocommerce-sales-reports-might-be-lying-to-you\/","title":{"rendered":"Gross vs Net Revenue: Why Your WooCommerce Sales Reports Might Be Lying to You"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\">The Number on Your Dashboard Isn&#8217;t the Number in Your Bank Account<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Open the default WooCommerce Analytics overview and the headline figure you&#8217;ll see is gross revenue \u2014 the total value of completed orders, before anything is taken back out. It&#8217;s a real number, but it isn&#8217;t the one that tells you how your business is actually doing.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Net revenue subtracts what gross revenue leaves out:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Net Revenue = Gross Revenue \u2212 Refunds \u2212 Discounts \u2212 Fees<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">For most stores, the gap between the two isn&#8217;t trivial \u2014 and it tends to widen exactly when you&#8217;re running promotions, which is when you most need an accurate picture.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">A Worked Example<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Say your store does $50,000 in gross revenue this month. During the same period:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>$2,500 in refunds (5% refund rate)<\/li>\n<li>$4,000 in coupon discounts from a promotion<\/li>\n<li>$1,500 in payment processing fees<\/li>\n<\/ul>\n\n\n\n<pre class=\"wp-block-code\"><code>Net Revenue = $50,000 \u2212 $2,500 \u2212 $4,000 \u2212 $1,500 = $42,000<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">That&#8217;s a 16% gap between the headline number and what actually lands in the business. If you&#8217;re making decisions \u2014 about ad spend, inventory, or hiring \u2014 based on the $50,000 figure, you&#8217;re working with a number that&#8217;s 16% too optimistic.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Why This Matters Most During Promotions<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Discounts and refunds both tend to spike during and after sales events \u2014 discounts because that&#8217;s the point of the promotion, and refunds because higher order volume (and sometimes impulse purchases) brings a higher return rate a few weeks later.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">This creates a common trap: a promotion looks like a huge win in gross revenue the week it runs, then looks much more modest \u2014 or even unprofitable \u2014 once the discounts are accounted for and the post-promotion refunds come in. If you only look at gross revenue in the days immediately after a campaign, you&#8217;ll consistently overestimate how well it performed.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Net Revenue vs Profit \u2014 Don&#8217;t Confuse the Two<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Net revenue still isn&#8217;t profit. It doesn&#8217;t account for the cost of goods sold, shipping costs you absorb, advertising spend, or overhead. But it&#8217;s the necessary middle step \u2014 you can&#8217;t calculate a meaningful margin on top of a gross revenue figure that already overstates what you actually received.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Think of it as three layers: gross revenue (what customers were charged), net revenue (what you actually kept after refunds, discounts, and fees), and profit (net revenue minus your costs). Each layer answers a different question \u2014 and confusing them leads to decisions based on the wrong one.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">What to Track Alongside Net Revenue<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Refund rate by product and category:<\/strong> A single product with an unusually high refund rate can quietly drag down net revenue across the whole store<\/li>\n<li><strong>Discount rate as a percentage of gross revenue:<\/strong> Tracks whether promotions are becoming more aggressive over time, which compresses margin even if gross revenue looks healthy<\/li>\n<li><strong>Net revenue trend, not just the monthly total:<\/strong> A rising gross revenue with a flattening net revenue is an early signal that refunds or discounting are eating into growth<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Seeing Gross and Net Side by Side with SaleTides<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">SaleTides shows gross revenue, refunds, discounts, and net revenue together on every report \u2014 broken down by date range, product, and category \u2014 so you can see the real financial impact of a promotion as soon as the data comes in, not weeks later when the refunds have already landed.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><a href=\"https:\/\/saletides.com\/woocommerce-sales-reports\">See SaleTides sales reports \u2192<\/a><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Key Takeaways<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Net Revenue = Gross Revenue \u2212 Refunds \u2212 Discounts \u2212 Fees<\/li>\n<li>WooCommerce&#8217;s default reports lead with gross revenue, which can overstate performance<\/li>\n<li>The gap between gross and net widens during and after promotions<\/li>\n<li>Net revenue still isn&#8217;t profit \u2014 it&#8217;s the step before calculating margin<\/li>\n<li>Track refund rate and discount rate as percentages, not just totals, to catch margin erosion early<\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>The Number on Your Dashboard Isn&#8217;t the Number in Your Bank Account Open the default WooCommerce Analytics overview and the headline figure you&#8217;ll see is\u2026<\/p>\n","protected":false},"author":1,"featured_media":44,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4,2],"tags":[22,23,25,24],"class_list":["post-39","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-ecommerce-growth","category-woocommerce-analytics","tag-gross-revenue","tag-net-revenue","tag-refunds","tag-woocommerce-sales-reports"],"_links":{"self":[{"href":"https:\/\/saletides.com\/blog\/wp-json\/wp\/v2\/posts\/39","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/saletides.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/saletides.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/saletides.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/saletides.com\/blog\/wp-json\/wp\/v2\/comments?post=39"}],"version-history":[{"count":1,"href":"https:\/\/saletides.com\/blog\/wp-json\/wp\/v2\/posts\/39\/revisions"}],"predecessor-version":[{"id":49,"href":"https:\/\/saletides.com\/blog\/wp-json\/wp\/v2\/posts\/39\/revisions\/49"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/saletides.com\/blog\/wp-json\/wp\/v2\/media\/44"}],"wp:attachment":[{"href":"https:\/\/saletides.com\/blog\/wp-json\/wp\/v2\/media?parent=39"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/saletides.com\/blog\/wp-json\/wp\/v2\/categories?post=39"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/saletides.com\/blog\/wp-json\/wp\/v2\/tags?post=39"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}