Journal / Cohorts
28 January 2026 · 9 min
Cohort windows that respect a Thai retail calendar
ISO weeks are a gift to people who do not run stores. They line up neatly, they survive a pivot table, and they make Songkran look like a mysterious dip in week 15. It is not mysterious. Families leave town. Some banners close early. Petrol earn spikes on the highways and dies in the city. A loyalty cohort that ignores that is not “global best practice.” It is a calendar error.
At Sensor Nodehub we draw the year before we draw the cohort. Chinese New Year, Songkran, mid-year school holidays, and the late-year travel bulge are marked as first-class windows. A guest acquired on 8 April is not in the same behavioural month as a guest acquired on 8 March, even if both are “April cohorts” in a vendor default.
Earn cycles are lumpy on purpose
Grocery baskets swell before festivals. Fashion markdowns cluster after them. Pharmacy is steadier, which is why pharmacy students in the studio often finish taxonomy week faster and then stumble on attachment: their earn looks “healthy” because people still get ill in April.
The practical move is boring. Keep a dated calendar table — not a screenshot in a slide — and join it to every cohort you publish. When finance asks why week 15 looks weak, you point at the table instead of inventing a product story.
Holdouts need the same honesty
Experiment design inside a live loyalty calendar fails when the holdout sits across a festival and the treatment does not, or the reverse. Module six of Loyalty Signal Architecture spends an entire week on this, because we have watched otherwise careful analysts declare victory on a push test that simply missed Songkran traffic.
If your company reports in ISO weeks for the board, fine. Translate. Do not think in those weeks when you decide who is attached.