Reporting contribution after discounts and returns: Retained product sales = gross sales minus discounts and non-overlapping reversals; Contribution = retained sales less product cost, fulfilment, payment fees and return handling; Report contribution as A$ amount and % of retained sales with order count and cut-off date
Image: Ecommerce Insight Desk

Revenue Analytics

Part of Ecommerce revenue and margin analytics

Reporting contribution after discounts and returns

Calculate contribution from retained product sales, product cost and other variable costs while showing return treatment and missing-cost coverage.

To report contribution, start with retained sales for a defined group of orders. Deduct the product and other variable costs included in the decision, and show each deduction. Discounts reduce the selling amount; returns and other reversals can change what remains. A margin is incomplete when material costs are missing.

Fix the orders and adjustment window

Choose whether the report follows orders placed in a period or adjustments posted during it. For a product or offer decision, an order-cohort view is often easier to interpret: select qualifying order IDs and follow their discounts, cancellations, refunds and returns through a stated cut-off. Show the extraction date because later adjustments may still arrive.

Keep product sales separate from customer-paid delivery, tax and duties unless the chosen contribution definition includes them. If a source amount is already net of a reversal, do not subtract it again.

In Shopify sales reports, sales reversals are all order adjustments that result in negative monetary value. Adjustments include edits, exchanges or returns made after an order is created. For a product-sales calculation, do not deduct all negative adjustments indiscriminately; consider only the adjustments that relate to the product sales being measured.

Build the cost bridge

StepTreatment to document
Retained product salesSelling-price product value less recorded discounts and relevant, non-overlapping product-value reversals
Product costCost assigned to retained units plus any unrecoverable cost of returned goods under the inventory rule
Fulfilment and paymentVariable costs incurred, allowing for recoveries where supported
Return handlingAdditional postage, inspection or disposal costs supported by records
ContributionRetained sales less the included costs, with material exclusions listed

This is a management definition. Gross profit stops after product cost; contribution depends on which further costs the business includes. State whether shipping income is added and shipping expense deducted. Apply any advertising-cost allocation consistently and only when it suits the decision.

For a hypothetical order group, A$100 gross product sales minus A$10 discounts and A$20 separate product-value reversals leaves A$70 retained product sales.

Suppose A$28 is the correctly assigned product cost after accounting for returned stock, with A$9 fulfilment, A$3 payment fees and A$4 return handling. Contribution is A$26, or about 37% of retained product sales. These figures illustrate the calculation; they are not a store result or benchmark.

Calculating Contribution After Discounts and Returns

  1. Retained product salesSelling-price product value minus recorded discounts and relevant, non-overlapping product-value reversals
  2. Product costCost assigned to retained units plus unrecoverable cost of returned goods under inventory rule
  3. Fulfilment and paymentVariable costs incurred, allowing for recoveries where supported
  4. Return handlingAdditional postage, inspection or disposal costs supported by records
  5. ContributionRetained sales less included costs, with material exclusions listed

Contribution vs Gross Profit: Key Differences

Gross profit
Sales minus product cost only
Contribution
Sales minus product cost + other variable costs (fulfilment, payment, return handling)
Scope
Contribution includes all variable costs relevant to decision-making
Use case
Contribution supports pricing, promotions and product mix decisions

Treat returned stock and missing costs

A refunded item that returns to saleable stock should not automatically leave its full original cost in this calculation. A damaged or unreturned item may have an unrecoverable cost. Record the refund and inventory outcomes separately, especially if they occur on different dates.

Check cost coverage before comparing products or periods. Shopify’s gross-profit-by-product reports cover only products or variants with cost recorded when sold, so their net sales can differ from a sales report.

Report how many orders or products have complete costs and how much retained sales they represent. Leave the rest unpriced or label any estimate.

Show contribution in money and, when retained sales are positive, as a percentage of that stated base. Put the order count, adjustment cut-off and excluded costs beside it. If sales rise while contribution falls, examine discounts, mix, returns and costs before assigning a cause.

More from Revenue Analytics

Revenue Analytics

Ecommerce revenue and margin analytics

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