Daily P&L Breakdown - Day-by-Day Profit Table
See every P&L line item day by day in MerchantFlow. Filter by revenue, margin, and COGS coverage, expand any day for detail, and export the table for accounting or investor reporting.
Daily P&L Breakdown
The daily breakdown turns your P&L into one row per day, with every line item from gross revenue down to net profit spelled out. Where the main P&L page answers "how did this period do", the daily breakdown answers "which days did it, and why" -- the view you want when a month looks fine in aggregate but hides a run of unprofitable days.
Open it from Profit → Daily Breakdown (/dashboard/pnl/daily-breakdown).
What each row shows
Every row is a single day in your store's timezone, in your reporting currency.
The on-screen table is deliberately narrow -- Date, Revenue, COGS, Gross Profit, Ad Spend, Fees, Tax, Funding, Net Profit, Net %, where Revenue is net revenue. The remaining lines below live in the expanded row, and most of them in the CSV export as well.
Revenue
| Column | Meaning |
|---|---|
| Gross revenue | Order subtotal + shipping charged + sales tax (tax-exclusive stores only -- tax-inclusive stores already have it inside the subtotal). Discounts are already reflected in the subtotal |
| Net revenue | Gross revenue minus refunds. Discounts are not subtracted again |
| Shipping revenue | Shipping charged to customers |
| Refund amount | Refunds recorded for the day |
| Discount amount | Discounts applied |
Costs
| Column | Meaning |
|---|---|
| COGS | Cost of goods sold for units shipped |
| Ad spend | Combined spend across connected ad platforms |
| Payment fees | Processing fees |
| Tax amount | Per your tax rules |
| Shipping cost | A separate merchant-side shipping line, reserved for future use -- it currently reports 0. Your real delivery cost lands on Fulfillment cost below |
| Fulfillment cost | Per your fulfillment cost method |
| Variable costs | The combined variable cost block |
| OpEx expenses | Operating expenses hitting that day |
| Amortised expenses | Expenses spread across a period rather than charged to one day |
| Funding repayment | Repayments on revenue-based funding |
Profit
| Column | Meaning |
|---|---|
| Gross profit and gross profit margin | Net revenue minus COGS |
| Contribution margin and contribution margin % | Gross profit minus shipping cost, fulfillment, payment fees and ad spend |
| Net profit and net profit margin | Contribution margin minus OpEx, amortised CapEx, variable costs and funding interest. Sales tax is deducted here only when Settings → Sales Tax Treatment is set to Yes - deduct from profit; the default, No - pass-through, leaves tax out of profit entirely |
Data quality
COGS coverage is the share of the day's units that had a cost on file. A day at 100% coverage has trustworthy margins; a day at 60% is overstating profit because 40% of what shipped was costed at zero. Treat low-coverage days as unreliable rather than as good days -- see COGS accuracy for how to close the gap.
Expanding a day
Select any row to expand it. The detail view breaks that day's figures out into four blocks -- Revenue Breakdown, Cost of Goods, Operating Expenses, and Bottom Line -- which is the fastest way to find the single cost line responsible for an outlier. The optional lines are hidden when they are zero for that day rather than shown as 0: Refunds, Discounts, Shipping Revenue, OPEX, Shipping Cost, Fulfillment, Variable Costs, Amortised CapEx and Funding Repayment. The headline lines -- gross and net revenue, COGS and coverage, gross profit and margin, ad spend, payment fees, tax, contribution margin and net profit -- always render, zero or not.
Filtering
The filter button sits next to Export Ledger and opens a Filter Daily Breakdown dialog. Available filters:
- Minimum Revenue and Maximum Revenue (compared against net revenue)
- Minimum Margin and Maximum Margin (compared against net profit margin)
- Show only profitable days (positive net profit)
- Show only unprofitable days (negative net profit)
- Minimum COGS Coverage (%)
Two filters worth knowing by name:
- Show only unprofitable days surfaces exactly the days that dragged the period down.
- Minimum COGS Coverage filters out days whose costs are incomplete, so you can judge margin on the days where margin is actually knowable.
The two profitability checkboxes are mutually exclusive -- ticking one clears the other. Reset All clears every filter at once.
Time range
The daily breakdown follows the global time range selector at the top of the dashboard. Changing the range changes which days appear.
On plans with a history limit, requests reaching further back than your plan allows are clamped to the earliest date available to you rather than failing.
Exporting
Export Ledger downloads a CSV named pnl-daily-breakdown-<first date>-to-<last date>.csv.
Two things to know before you rely on it:
- Filters do not apply to the export. It always writes every day in the selected time range, not just the rows you filtered down to. Narrow the time range instead if you want a subset.
- It is a wider table than the screen but not the full row. The CSV carries gross revenue, refunds, discounts, shipping revenue, net revenue, COGS, gross profit and margin, ad spend, payment fees, tax, funding repayment, contribution margin and %, net profit and %, COGS coverage %, and currency. Shipping cost, fulfillment cost, variable costs, OpEx and amortised expenses are in the expanded row only.
Common questions
Why does a day show revenue but no ad spend? Ad platform data syncs on its own schedule and can land later than order data. Recent days often fill in over the following hours -- check sync status if a day stays empty.
Why does one day look catastrophic? The usual causes are a refund on a large order landing on that day, an annual expense charged to a single day instead of being amortised, or a funding repayment. Expand the row to see which.
Do the daily rows sum to the P&L total for the period? Yes, for the same time range and reporting currency. If they do not, the range selectors differ or a sync landed between the two loads.
Last updated on
Profit & Loss Tracking for E-Commerce
Track true e-commerce profitability with MerchantFlow P&L. Manage COGS, ad spend, expenses, and calculate accurate gross and net profit margins.
COGS Management - Product Cost Tracking
Manage Cost of Goods Sold in MerchantFlow to calculate accurate profit margins. Add COGS individually, in bulk, sync from Shopify inventory data, and schedule future supplier price changes with effective dates.