Attributing Refunds to the Right Month
One order, two dates, two correct answers. Why the choice matters more than it sounds, which one suits which question, and the reporting failure that comes from never making it.
An order placed on 28 January, refunded on 14 February. Which month lost the revenue? Both answers are defensible, they produce different monthly series from identical data, and the majority of store reports never state which one they used.
The two bases
- Order date. The refund reduces January. Each month carries the reversal of its own sales, so a monthly series never shows revenue that was later undone.
- Refund date. The refund reduces February. The series follows cash out of the business, and January stops moving once it is closed.
Neither is wrong. They answer different questions, and the question determines which one is right for a given report.
Which question you are asking
Did this product, campaign or month actually work? Order date. A range with a 30% return rate should not look successful in the month it shipped, and under refund-date attribution it does, for exactly as long as the return window lasts. This is the basis for merchandising, marketing and margin analysis.
What happened to the money? Refund date. Cash left in February. An accountant reconciling a bank statement needs the movement in the month it moved, and needs last month to be the same number this week as it was last week.
The tension is real and does not resolve. Most stores need both, and the workable arrangement is one basis for the operating reports and the other for the accounts, with each labelled — rather than a single figure that quietly is one of them.
What order-date attribution costs you
Months change after they end. January revenue read in February is not January revenue read in April, because refunds kept arriving. If anyone downstream treats a monthly figure as final — a commission calculation, a board pack, a bonus accrual — this is a genuine problem and not a philosophical one.
Two mitigations, both partial. Report a fixed number of days after month end, so the return window has mostly closed. Or show both figures, the original and the refund-adjusted, side by side. The first is simpler and is what most stores end up doing.
What refund-date attribution costs you
Every high-return period is flattered at the time and punished later. A November campaign with poor product-market fit reports beautifully in November and drags January down, at which point the January team is asked to explain a number that has nothing to do with anything they did.
It also makes return rate by product genuinely hard: the refunds are in a different period from the sales they reverse, so a naive ratio of refunds to sales in one month compares two different populations.
I have never seen this decision made deliberately. It gets made by whoever wrote the first query, usually by joining on the date column that was already in the refund file, and then it is defended for years by people who were not there.
What settled it, at one business, was recomputing a single quarter both ways and putting the two series next to each other on one slide. The gap was eleven percent in the worst month. Nobody had believed it was material until they saw it, and the decision took about four minutes after that.
Doing it in Excel
Refund-date attribution is the easy one, because the date is already on the row:
Refund month =EOMONTH([@[Refund date]],0) Refunds =SUMIFS(Refunds[Amount],Refunds[Refund month],$A2)
Order-date attribution needs the order date joined onto the refund first:
Order date =IFERROR(SUMIFS(Orders[Order date],Orders[Order],[@Order]),"") Order month =IF([@[Order date]]="","unmatched",EOMONTH([@[Order date]],0))
The unmatched label is the important part. Refunds whose order is not in your file — outside the window, or with no order id — are real money, and a lookup that returns an error or a blank will drop them from the total without comment. Give them a bucket and let the amount be visible.
For a product-level breakdown, a partial refund against a multi-line order needs allocating across that order lines in proportion to line revenue, the same allocation described in the contribution margin piece. If the refund file names the specific line, use that instead — allocation is what you do when the information is missing, not an improvement on having it.
One basis, stated
Quiriz for e-commerce attributes refunds to the order date, so a month carries the reversal of its own sales and net sales, net revenue and contribution margin all move together. In Excel that is =QUIRIZ.ASK("net sales by month in 2025", "table"), and the basis is stated alongside the answer rather than left to be inferred.
The honest boundary: this means closed months can move. If your accounting needs an immutable monthly figure, the operating series here and the accounting series will differ during the return window, and they are supposed to. Two labels, two numbers, both correct — which is a much better position than one label and two numbers.
Get a monthly series that means one thing
Upload your order and refund exports and ask for net sales by month, with the refund basis attached to the answer. Free to start.
Try Quiriz free →