Profit Dashboard
The Profit Dashboard
The default is today
When you open the dashboard the date range is set to Today, because that is what you came to see. Early in the morning that means very small numbers, and a ROAS built on one order. Switch to 7 d or 30 d before drawing any conclusion.
The controls at the top
The row under the title changes what everything below it counts.
- Date buttons — Today, Yesterday, 7 d, 30 d, 90 d. Everything except Yesterday is a range ending today.
- From date / To date — for anything the buttons do not cover.
- Country, Product, Platform, Customer type — narrow the whole screen.
Days run midnight to midnight, Brussels time. If you are somewhere else, a “day” here is not quite your day.
Two buttons sit on the right: Refresh fetches current orders and ad spend, which takes a moment. Full sync fetches everything including products and cost prices, which takes longer and runs in the background.
The three figures at the top
These are the only three numbers you need to decide whether to spend more or less. Everything below them is the explanation.
Break-even ROAS
The return you need before an ad euro pays for itself. Below this line, every extra euro of advertising costs you money.
Worked out from your own margin: revenue minus cost of goods, minus transaction fees, minus what returns cost. Which means it is only as right as the numbers on Cost settings.
Actual ROAS
What you really got: revenue divided by what you spent on ads, across the whole account.
The badge beside it shows the gap to break-even. Positive is profit, negative is not.
Contribution margin
What is left of every €100 of revenue after goods, fees, ads and returns — but before your fixed costs.
This is the number that says whether the business model works at all. Overhead is a separate problem.
Profit and revenue
Three amounts, each one further down the chain than the last.
- Net revenue — what customers paid, minus what you refunded.
- Gross profit — net revenue minus what the goods cost you.
- Net profit — everything gone: goods, fees, ads, returns and a slice of your monthly overhead.
The coloured bar underneath shows where the revenue went. Hover any segment for its exact amount.
Two lines about refunds, one line apart
In the costs list further down you may see two different refund figures. One is money refunded during this period; the other is refunds attached to orders placed in this period. Only the second one is subtracted from your profit, because that is the one that belongs to this period’s revenue. Both are correct — they answer different questions.
The tables
- Products by gross profit — the top fifteen. The Status pill on the right is a quick verdict on the margin: Winner, Healthy, Watch out, Low margin. The Ad spend column is only filled in when a campaign name contains the product name — otherwise it reads n/a, which means “not known”, not “zero”.
- Campaigns by spend — two return columns side by side. ROAS is what the platform claims; Shopify is what your own checkout attributes via UTM tags. The verdict is based on the Shopify column whenever it has anything to say, because that is the one that reflects money that actually arrived.
- Returns by size and Revenue by country — only appear when there is data. Both flag anything noticeably above your own return assumption.
Three things people misread here
- Orders under €10 are not counted. Neither are test orders, cancelled orders, orders with a discount code containing “test”, or checkouts that were never paid. Overview shows a small outside the count note when this applies; other screens filter silently. It exists because an unfiltered figure once reported a 58% return rate on a product that had none.
- Return rate counts orders, not items. A €5 partial refund on a €300 order makes that whole order count as a return.
- Overhead is always divided by 30, never by the real length of the month.
The full list, with every definition, is on What every number means.
If everything is zero
Shopdeck shows a panel explaining why rather than leaving you with a screen of zeroes. It tells you how many orders are in the database at all, when the most recent one was, and which filters are on. Buttons take you straight to View yesterday, Last 7 days or Last 30 days.
If that panel says the database is empty, go to Health and syncing — it compares what Shopify counts for today against what Shopdeck has.