A brand that had been running level with last year through August, and had just pulled ~12% ahead over its last 5 days, opened its Friday-morning report on August 28 and saw week-to-date revenue down 18% against last year, with MER down 7% and CAC up 8%. Nothing was wrong with the business, and the number came from the comparison method most teams already consider the careful one, the same weekdays 364 days back.
Labor Day was September 1 in 2025 and September 7 in 2026, so lining up the same weekdays sets this year's ordinary Monday to Thursday against last year's Monday to Thursday of the pre-holiday build, when early-access emails and teaser promos were already lifting demand. We simulated a DTC brand through three years, and the first exhibit is what its Friday report showed, day by day, with last year plotted on the same weekdays.
What the Friday report showed
Daily net revenue, this year against last year on the same weekdays, 364 days back, which is how most weekly reports line up the weeks.
Why the careful comparison breaks here
The 364-day comparison lines up weekdays, but around a holiday demand runs on days-to-the-holiday, and a moving holiday drifts against it. Most teams moved off calendar-date comparisons years ago, because comparing a Saturday to a Friday adds noise every week, and 364 days back is exactly 52 weeks so every weekday matches. A holiday that falls on "the first Monday of September" lands either on the same aligned date or exactly one week later.
In 2026 it landed a week later, so under 364-day alignment Labor Day Monday, September 7, is compared against Monday, September 8 2025, an ordinary day. Demand into a holiday builds over the week or so before it, so the 2025 days sitting under this year's August 24-27 were 7 to 4 days before Labor Day and already climbing, and in the simulation the daily gap widens from ~-4% on Monday to ~-28% by Thursday. That reads as falling behind last year's build rather than as a calendar problem, and the week-to-date read lands at -18%. The full-week read the following Monday is worse at -34%, because it takes in last year's sale weekend, and the two Mondays after that swing to +67% and +28% once this year's build, sale and Labor Day are compared to ordinary days. The calendar-date read is no better (-9% week to date). Monthly views inherit the same problem one level up: most of last year's build and sale fell in August and this year's fell in September, so the simulated brand's August reads -9% and its September reads +30%, and neither is the growth rate.
The efficiency metrics carry the same error, because MER and CAC are ratios over the same wrong window, and that is what makes the false read convincing, because when revenue drops, MER slips 7% and CAC rises 8% in the same report, the room reads it as confirmation rather than one calendar artifact showing up three times.
The cost lands on the worst possible days. The -18% arrives on the Friday morning before the holiday weekend, in a week when the brand was actually pulling ahead, which is exactly when budgets get pulled, before anyone has worked out what happened. The Friday-to-Monday sale window a cut would hit carried ~33% of the three weeks around Labor Day in the simulation, at the best MER of the quarter (~5.3 against ~4.7 last year). A team that trims there is making its biggest budget call of the season on the wrong comparison.
Every weekday lined up, and this year's ordinary week still got compared against last year's pre-holiday build.
What the right answer looks like on that Friday
The useful answer on August 28 lines the years up on days before Labor Day instead of on calendar weeks, and says which comparison it used. Lined up that way, the four weeks ending 11 days out are roughly level with 2025 (+3%, MER 3.4 against 3.3), the last 5 of those days are +12% with MER 3.8 against 3.4, and last year's build and sale sit in the final 11 days, which this year hasn't reached yet, so the same Monday to Thursday that read -18% in the Friday report reads +13% on this basis.
Nothing in that answer needs a smarter analyst. It needs the comparison rule written into the metric definition, so every surface that reports year over year uses the holiday offset near a shifted holiday and says so. That rule is one of the things a governed data layer holds, and it only works on data you can slice by day and channel yourself, which is why we push brands toward first-party tracking over GA4.
Which holidays move in 2026 and 2027
Thanksgiving and BFCM line up in both 2026 and 2027, and besides Labor Day the moments that move are Easter, Father's Day, Prime Day and Memorial Day 2027. We computed each US retail moment's shift against 364-day alignment. A shift of 0 means the aligned week already contains the holiday, +7 means it lands a week later than the aligned date, and fixed-date holidays move one weekday per year.
Where a 364-day comparison puts each holiday
| Moment | 2025 | 2026 | 2027 | 2026 vs 2025 | 2027 vs 2026 |
|---|---|---|---|---|---|
| Easter | Sun Apr 20 | Sun Apr 5 | Sun Mar 28 | 2 weeks earlier | 1 week earlier |
| Mother's Day | Sun May 11 | Sun May 10 | Sun May 9 | Aligned | Aligned |
| Memorial Day | Mon May 26 | Mon May 25 | Mon May 31 | Aligned | 1 week later |
| Father's Day | Sun Jun 15 | Sun Jun 21 | Sun Jun 20 | 1 week later | Aligned |
| July 4 | Fri Jul 4 | Sat Jul 4 | Sun Jul 4 | 1 weekday later | 1 weekday later |
| Labor Day · this post | Mon Sep 1 | Mon Sep 7 | Mon Sep 6 | 1 week later | Aligned |
| Thanksgiving / BFCM | Thu Nov 27 | Thu Nov 26 | Thu Nov 25 | Aligned | Aligned |
| Christmas Day | Thu Dec 25 | Fri Dec 25 | Sat Dec 25 | 1 weekday later | 1 weekday later |
| Prime Day (start) | Tue Jul 8 | Tue Jun 23 | not announced | 2 weeks earlier | .. |
So a same-weekday November comparison is sound this fall. Easter sits two weeks off the aligned week in 2026 and one week off in 2027, and Father's Day and Prime Day both moved this past June (Prime Day from July into late June).
What to do about it
Keep 364 days as the default and add a holiday offset table. For any week within two weeks of a shifted moment, compare against the week at the same distance from last year's holiday. For Monday holidays that is a 371-day offset, which keeps weekdays aligned.
Compare sale windows as one block. Report Fri-Mon against Fri-Mon, and put the week before and the week after in the same view, since pulled-forward demand and the post-sale dip net out across the block and not inside any single week.
Treat fixed-date holidays by distance. July 4 and Christmas move a weekday each year, so compare days-to-holiday and, for Christmas, days-to-shipping-cutoff, rather than calendar weeks.
Make budget changes near a holiday wait for the aligned read. I would suggest a simple rule: no spend change inside two weeks of a holiday unless revenue, MER and CAC all hold on the holiday-aligned comparison.
Put the rule in the definition, not in someone's head. If the dashboard, the Monday email and the AI answer each compare differently, the loudest number wins the meeting.
If you want to check your own calendar before Easter and Memorial Day, the holiday table above is the list to start from, and I'm happy to walk through how we'd set up the comparison rule for your setup.
Common questions
How do I compare year over year sales when a holiday moves?
Keep the 364-day, same-weekday comparison as the default, and for any week within two weeks of a shifted holiday compare against the week at the same distance from last year's holiday. For a Monday holiday like Labor Day that is a 371-day offset, which keeps weekdays aligned. In our simulation the holiday-aligned read for Monday to Thursday, August 24-27, 2026 was +13%, with the last 5 days ~12% ahead of the same days before Labor Day last year, where the 364-day read showed -18%.
Why are my year over year sales down the week before Labor Day?
Labor Day fell on September 1 in 2025 and September 7 in 2026, so a 364-day comparison lines up this year's ordinary pre-holiday days with last year's pre-holiday build and sale weekend. In our simulation a brand running level with last year, and pulling ahead in its last 5 days, read -18% week to date on the Friday before Labor Day and -34% for the full week, then +67% and +28% in the two weeks after, with MER and CAC swinging the same way. Nothing changed in the business, and the swing comes from which days each week is compared against.
Is a 364-day comparison better than comparing the same calendar dates?
For ordinary weeks it is, because 364 days is exactly 52 weeks, so every weekday matches and you stop comparing a Saturday to a Friday. Around a holiday that moves, both methods break. In our simulation Monday to Thursday, August 24-27, 2026 read -18% on a 364-day basis and -9% on calendar dates, for a brand actually running ~12% ahead of the same days before Labor Day last year.
Why do MER and CAC look worse right before a holiday sale?
MER and CAC are ratios over the same comparison window as revenue, so when that window sets ordinary days against last year's pre-holiday build, they inherit the same error. In our simulation MER slipped 7% and CAC rose 8% alongside the -18% revenue read, which made one calendar artifact look like three confirming signals. Trimming spend in response would have hit the Friday-to-Monday sale window, which carried ~33% of the three weeks' revenue.
Do Thanksgiving and Black Friday shift in a 2026 year over year comparison?
No, Thanksgiving and BFCM line up under a 364-day comparison in both 2026 and 2027, so a same-weekday November comparison is sound. The moments that do shift are Labor Day 2026, Easter (two weeks off the aligned week in 2026 and one week off in 2027), Father's Day and Prime Day in June 2026, and Memorial Day 2027.
We build the governed metric layer that bakes the comparison rule into the definition, so the weekly report, the dashboard and the AI answer all compare against the right week.
See how it works →Illustrative brand, simulated to look like a ~$37M DTC business with a Labor Day sale; the read shown is the median of 200 runs, and the Friday panic landed between -15% and -22% in 90% of them. Holiday dates computed by rule; Prime Day uses Amazon's announced dates.