Revenue Analytics

Ecommerce revenue and margin analytics

Read store revenue and margin together by defining eligible orders, discounts, reversals, cost coverage and reporting dates.

Revenue shows what the store sold under a stated reporting rule. Margin shows what remains after specified costs. To use either figure for a trading decision, define the eligible orders, trace discounts and reversals, and show which costs the calculation covers.

Build a sales-to-margin view

MeasureWhat it showsDefinition to display
Gross product salesProduct value before recorded discounts and reversalsIncluded orders, selling prices, quantities and currency
Net product salesProduct value after those adjustmentsDiscount and product-value reversal rules, with a reporting cut-off
Gross profitNet product sales less assigned product costCost coverage and returned-stock treatment
ContributionWhat remains after further costs chosen for the decisionEvery included cost and material exclusion

Keep customer-paid delivery, tax, duties and fees separate from product sales unless the measure’s label and formula expressly include them. Shopify defines gross sales as product price times quantity before taxes, shipping, discounts and sales reversals. Clearly label the sales measure used for margin, including its treatment of discounts and reversals.

Shopify sales reports include pending, unpaid and cancelled orders, and exclude test and deleted orders. A decision about paid orders therefore needs its own qualifying-order view.

Gross Sales vs Net Sales vs Gross Profit: Key Definitions for Ecommerce Analytics

Gross Product Sales
Product value before discounts and reversals
Net Product Sales
Gross sales after discounts and product-value reversals
Gross Profit
Net product sales minus assigned product cost

Steps to Build a Reliable Sales-to-Margin View for Australian Ecommerce Businesses

  1. Define eligible ordersExclude test, deleted, pending, unpaid and cancelled orders; include only paid orders
  2. Apply discount and reversal rulesUse consistent rules for discounts and product-value reversals; apply reporting cut-off
  3. Assign product cost correctlyEnsure cost per item is recorded in Shopify for each product or variant
  4. Deduct relevant variable costsInclude fulfilment, payment processing, return handling; exclude advertising unless allocated
  5. Label all measures clearlySpecify treatment of shipping, tax, duties and fees in the measure’s definition

Choose the time view

A trading-period report shows sales on their sale dates and reversals when processed. It explains what posted in a particular week, although a return that week may relate to an older order.

An order-cohort view starts with orders placed in a chosen period and follows their adjustments through a stated cut-off. Use it to assess what that group of orders retained.

Show the order period, adjustment cut-off, reporting time zone and extraction date. Mark recent cohorts provisional while further changes can arrive. If a source field already includes a reversal, do not deduct it again.

Keep the report’s refresh point distinct from its trading-period cut-off. Shopify sales reports can be refreshed to show newer data; two extracts for the same period may differ if one was refreshed later. Retain the extraction time with the report used for a decision.

Order-Cohort Tracking: From Placement to Adjustment Cut-Off

Reporting Time Zone
Australia Eastern Standard Time (AEST) or AEDT
Provisional Status
Mark recent cohorts as provisional until adjustments are finalised

Add costs with their coverage visible

Product cost supports gross profit. For contribution, deduct the further costs relevant to the decision, such as fulfilment, payment processing and return handling, where reliable records exist. State whether customer-paid delivery is included and how shipping expense is assigned. Include advertising spend only under an explicit allocation rule suited to the question.

A returned item may go back into saleable stock or leave an unrecoverable cost. Record its actual inventory treatment rather than assigning the same cost outcome to every return. Missing cost is unknown, not zero. Shopify’s gross-profit-by-product reports cover only products or variants with cost recorded when sold, so their net-sales coverage can differ from a sales report.

Add operational context to the measures

Pair financial totals with order volume and units per transaction. Shopify defines orders as the number placed on a given date, and units per transaction as net quantity divided by total orders. These measures help distinguish a change in order volume from a change in units sold per order.

Shopify sales reports can show information over time and by sales channel, as well as by product. Choose a breakdown that matches the decision, and apply the same reporting period and qualifying-order rules to each comparison so that a shift in the mix is not mistaken for a change in overall store performance.

Critical Data Points for Reliable Margin Reporting in Australia

Order Volume
Number of orders placed on a given date (Shopify)
Units per Transaction
Net quantity divided by total orders (Shopify)
GST Treatment
Excluded from product sales unless explicitly included

Maintain cost inputs and define their basis

A store-level margin view depends on cost inputs being present when sales occur. In Shopify, cost per item can be entered from a product’s page by opening the Price section, entering a value in Cost per item, and saving the product. Check that the relevant products and variants have a recorded cost before relying on profit-report coverage.

Shopify describes cost per item as the cost of the product or variant. For a resold item, its example is the amount paid to the manufacturer, excluding taxes, shipping and other costs; for a product made by the store, the value can be based on labour and material costs. State which basis is used so that the product-cost layer has a consistent interpretation.

Market reporting can expose costs that a single store-wide total hides. Shopify’s Average profit margin by market report includes customer product and shipping charges, duties and import taxes, alongside the store’s product costs, shipping costs, duties and import taxes. Use such a view when comparing domestic and international market performance, while keeping its included components clear.

Pros and Cons of Using Shopify's Default Profit Reports for Australian Ecommerce

  • ProsAutomated cost tracking for products with recorded cost; includes market-specific data like import taxes
  • ConsOnly covers products with cost entered in Shopify; missing cost = unknown, not zero; may not reflect actual inventory treatment of returns

Read the movement

Compare sales and margins for the same eligible population. If gross sales rise while contribution falls, inspect discount depth, product mix, reversals and variable costs before changing an offer. Show order count, units, retained product sales and cost coverage alongside any margin percentage. A percentage without its sales base can make a small group look more important than it is.

State the profit layer and sales base used to calculate margin percentage, multiplying the ratio by 100. For gross margin, use gross profit divided by net sales. Keep the denominator consistent across comparisons.

End the review with a bounded decision. Identify which orders or products need investigation, what change is being considered, and which outstanding adjustments or missing costs could change that choice.

In this guide

  1. Gross revenue versus net sales in store reportsUnderstand how gross product sales become net sales, with checks for discounts, reversals, tax, delivery, order status and dates.
  2. Reporting contribution after discounts and returnsCalculate contribution from retained product sales, product cost and other variable costs while showing return treatment and missing-cost coverage.
  3. Reconciling analytics revenue with store ordersReconcile GA4 purchase value with store orders by aligning the order population, revenue metric, discounts, refunds, currency and dates.

More from Revenue Analytics