Gross margin is selling price minus product and fulfillment costs, divided by selling price. It is not your take-home profit. For a useful decision, subtract payment fees, expected returns and customer-acquisition cost too. The remaining contribution must cover fixed costs, taxes and owner pay.
- 01SaleCustomer pays100
- 02Product + fulfillmentLanded cost−55
- 03Fees + returnsExpected−7
- 04AcquisitionPer buyer−24
- 05ContributionBefore fixed costs14
Use two margins, not one
Gross margin = (selling price − product cost − fulfillment cost) ÷ selling price. This describes the room left before payment fees, returns, marketing and overhead. Contribution per order = selling price − all variable costs − acquisition cost. Contribution tells you whether an additional order helps cover fixed costs. Shopify's customer-acquisition guide makes the same distinction between acquisition cost and contribution.
A simple example
Suppose a product sells for 100 currency units. The supplier and fulfillment cost 55, payment processing 3, expected return allowance 4 and acquisition 24. Gross margin is 45%; contribution is 14 units. With fixed monthly costs of 280 units, 20 similar orders would cover that fixed amount before taxes and owner pay. These numbers are illustrative. A different return rate or acquisition cost can reverse the result.
Do not mix different products
Calculate by product or offer. An average across a cheap accessory and a bulky, high-return item can hide a loss-making product. Include shipping you subsidize, chargebacks where relevant and the labor you actually pay for. For bundles, measure the combined order and the incremental fulfillment cost, not only the headline basket value.
This formula leads directly to break-even ROAS. If you have not sampled the product and received a supplier quote, the result is a planning estimate rather than a decision-grade margin.
Record the true landed product cost and expected returns for each candidate; only test paid acquisition when contribution can remain positive at a plausible customer cost.
