What a daily sheet is for
A daily sales report has one job that a stack of meter slips does not do: it puts the day's independent measurements next to each other so that disagreement is visible on the day it happens. If you would rather start from a working sheet than build one, the free daily sales report template already does the comparison.
There are three such measurements at a fuel outlet, and they are genuinely independent. The meters say how many litres left the nozzles. The dip says how much fuel is still in the tanks. The drawer says how much money came in. Each is produced by a different mechanism, and any two of them can be compared to check the third.
A sheet that only lists sales throws that away. It records one measurement three times in three formats and calls the agreement between them a reconciliation.
The format
Five blocks, in this order. The order matters — each block consumes the totals of the one above it, so filling them out of sequence means going back.
There is a free Excel version of this sheet with every formula already in place, if you would rather start from a file than build one.
- Block 1 — Meter readings. One row per nozzle: opening, closing, testing litres, litres sold.
- Block 2 — Sales by fuel. Litres per fuel type, the rate applying, and the value.
- Block 3 — Stock. Per tank: opening stock, deliveries received, litres dispensed, book stock, dip reading, variance.
- Block 4 — Collections. Cash, UPI, card, fleet card, credit — and expenses paid out of the drawer.
- Block 5 — Reconciliation. Expected revenue against collected, and the two differences that matter.
Block 1 — Meter readings
One row per nozzle, per shift. Litres sold is computed, never written from memory: closing minus opening, less any testing litres pushed into a measure and returned to the tank.
Never write a negative
A totaliser only counts up, so a closing reading below its opening is always an error — a transposed digit, or a figure copied from the wrong nozzle. Find it now. Written down as a negative, it silently cancels a real sale somewhere else in the total.
| Nozzle | Fuel | Opening | Closing | Testing | Litres sold |
|---|---|---|---|---|---|
| N1 | Petrol | 184320.40 | 185002.10 | 5.00 | 676.70 |
| N2 | Petrol | 201884.00 | 202451.55 | 0.00 | 567.55 |
| N3 | Diesel | 312006.25 | 313118.90 | 5.00 | 1107.65 |
| N4 | Diesel | 298450.10 | 298902.75 | 0.00 | 452.65 |
Litres sold is the computed column. Testing litres moved the meter but were not sold.
Block 2 — Sales by fuel type
Roll the nozzle rows up by fuel and value them at the rate that applied — the meter reading calculator will do it for six nozzles at once. If the rate changed during the day, split the litres at the changeover and value each block separately — a single blended rate produces an expected-revenue figure that was never going to match anything.
| Fuel | Litres sold | Rate (₹/L) | Value (₹) |
|---|---|---|---|
| Petrol | 1,244.25 | 104.20 | 1,29,650.85 |
| Diesel | 1,560.30 | 92.15 | 1,43,781.65 |
| Total | 2,804.55 | — | 2,73,432.50 |
Litres from Block 1, valued at the day's rate.
Block 3 — Stock, per tank
This is the block most daily sheets omit, and it is the one that catches the expensive problems. Book stock is derived, not measured: opening stock, plus deliveries decanted into that tank, minus the litres its nozzles dispensed.
The dip is the independent check. Where the two disagree, you have found something — and the size of the gap says nothing about which of evaporation, calibration drift, a metering error or a leak produced it. Only the pattern over weeks does that.
| Tank | Opening | Delivered | Dispensed | Book stock | Dip | Variance |
|---|---|---|---|---|---|---|
| T1 Petrol | 8,000 | 12,000 | 1,244 | 18,756 | 18,742 | −14 |
| T2 Diesel | 14,500 | 0 | 1,560 | 12,940 | 12,948 | +8 |
Variance is dip minus book stock. Negative means fuel left without being sold.
Block 4 — Collections and expenses
Split collections by type. Pooling them into one figure discards the only information that would tell you which payment channel failed on a day the drawer is short.
Record cash paid out of the drawer separately as expenses. It was collected and then spent, so it has to be added back before the drawer is compared against expected revenue — otherwise every legitimate payout reads as a shortfall.
| Line | Amount (₹) |
|---|---|
| Cash | 96,400 |
| UPI | 1,28,300 |
| Card | 22,150 |
| Fleet card | 14,000 |
| Credit (on account) | 13,200 |
| Total collected | 2,74,050 |
| Less: paid from drawer | 1,100 |
Block 5 — The four checks
This is the whole point of the sheet. Four comparisons, each between two things measured separately.
- Litres check — nozzle litres against tank movement. They must agree per tank; if they do not, a nozzle is attached to the wrong tank on your sheet or a reading is wrong.
- Stock check — book stock against the dip. The variance, in litres and as a share of throughput.
- Cash check — expected revenue from Block 2, against collections from Block 4 with expenses added back. In the example above: ₹2,74,050 collected, less ₹1,100 paid out, is ₹2,72,950 against ₹2,73,432.50 expected — ₹482.50 short.
- Credit check — today's credit sales added to the receivables ledger, and today's account settlements taken off it. Credit is the one payment type that has to be tracked twice.
A shortfall is a question, not an accusation
₹482.50 short on ₹2.73 lakh is 0.18%. On the night it is usually one of four things: a credit sale not written up, a UPI payment that showed success and later failed, a rate change applied to the wrong block of litres, or change given wrong. All four are answerable by the people who were on. None of them is answerable in six weeks.
Per shift, not per day
Run the whole sheet once per shift rather than once per day. It is the same total work, and it changes what the sheet can tell you — see shift management for why attribution is the point.
A day sheet says the outlet was ₹482 short. A shift sheet says the evening shift was ₹482 short — which is a question you can ask a person who is still on the premises, rather than a number that belongs to nobody.
Frequently asked questions
Can I do this in Excel?
Yes, and many outlets do. Excel handles the arithmetic perfectly well. What it does not handle is a workbook filled in on a phone at the forecourt by three different people on three shifts, version conflicts when two of them save at once, or a formula that someone overwrites with a typed value in April and nobody notices until October.
Should testing litres be shown as a sale?
No. Fuel pushed into a test measure leaves the nozzle — so the totaliser counts it — and then goes straight back into the tank. Counted as a sale it inflates expected revenue and manufactures a cash shortfall. Deduct it from litres sold and keep it in dispensed.
What if a nozzle is out of order all day?
Record it with equal opening and closing readings and a note. A blank row is indistinguishable from a nozzle nobody read, and that ambiguity is exactly what the format exists to remove.
How long should I keep daily sheets?
Longer than you think you need, because their value is in the series rather than in any one day. A stock variance is meaningless as a single figure and diagnostic across a year, and that is also the horizon over which a slow leak becomes visible.