Use case · Product and channel economics

Which products and channels contribute after costs?

The useful comparison is contribution: net sales less product, channel, fulfilment and acquisition costs on a stated basis. Rank products and channels by that result, then check the cost or allocation behind a weak row before changing price, spend or stock.

Find what supports the business beneath the sales total.

A product may be selling well while fees, fulfilment or acquisition spending leave little contribution. When the team wants more stock or advertising, compare the same product across channels and explain the costs that drive the difference.

Start with one period and a common cost definition. Separate recorded charges, estimates and unallocated spending, then choose the row that needs a source check or a measured test.

Check the same sales population and costs in each row.

Match period, currency and product-channel definitions. Reconcile net sales to the period report and list missing costs separately so a blank field cannot inflate the margin.

Shopify product and variant profit reports depend on costs recorded at the time of sale; discounts and refunds affect net sales and margin. Check which sales the chosen report includes before combining it with channel costs.

Amazon separates selling fees from FBA fulfilment, storage and other costs. Map the actual charges from the relevant marketplace and period, keeping shared charges visible until their allocation is agreed.

Scroll horizontally if needed to see all columns.

Records and definitions needed before comparing contribution.
InputCheckIf it is unresolved
Sales, discounts and refunds by product and channelMatch the reporting period, currency and sales populationLabel the coverage gap and reconcile the difference
Recognised cost of units soldConfirm cost basis and the treatment of returned stockKeep affected margins provisional with a stated estimate basis
Channel and payment costsMap charges once to the correct product, channel or shared categoryList unmapped charges separately
Fulfilment and return logisticsSeparate customer refunds from handling, freight and other costsState which logistics costs are missing
Acquisition spendingDocument how ads and affiliate costs are attributed or allocatedShow unallocated spending and avoid causal claims
Fixed operating costsKeep the contribution definition distinct from the operating resultDo not present contribution as net profit

Compare the same serum in two channels.

For September 2026, Hero serum 30 ml is compared on one basis: net sales less recognised cost of goods sold (COGS), platform and payment fees, fulfilment including return logistics, and allocated ads and affiliates.

For Shopify DTC, $96,400 - $34,000 - $2,600 - $7,200 - $16,000 = $36,600 contribution. For Amazon, $71,900 - $25,500 - $9,500 - $8,300 - $20,000 = $8,600. Divide each result by that row's net sales to calculate its contribution margin.

Scroll horizontally if needed to see all columns.

Example report · Demonstration data · Hero serum 30 ml · September 2026 · USD.
MetricShopify DTCAmazon
Gross sales$108,000$79,000
Less discounts$6,000$2,000
Less customer refunds$5,600$5,100
Net sales$96,400$71,900
Less recognised COGS$34,000$25,500
Less platform and payment fees$2,600$9,500
Less fulfilment, including return logistics$7,200$8,300
Less allocated ads and affiliates$16,000$20,000
Contribution before fixed overhead$36,600$8,600
Contribution / net sales38.0%12.0%

Investigate the weaker row before increasing exposure.

The Amazon serum row has a lower contribution margin and higher fee, fulfilment and acquisition amounts. Check the source charges and the advertising allocation first. The question is whether those inputs support the difference on a consistent basis.

Across all products, contribution is $67,200. Less $42,000 fixed operating expenses gives a $25,200 operating result. Interest and tax are outside this calculation. Contribution covers fixed costs before those deductions; cash for an order also depends on receipt and payment dates.

The Travel kit on Amazon contributes -$700. Check whether its costs reflect a recurring unit loss, a one-off period charge or an acquisition allocation that needs correction before assigning more spend.

Scroll horizontally if needed to see all columns.

Contribution example · September 2026 · USD
Product / channelNet salesCosts before acquisitionAcquisitionContributionCM %
Starter bundle
Shopify DTC
54,20022,6007,80023,80043.9%
Hero serum 30 ml
Shopify DTC
96,40043,80016,00036,60038%
Hero serum 30 ml
Amazon
71,90043,30020,0008,60012%
Travel kit
Amazon
18,30014,2004,800−700−3.8%
Gift set
TikTok Shop
12,6008,2005,500−1,100−8.7%

Contribution = net sales − product cost − fees − fulfilment − acquisition costs; before fixed overhead, interest and tax. Return logistics are included in fulfilment. Acquisition costs are allocated by product and channel.

Inspect the complete cost breakdown

Choose an action that tests the suspected driver.

Write the observed difference and the suspected cause separately. Choose a measurable cost correction, offer test or spending limit, with an owner, maximum exposure and review date.

Scroll horizontally if needed to see all columns.

Possible responses to a weak contribution row.
OptionEvidence to checkLimit of the conclusion
Correct costs or allocations firstSource charges, return treatment and the allocation basisA revised report changes the measurement, not the underlying transactions
Test an offer, fulfilment change or spending limitPrice, cost and demand assumptions plus measured resultsHistorical contribution does not predict customer response or incremental sales
Reduce exposure while investigatingStock commitments, avoidable spending and channel obligationsRemoving a channel can affect shared costs or sales elsewhere; the row is not a complete exit analysis

Assign the source check and the test.

For the serum comparison, ask the reporting owner to verify the Amazon charges and acquisition allocation. If the lower contribution remains after that check, ask the commercial owner to specify a bounded test and the result needed before expanding it.

  • Record the product, channel, period and exact contribution definition.
  • List missing costs, estimates and shared spending that could change the ranking.
  • Separate an observed cost difference from a claimed explanation.
  • Specify the test, decision owner and spending or inventory limit.
  • Set the review measure and date; compare realised results with the stated assumptions.

Keep accounting, allocation and business decisions assigned.

The accounting owner prepares reconciled sales and COGS. The brand supplies fulfilment and marketing records and explains commercial changes. Assign the contribution comparison and allocation notes to the finance preparation owner.

The reviewer checks cost completeness and the reporting basis. The authorised brand decision maker approves price, stock or spending changes; the operational owner implements the test and reports results for the next review.

Bring the product, channel and period you want checked.

For the initial finance audit, identify the comparison you want to understand and the cost records available. Flag missing fulfilment charges, uncertain COGS or shared advertising allocations.

Start with cost completeness and a contribution bridge. Use the profitability service page to see the reporting work, then compare package options if the decision also needs continuing strategy or acquisition analysis.

Sources and calculation notes

  1. Shopify Help Center — Profit reports

    Product and variant profit reports depend on costs recorded at sale; discounts and refunds affect net sales and margin.

    Accessed 2026-10-07.

  2. Amazon — A guide to Amazon FBA fees

    The US guide separates Amazon selling fees from FBA fulfilment, storage and other costs.

    Accessed 2026-10-07.

Your next financial question

Put numbers behind the next move.

Start with the decision ahead and the reporting you have today.

Explore the free finance audit