Read the DTC Performance Snapshot
Quick Reference
Inputs
A connected Shopify store with at least one completed sync for the volume and revenue tiles, plus product costs for the three profit tiles to mean anything.
Outputs
A worked read of the five Snapshot tiles, the date-window selector that drives them, and the change badge that sits beside a tile.
Outcomes
Know what each of the five tiles answers, which order to read them in, why the page opens on Yesterday rather than a month, and what a tile reading N/A is actually telling you.
The DTC Performance Snapshot is the top section of the Command Center, and it answers one question: did your direct-to-consumer business make money over the period you picked? Five tiles — Orders, Contribution Profit, Contribution GP / Order, Gross Margin % and Return Rate % — all read the same date window, and that window is yours to change.
What the DTC Performance Snapshot is
It is the headline read on the Command Center: a row of five tiles under the heading DTC Performance Snapshot, with a badge beside the heading naming the window on screen, and the subhead “Windowed profit performance for your DTC orders. Metrics follow the date filter.”
Two things about it are deliberate, and both catch people out.
It is direct-to-consumer only. The page says so immediately above the tiles, beside a DTC Engine view indicator. Wholesale, marketplace and retail orders are not inside these five numbers; they appear further down the page in Business Lines. Which orders count as direct-to-consumer is settled by how MarginOS assigns each order to a channel.
The page opens on Yesterday. Not on a month, and not on the window you chose last time. If a tile looks implausibly small the first thing to check is the selector, not your data.
Before you start
You need a connected Shopify store and at least one completed sync. Orders and revenue appear from that alone.
The three profit tiles also need product costs. Without them there is nothing to subtract, so profit reads high rather than obviously broken — which is the more dangerous failure. Set your store-wide cost fallbacks, and use Data Trust levels to see how much of your catalogue is running on evidence rather than assumption.
Read the Snapshot in five steps
- Set the window first. The selector sits at the top right of the section: Yesterday, Last 7 Days, 30D, 60D and 90D. Every tile follows it, and each tile carries the window in its own name — “Orders (Last 30 Days)”, “Contribution Profit (Last 30 Days)” — so a screenshot is never ambiguous about what it covers.
- Start at Orders. This is the volume everything else in the row is derived from. One order counts once no matter how many products are in it, and cancelled and voided orders are excluded. If Orders looks wrong, nothing to the right of it is worth reading yet.
- Read Contribution Profit. The dollars your direct-to-consumer orders produced in the window, after product cost, fulfillment, payment fees and refunds, and before any advertising. This is the “did we make money” number.
- Read Contribution GP / Order and Gross Margin % together. One is the average profit an order leaves you in dollars, the other is that same profitability as a share of revenue. The dollars tell you the size of the prize; the percentage lets you compare periods and products fairly when volume moves.
- Finish at Return Rate %. The share of revenue that came back. A rising return rate quietly removes profit you have already counted, which is why it sits in this row rather than on a page of its own.
The five tiles
| Tile | What it answers | Worth knowing |
|---|---|---|
| Orders | How many direct-to-consumer orders landed in the window. | Distinct orders, matching the count in your Shopify admin filtered to paid, partially-paid and refunded orders and excluding cancelled and voided ones. |
| Contribution Profit | Total gross profit from those orders. | After product cost, fulfillment, payment gateway fees and refunds. Before advertising. |
| Contribution GP / Order | The average profit one order leaves behind. | Your most direct profitability lever: price, discount depth, product mix and shipping strategy all land here. |
| Gross Margin % (return-adjusted) | That profit as a share of revenue. | Return-adjusted, so refunds are already taken out. It moves on product mix alone, with no price or cost changing. |
| Return Rate % | How much revenue came back. | Refunded revenue as a share of refunded plus net revenue. The tile changes colour as the rate climbs, amber first and then red. |
How MarginOS calculates what you see here
Every tile is prepared in advance rather than computed when you open the page, which is why the Snapshot agrees with the deep-dive screens instead of approximating them — see how MarginOS turns raw data into your margins. One consequence is worth holding on to: a cost you correct shows up once figures are next recalculated, not the instant you save it.
The two profit tiles are the same measurement in different units. Contribution Profit is Gross Profit (CM1) in dollars, and Gross Margin % is those dollars as a share of net revenue. Both subtract the real variable costs of delivering an order, which is why they sit below the margin most other tools will show you for the same period.
Beside a tile you may see a small change badge. It always names what it is comparing against — “vs prior 30d” on a 30-day window, “vs 7d avg” on Yesterday — because a change measured against an unstated baseline is not information.
Where a figure has no honest basis, the tile reads N/A rather than 0. An unmeasured period is not a zero-profit period, and printing a zero would be a claim MarginOS has not earned. This is deliberate.
Example
Illustrative numbers, not a real store. A 30-day window with 1,200 direct-to-consumer orders, $96,000 of net revenue and $28,800 of Contribution Profit:
- Orders (Last 30 Days) — 1,200
- Contribution Profit (Last 30 Days) — $28,800
- Contribution GP / Order — $24.00, which is $28,800 spread over 1,200 orders
- Gross Margin % (return-adjusted) — 30.0%, which is $28,800 as a share of $96,000
- Return Rate % (Last 30 Days) — 6.2%
Now switch the selector to 90D. Orders and Contribution Profit are totals, so they grow with the longer window — roughly threefold on a steady store. Contribution GP / Order, Gross Margin % and Return Rate % are averages, so they should barely move. That is the useful part: when an average does move sharply between two windows, it is telling you about a genuine shift in mix, pricing or cost, and it is worth chasing.
Common questions
Why does Return Rate % read N/A on the short windows?
On Yesterday and Last 7 Days it is not shown at all, and the tile says so. Refunds usually post well after the order they reverse, so over a day or a week the figure would describe refund timing rather than your actual return behaviour. Switch to 30D or wider.
My Contribution Profit looks too good. What is wrong?
Almost always missing product costs. With nothing to subtract, profit reads high. Check Data Trust to see how much of your catalogue is running on evidence rather than assumption, and supply real costs where it is not.
Does this section include wholesale or marketplace orders?
No. All five tiles are direct-to-consumer only, which the page states beside the DTC Engine indicator above them. Your other business lines appear further down the Command Center in their own section, where they are reported on revenue until their platform-specific fees are modelled.
What does the small percentage badge beside a tile compare against?
The equivalent previous period, and the badge names it rather than leaving you to guess. On a 30-day window it reads “vs prior 30d”; on Yesterday it compares against the trailing seven-day average, because a single day against a single day is mostly noise.
Why did switching from 30D to 90D barely move Gross Margin %?
Because it is an average, not a total. A longer window pulls in more orders but usually in similar proportions, so the percentage settles rather than swings. The totals — Orders and Contribution Profit — are the ones that should scale with the window.
Related
- Read the Command Center — the rest of the page this section sits on.
- How MarginOS calculates Gross Profit (CM1) — the profit figure behind two of these tiles.
- How MarginOS calculates Gross Margin % — the same profit as a percentage, and why it differs from Shopify’s.
- Read your Margin Briefing — what to do when one of these numbers moves the wrong way.
- Why MarginOS shows “N/A” instead of a made-up number — the stance behind every blank tile.
About the author
Founder of MarginOS, a Profit & Inventory OS for Shopify DTC brands who live and die by margin. Previously 11 years at Google across Ads and Global Business Operations, building large-scale systems. Now focused on giving DTC operators true profit by product, channel, and customer after COGS, 3PL, shipping, returns, and fees, and on showing exactly how much to trust every number behind those decisions.
Read Aron's story