Any Shopify store
Daily P&L tracker
A daily P&L tracker is a spreadsheet with one row per day and one column per cost, running from gross revenue down to EBITDA. Filling it in every morning shows which costs move with sales and which do not, and how much of yesterday's revenue you actually kept.
The file
nouz-daily-pl-tracker.csv · 15 columns · one example row
The columns follow the same order nouz computes them in: revenue first, then each cost in the order it is taken out, with the margins CM1, CM2 and CM3 plus EBITDA where they belong. That order is the point of the file. A spreadsheet that lists costs alphabetically can tell you what you spent, but never which stage of the business ate the margin.
The example row is a day of the demo store, and its columns add up: €40.607,66 of gross revenue ends as €8.362,56 of EBITDA once returns, VAT, goods, logistics, payment fees, marketing and one day's share of overhead have each taken their piece. Discounts are shown beside them for visibility, but they are already deducted inside gross revenue, so nothing is subtracted twice.
Two habits make the file trustworthy. Book each number to the day it belongs to, so a refund lands on the day it was issued instead of changing a finished day; which day a refund belongs to decides whether last month ever stops moving. And spread overhead as the month's fixed costs divided by its days, so rent stops arriving as one bad Tuesday.
How to use it
- 01Download the file and open it in Excel, Numbers or Google Sheets.
- 02Each morning, add one row for yesterday from your shop admin and ad accounts.
- 03Enter overhead_daily as the month's fixed costs divided by its days, so every day carries its share.
- 04Read the margin columns, not the revenue column: a widening gap between cm2 and cm3 is a marketing problem, a widening gap between cm3 and ebitda is a fixed-cost problem.
- 05When filling this in by hand stops being sustainable, nouz computes every column of this file from your own orders, every night.
What is inside
| Row | date | gross_revenue | discounts | returns | vat | net_revenue | cogs | cm1 | logistics | transaction_fees | cm2 | marketing | cm3 | overhead_daily | ebitda |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | 2026-08-20 | 40607.66 | 1284.90 | 2103.44 | 4208.24 | 34295.98 | 13112.01 | 21183.97 | 3164.72 | 1065.47 | 16953.78 | 7488.86 | 9464.92 | 1102.36 | 8362.56 |
| 2 | |||||||||||||||
| 3 |
Every column, explained
| date | The trading day, ISO formatted so the file sorts itself. |
|---|---|
| gross_revenue | Product revenue after discounts, plus shipping charged, including VAT. Line 7 of the statement. |
| discounts | Discount codes and automatic discounts on the day's orders. Already inside gross_revenue; shown so leakage stays visible. Line 4. |
| returns | Refunds issued this day, whichever day their orders were placed. Line 10. |
| vat | The VAT contained in revenue minus returns. It was never your money. Line 12. |
| net_revenue | gross_revenue minus returns minus vat. The denominator every cost percentage uses. Line 14. |
| cogs | The units sold that day, at the unit cost effective on that day. Line 17. |
| cm1 | net_revenue minus cogs: whether the products make money. Line 19. |
| logistics | Shipping, pick and pack, packaging, EPR fees, and return processing for refunds issued today. Line 21. |
| transaction_fees | Each gateway's percentage plus fixed fee on the day's payments. Line 23. |
| cm2 | cm1 minus logistics and transaction_fees: whether operations make money. Line 25. |
| marketing | Ad spend on the spend date, all platforms, plus fixed marketing costs like retainers. Line 27. |
| cm3 | cm2 minus marketing: whether growth pays for itself. Line 29. |
| overhead_daily | The month's remaining fixed costs divided by its days. Line 31. |
| ebitda | cm3 minus overhead_daily: what the day actually left you. Line 33. |