Casa Loyalty now recalculates a customer's VIP tier against a moving window of activity, instead of hard-resetting them to the bottom tier on a calendar deadline. Rolling is a new fourth Tiers Reset Settings option, alongside Lifetime, One Year, and N Years — bringing Casa to parity with LoyaltyLion, Yotpo, Rivo, and Smile.io, which all treat rolling windows as the default tier model.
How it works
On the VIP program page, choose a window of 3–36 months (or a custom value, default 12). Each customer is re-scored on their trailing activity within that window and placed on whichever tier they currently qualify for — held, upgraded, or downgraded — rather than being dumped at the floor.
What gets scored
Rolling scores the right metric for your program type:
Points-basis programs sum qualifying VIP earn activity within the window — not the ever-growing cumulative points total.
Spend-basis programs use order spend within the window.
Upgrades and downgrades work like normal tier changes
Recalculation re-runs the existing tier engine, so an upgrade still grants tier rewards and a downgrade still revokes them through the same paths you already rely on. There's no separate hard-reset demotion path to worry about.
Mass-downgrade safe
Turning Rolling on — or shortening an existing window — never downgrades anyone based on partial-window data. An enable/shorten floor holds every customer at their current tier until a full window has actually elapsed. This floor is enforced everywhere, not just on the nightly sweep:
The nightly sweep
Activation recalculation
Order, refund, and cancellation webhooks
Changing settings later is non-destructive
Lengthening the window re-derives each customer's next recalculation date from their own anchor.
Shortening the window moves the floor forward instead of demoting anyone immediately.
Switching to Lifetime pauses recalculation entirely.
Both cases recompute immediately at save time.
Manual pins and locks always win
A rolling recalculation never moves a pinned or locked customer. If a downgrade would otherwise cross a pinned tier, it's clamped at the pin instead.
Under the hood
Rolling recalculation runs once per window (not nightly) inside the existing 02:00 UTC VIP scheduler — no new cron job is added. The app and worker engines are kept in lockstep.
Where it shows up
The recalculation date and the recomputed tier are storefront-consistent, surfacing on:
The account page
The widget
The metafield
Displayed progress never reads below the tier a customer currently holds.
Localization
Fully localized across all 25 admin/VIP locales, including a rolling-specific description in the activation modal.
Quick recap
Where to find it: VIP program > Tiers Reset Settings > select Rolling.