Prorated pallet storage: why the day matters.
Storage is the line on a 3PL invoice that clients argue about most, and the one most spreadsheets get wrong in the same direction. The reason is that a month of storage is not a quantity. It is a quantity times a duration, and most billing workbooks only have room for the quantity.
Pallet-days, then divide
The honest unit of storage is the pallet-day: one pallet, in your building, for one day. Count them for the month, divide by the days in the month, and you have pallet-months, which is what the rate card prices. A client with 38 pallets on the floor through the 24th and 40 from the 25th does not have "38 pallets". Over thirty days they have 38 × 24 + 40 × 6 = 1,152 pallet-days, which is 38.4 pallet-months. At $22 a pallet-month that is $844.80.
| Method | What you count | Pallet-months | At $22 |
|---|---|---|---|
| Prorated daily | 1,152 pallet-days ÷ 30 days | 38.40 | $844.80 |
| Snapshot on the 1st | 38 pallets on day one | 38.00 | $836.00 |
| Snapshot on the 30th | 40 pallets on the last day | 40.00 | $880.00 |
| Peak | 40 pallets, the most on any day | 40.00 | $880.00 |
Four defensible-sounding methods, a $44 spread on one quiet client, and far more on a client whose inventory swings. Multiply by twelve months and twenty clients and the method is worth more than the rate.
The pallet that arrives on the 20th
Here is where snapshot billing quietly breaks. Ten pallets land on the 20th. Under a snapshot taken on the 1st they are free this month and full price next month, which is fine until the client pulls them out on the 3rd and pays a month for four days. Under a snapshot on the last day they pay a full month for eleven days. Prorated, they pay eleven thirtieths of a month: 10 × 11 ÷ 30 = 3.67 pallet-months, $80.67. That is the number a client can check with a calculator, and clients do.
storage.pallet.month by summing pallet-days and dividing by the days in the period. The invoice line reads "1,152 pallet-days / 30" so the arithmetic is on the page, not in an email thread afterwards.When a snapshot is the right answer
Some contracts say, in writing, "billed on pallets in storage on the first of the month". If that is the agreement, bill it that way; a rate card is a contract, not a preference. Snapshot billing also suits a client whose inventory barely moves, where the two methods land within a pallet of each other and the simpler statement wins. What it does not suit is a client with seasonal swings, a client who receives mid-month, or any client who has ever asked why September cost more than August.
The thing to avoid is doing both without saying so: proration for one client because their spreadsheet tab happened to have daily counts, a snapshot for another because theirs did not. Pick per client, write it on the rate card, and let the invoice say which one applied.
A rate change on the 16th
Rates change. The mistake is applying the new rate to the whole month because the invoice is generated after the change. If $22 becomes $24 on the 16th, the first fifteen days are a $22 contract and the last fifteen are a $24 contract. For our 1,152 pallet-days, roughly half fall on each side: 19.2 pallet-months at $22 is $422.40, and 19.2 at $24 is $460.80, for $883.20. One rate for the whole month at $24 would be $921.60, and the client would be right to push back on $38.40 of it.
An effective-dated rate card makes this automatic: each version prices the days it was in force, and the invoice shows two storage lines, each naming its version. It also means last year's invoice can always be traced to last year's rates, which matters the day a client disputes it.
What clients notice
Nobody reads a storage line that says "38 pallets, $836.00" and feels anything. People read "1,152 pallet-days / 30 = 38.4 pallet-months at $22.00" and feel that someone counted. The difference between the two is not the eight dollars and eighty cents. It is whether the next invoice gets paid without a phone call.
The numbers above are the demonstration month on the Tahona Billing page. The rate card calculator runs the same arithmetic on your own counts. If you run a 3PL with three to thirty clients and bill from a workbook, the pilot is open.