How to track true profit per sales channel on Amazon, eBay, Etsy and Shopify
Selling on several marketplaces feels like growth. Revenue goes up, orders come in from four places, and every platform dashboard shows a healthy sales number.
Selling on several marketplaces feels like growth. Revenue goes up, orders come in from four places, and every platform dashboard shows a healthy sales number. But none of those dashboards knows what your product cost, what you paid to ship it or what the other channels charged you. So the question that matters most, which channel actually makes money, goes unanswered.
To track profit per sales channel, you need every order in one place, with each platform's fees, the fulfillment or shipping cost and the real landed cost of the product subtracted line by line. Then you can compare channels on profit per order and margin instead of revenue. This guide shows how to set that up, with the formulas, a worked example and the traps that quietly distort the numbers.
Why revenue per channel is the wrong scoreboard
Each marketplace takes its money differently. One charges a percentage referral fee with a minimum per item. Another adds a fixed fee per order. Some charge a listing fee, a payment processing fee, an advertising fee or a fee on the shipping you collect. Fulfillment programs add a per-unit fee, while shipping yourself adds postage and packaging.
That means two channels with the same revenue can leave you with very different profit. A channel that looks like your best performer by sales can be the weakest by margin once fees and fulfillment are counted. The only fair comparison is profit after every channel-specific cost.
The profit formula for one order line
For every line you sell, the calculation is the same:
- 01Revenue: item price plus any shipping the buyer paid, minus discounts.
- 02Minus platform fees: sale or referral fee, fixed fees per item and per order, payment processing and ad fees.
- 03Minus fulfillment: the marketplace fulfillment fee, or your own postage plus packaging.
- 04Minus cost of goods (COGS): units sold times the average landed cost of the product.
- 05Equals contribution profit for that line.
Add up the lines by channel and you get profit and margin per channel. Subtract your overheads (software, storage, salaries, accounting) from the total and you have net profit for the business.
Landed cost: the number most sellers get wrong
Your cost of goods is not just the supplier's unit price. Landed cost is everything you paid to get the stock to your shelf or to the marketplace warehouse:
- Supplier price per unit
- Freight and shipping to you
- Import duty and customs fees
- Inbound shipping to a fulfillment center, if you use one
Example: you buy 200 units at $9.00 each ($1,800), pay $240 freight and $160 duty. Total cost is $2,200, so the landed cost is $11.00 per unit, not $9.00.
When you restock at a different price, use a weighted average. If you still have 50 units at $11.00 and buy 300 more that land at $10.20 each, your new average is (50 x $11.00 + 300 x $10.20) / 350 = $10.31 per unit. Using the first supplier quote forever is a quiet way to overstate profit.
A worked example: one product, two channels
Here is the same $40 product sold on two channels. The fee rates below are illustrative examples, not current marketplace rates. Always check each platform's fee page for your category and country.
Channel A, a marketplace with its own fulfillment program
- Sale price: $40.00
- Referral fee at an example 15%: $6.00
- Fulfillment fee: $5.50
- Advertising: $2.00
- Landed cost: $11.00
- Profit: $15.50, a margin of about 39%
Channel B, your own online store, shipped by you
- Sale price: $40.00, plus $5.00 shipping paid by the buyer
- Payment processing at an example 2.9% plus $0.30 on $45.00: about $1.61
- Postage: $7.20 and packaging: $0.80
- Advertising: $6.00
- Landed cost: $11.00
- Profit: about $18.39, a margin of about 41% on $45.00 collected
Channel B wins in this example, but change one input (higher ad spend per sale, or more expensive postage) and Channel A takes the lead. That is the point: you only know by running the numbers on your real orders, every month.
Bringing every platform's report into one place
The practical problem is that each platform exports orders differently. Columns have different names and orders, dates come in different formats, and one order with three items can appear as three lines with the shipping repeated on each. A reliable setup needs to:
- Find columns by their header name, so it does not matter which order a platform exports them in.
- Map platform SKUs to your own SKUs. The same product often has a different SKU on each marketplace.
- Count order-level amounts once. Shipping and discounts on a multi-line order should not be multiplied by the number of lines.
- Skip duplicates. Overlapping report date ranges should not double count sales.
- Handle cancellations and refunds so they do not inflate revenue.
- Flag anything unusual (an unknown SKU, a missing price) for review instead of silently guessing.
Doing this by hand once is tedious. Doing it every week is where spreadsheets usually break.
Keep stock in sync across channels
Profit is only half the job. When the same inventory sells in four places, you also need to know when to reorder before a listing goes out of stock. Track these for every product:
- Stock on hand: units purchased minus units sold across every channel.
- Sales velocity: units sold in the last 30 days, divided by 30 for a daily rate.
- Days of cover: stock on hand divided by daily sales. With 90 units and 4 sales a day, you have about 22 days left.
- Reorder point: daily sales times (supplier lead time plus safety days). At 4 a day with a 21-day lead time and 7 safety days, reorder when stock falls to 112 units.
A simple status column (OK, Watch, Reorder now, Out of stock, Overstock) turns these numbers into a daily to-do list.
Pricing a product for each channel
Because fees differ by channel, the same price can be profitable on one marketplace and a loss on another. For each product and channel, calculate:
- Break-even price: the price where profit after fees, fulfillment and landed cost is zero.
- Target price: the price that hits the margin you want.
Seeing every channel side by side makes it obvious where a price increase is needed, or where a product should not be listed at all.
Mistakes that distort multichannel profit
- Comparing channels by revenue. Always compare profit per order and margin.
- Using supplier price as COGS. Freight and duty are part of the cost.
- Ignoring ad spend. Marketplace ads and paid social are channel costs.
- Double counting shipping or discounts on multi-line orders.
- Forgetting refunds and returns. A channel with high returns can look strong until refunds are counted.
- Letting fee rates go stale. Platforms change their fees. Review your fee rules regularly.
A ready-made workbook for multichannel sellers
The Multi-Channel E-Commerce Command Center is an Excel system built for this exact job. Paste each platform's order report into the Import tab as downloaded, header row included. Report profiles find the columns by header name, with example profiles for Amazon, eBay, Etsy, Shopify and a manual layout for markets and in-person sales.
Every line is costed on the Sales Ledger with editable fee rules per channel (including per-SKU overrides and automatic Amazon FBA or FBM rules), fulfillment or shipping cost and average landed cost from your purchases with freight and duty. Duplicates, cancellations and refunds are handled, and each line gets a status of OK, Review or Error with the reason. The Dashboard shows profit and loss by channel for any date range, stock alerts, monthly trends and top products by profit, and the Price Planner shows break-even and target prices for every channel. It covers up to 2,000 report lines, 200 products and 500 purchases, and the example fee rates are easy to update.
If you only need part of this, these lighter templates cover inventory and pricing on their own:
Common questions
How do I know which sales channel is most profitable?
Compare channels on contribution profit and margin, not revenue. For every order line, subtract that channel's fees, the fulfillment or shipping cost and the landed cost of the product, then total the results by channel for the same date range.
What should be included in cost of goods sold for an online store?
Use landed cost: the supplier price plus freight, duty and customs fees, and inbound shipping to a fulfillment center if you use one. When you restock at a different price, update the weighted average cost so COGS stays accurate.
Can one spreadsheet handle Amazon FBA and orders I ship myself?
Yes, as long as each line knows how it was fulfilled. Marketplace-fulfilled orders carry the fulfillment fee, while self-shipped orders carry your postage and packaging. The Command Center reads the fulfillment column in the Amazon report and applies the right fee rule automatically.
How often should I update my fee rates?
Check them whenever a platform announces a fee change, and review them at least every few months. Fee pages differ by category and country, so use the rates that apply to your account.
Does it work in Google Sheets?
The workbook is built for Microsoft Excel 2016 or later (desktop or Excel for the web). You can import it into Google Sheets, but sheet protection does not carry over, so the locked formulas are easier to overwrite there by accident.
Knowing your real profit per channel changes decisions: where to spend on ads, which products to drop and which marketplace deserves more of your stock. You can preview the Multi-Channel E-Commerce Command Center free; downloading it is included in the OpenWorksheet monthly plan, along with the rest of the library.