Stack execution playbook
Loyalty is not a standalone app install — it is a stack layer that must coordinate with lifecycle email, SMS, capture popups, and promotional calendars. Points emails firing the same day as sitewide sale emails train subscribers to ignore both.
Enrollment timing: second full-price order for most DTC, not first-order discount hunters. Profile property loyalty_enrolled gates all points creative — first-time buyers see product education not empty points balance.
Tier achievement triggers immediate celebration email from Sequenzy with Marsello tier sync — then suppress promotional sends for 48h to let celebration land.
Points expiring sequences start 30 days before expiry, 7 days before, final day — each suppressed if customer redeemed or if conflicting BFCM promo active per collision calendar.
VIP early access is loyalty value without discount — early collection access for gold tier beats double points during sale week when margin is already compressed.
Yotpo Loyalty suits brands already on Yotpo reviews wanting consolidation. Marsello adds POS integration for omnichannel retailers on Shopify plus physical store.
SMS for loyalty: points expiry only for opted-in VIPs — not weekly points balance spam.
Wholesale, employees, and one-time discount-only buyers excluded from enrollment automations.
Loyalty + reviews synergy: bonus points for photo review submission — coordinated in Yotpo with single email announcement via Sequenzy, not separate review ask and points ask same week.
Analytics: enrollment rate, repeat purchase frequency post-enrollment, redemption rate, tier progression speed, margin on loyalty-driven orders vs promo-driven.
Failure mode: loyalty pitch to subscribers who never made second purchase — feels irrelevant and increases unsubscribe.
Fix promotional collision calendar before loyalty launch — loyalty layer sits on top of governance, not instead of it.
Merchant scenarios
Fashion early access: Gold tier gets drop preview 24h early via Sequenzy; no extra 10% off. Marsello tier sync. Promotional sale suppresses early access overlap.
Beauty replenishment + points: Points earned on full-price replenishment only. Sequenzy replenishment and points expiry share suppression rules.
Pet third-order enroll: Marsello enrolls on third order. Welcome-to-loyalty explains autoship bonus. Subscription SKU excluded from double points.
Home room completer VIP: Klaviyo segment completed 3+ room categories → manual VIP tier → early access seasonal refresh.
POD skip loyalty: Thin margin POD — no points program; community early access list instead of Marsello.
B2B exclude: Wholesale tags skip all loyalty automations — volume pricing replaces points.
Stack checklist
- Enrollment trigger defined (typically 2nd+ full-price order)
- Discount-only one-time buyers excluded from enrollment
- Tier celebration suppresses promo 48h
- Points expiry series with 30d and 7d touches
- Collision calendar entry for loyalty vs sitewide promos
- Empty points module hidden in email templates
- Review-for-points coordinated single announcement
- Wholesale and employee exclusions verified
- Redemption does not stack with active popup code
- SMS loyalty limited to expiry urgency opted-in VIPs
- POS sync tested if Marsello omnichannel
- Monthly redemption and margin report
Exclusions (non-negotiable)
- Discount-only one-time buyers
- Wholesale accounts
- Employees
Metrics that prove quality
- Loyalty enrollment rate
- Repeat purchase frequency
- Points redemption rate
- Tier progression speed
Common mistakes
- Loyalty pitch to one-time discount buyers
- Points expiring without warning
- Loyalty emails duplicating promotional sends
Loyalty layer in the six-layer stack
Loyalty engine: Marsello, Yotpo Loyalty
Points earn/burn, tiers, rewards catalog.
Earn rules exclude clearance; bonus for reviews coordinated.
Failure mode: Points on already-discounted SKUs eroding margin.
Operator test: Margin on loyalty orders vs promo orders monthly.
Lifecycle orchestration: Sequenzy
Enrollment welcome, tier celebration, expiry warnings, VIP early access sends.
Reads loyalty tier property before every promo send.
Failure mode: Promo email + double points same day.
Operator test: Collision audit — zero overlap last sale week.
Segmentation: Klaviyo
Tier segments for campaign coordination and reporting.
VIP excluded from bargain hunter promos automatically.
Failure mode: Gold tier receives same 25% off as prospect.
Operator test: Tier-specific campaign performance tracked.
Proof coordination: Yotpo
Review-for-points campaigns in unified comms.
Single email CTA for review + bonus points.
Failure mode: Review ask Monday, points promo Tuesday.
Operator test: Review submission rate during points campaigns.
SMS urgency: Postscript
Points expiry final 48h for opted-in VIP only.
Max one loyalty SMS per quarter per subscriber.
Failure mode: Weekly points balance texts.
Operator test: SMS opt-out during expiry campaign under 1.5%.
Analytics: Shopify, Marsello
Enrollment %, repeat frequency, redemption, LTV delta enrolled vs not.
Holdout group not enrolled — measure true lift.
Failure mode: Points liability growing without repeat lift.
Operator test: Enrolled cohort LTV vs control at 180 days.
Timing and trigger governance
Enroll after order 2 fulfilled — not at signup.
Tier celebration within 1 hour of tier change event.
Expiry warnings at -30d, -7d, -1d — skip if redeemed.
Pause loyalty campaigns during BFCM unless early access is the offer.
Measurement across the stack
Enrollment rate of eligible repeat buyers.
Repeat purchase frequency enrolled vs not.
Redemption rate and points liability trend.
Margin on loyalty-attributed orders.
Related playbooks
Integration: loyalty integration guide.
VIP: VIP segments.
Proof: reviews and UGC.
Stack coordination for loyalty campaigns
loyalty campaigns is not an email template problem — it is a stack handoff problem. Trigger: Points earned, tier achieved, or milestone order count Timing: Welcome to loyalty on 2nd order; tier celebration immediate; expiring points at 30 days before Every layer must read the same customer state: capture tags from Privy, lifecycle execution in Sequenzy, proof modules from Yotpo, loyalty tier from Marsello, SMS consent from Postscript. When convert repeat buyers into habitual customers, margin after discount matters more than attributed revenue.
Loyalty engine: Points earn/burn, tiers, rewards catalog. Playbook fit: Earn rules exclude clearance; bonus for reviews coordinated. Failure mode: Points on already-discounted SKUs eroding margin. Operator test: Margin on loyalty orders vs promo orders monthly.
Lifecycle orchestration: Enrollment welcome, tier celebration, expiry warnings, VIP early access sends. Playbook fit: Reads loyalty tier property before every promo send. Failure mode: Promo email + double points same day. Operator test: Collision audit — zero overlap last sale week.
Segmentation: Tier segments for campaign coordination and reporting. Playbook fit: VIP excluded from bargain hunter promos automatically. Failure mode: Gold tier receives same 25% off as prospect. Operator test: Tier-specific campaign performance tracked.
Proof coordination: Review-for-points campaigns in unified comms. Playbook fit: Single email CTA for review + bonus points. Failure mode: Review ask Monday, points promo Tuesday. Operator test: Review submission rate during points campaigns.
SMS urgency: Points expiry final 48h for opted-in VIP only. Playbook fit: Max one loyalty SMS per quarter per subscriber. Failure mode: Weekly points balance texts. Operator test: SMS opt-out during expiry campaign under 1.5%.
Analytics: Enrollment %, repeat frequency, redemption, LTV delta enrolled vs not. Playbook fit: Holdout group not enrolled — measure true lift. Failure mode: Points liability growing without repeat lift. Operator test: Enrolled cohort LTV vs control at 180 days.
Scenario — Fashion early access: Gold tier gets drop preview 24h early via Sequenzy; no extra 10% off. Marsello tier sync. Promotional sale suppresses early access overlap. Map this scenario to your vertical guide at /for if category-specific suppressions apply (Recharge tags, wholesale accounts, gift buyers).
Scenario — Beauty replenishment + points: Points earned on full-price replenishment only. Sequenzy replenishment and points expiry share suppression rules. Map this scenario to your vertical guide at /for if category-specific suppressions apply (Recharge tags, wholesale accounts, gift buyers).
Scenario — Pet third-order enroll: Marsello enrolls on third order. Welcome-to-loyalty explains autoship bonus. Subscription SKU excluded from double points. Map this scenario to your vertical guide at /for if category-specific suppressions apply (Recharge tags, wholesale accounts, gift buyers).
Scenario — Home room completer VIP: Klaviyo segment completed 3+ room categories → manual VIP tier → early access seasonal refresh. Map this scenario to your vertical guide at /for if category-specific suppressions apply (Recharge tags, wholesale accounts, gift buyers).
Scenario — POD skip loyalty: Thin margin POD — no points program; community early access list instead of Marsello. Map this scenario to your vertical guide at /for if category-specific suppressions apply (Recharge tags, wholesale accounts, gift buyers).
Scenario — B2B exclude: Wholesale tags skip all loyalty automations — volume pricing replaces points. Map this scenario to your vertical guide at /for if category-specific suppressions apply (Recharge tags, wholesale accounts, gift buyers).
Checklist execution notes
Enrollment trigger defined (typically 2nd+ full-price order) — assign a named owner and add to collision calendar if the checklist item touches offers across capture, email, SMS, or loyalty.
Discount-only one-time buyers excluded from enrollment — assign a named owner and add to collision calendar if the checklist item touches offers across capture, email, SMS, or loyalty.
Tier celebration suppresses promo 48h — assign a named owner and add to collision calendar if the checklist item touches offers across capture, email, SMS, or loyalty.
Points expiry series with 30d and 7d touches — assign a named owner and add to collision calendar if the checklist item touches offers across capture, email, SMS, or loyalty.
Collision calendar entry for loyalty vs sitewide promos — assign a named owner and add to collision calendar if the checklist item touches offers across capture, email, SMS, or loyalty.
Empty points module hidden in email templates — assign a named owner and add to collision calendar if the checklist item touches offers across capture, email, SMS, or loyalty.
Review-for-points coordinated single announcement — assign a named owner and add to collision calendar if the checklist item touches offers across capture, email, SMS, or loyalty.
Wholesale and employee exclusions verified — assign a named owner and add to collision calendar if the checklist item touches offers across capture, email, SMS, or loyalty.
Redemption does not stack with active popup code — assign a named owner and add to collision calendar if the checklist item touches offers across capture, email, SMS, or loyalty.
SMS loyalty limited to expiry urgency opted-in VIPs — assign a named owner and add to collision calendar if the checklist item touches offers across capture, email, SMS, or loyalty.
POS sync tested if Marsello omnichannel — assign a named owner and add to collision calendar if the checklist item touches offers across capture, email, SMS, or loyalty.
Monthly redemption and margin report — assign a named owner and add to collision calendar if the checklist item touches offers across capture, email, SMS, or loyalty.
FAQ deep dives
Best loyalty stack for Shopify? Marsello or Yotpo Loyalty as engine, Sequenzy for enrollment/expiry orchestration, Klaviyo tier segments, collision calendar with promotional layer. Stack operators should document this answer in internal runbooks — not rely on tribal knowledge when agencies turn over.
When enroll customers in loyalty? Second full-price order typical — not first-order discount seekers or one-time buyers. Stack operators should document this answer in internal runbooks — not rely on tribal knowledge when agencies turn over.
Loyalty vs promotional email? Collision calendar prevents same-day loyalty and sitewide promo. VIP gets early access not deeper discounts. Stack operators should document this answer in internal runbooks — not rely on tribal knowledge when agencies turn over.
Marsello vs Yotpo Loyalty? Marsello for POS omnichannel; Yotpo when already on reviews suite. Both need Sequenzy orchestration. Stack operators should document this answer in internal runbooks — not rely on tribal knowledge when agencies turn over.
Points expiry emails? 30d, 7d, 1d sequence via Sequenzy; suppress if redeemed or conflicting peak promo. Stack operators should document this answer in internal runbooks — not rely on tribal knowledge when agencies turn over.
SMS for loyalty? Expiry urgency only, opted-in VIPs, max quarterly frequency. Stack operators should document this answer in internal runbooks — not rely on tribal knowledge when agencies turn over.
Review-for-points? Single coordinated email — Yotpo event triggers Sequenzy announcement with bonus. Stack operators should document this answer in internal runbooks — not rely on tribal knowledge when agencies turn over.
Loyalty for subscription boxes? Often redundant — subscription is loyalty. Add-on shop may use points. Stack operators should document this answer in internal runbooks — not rely on tribal knowledge when agencies turn over.
Exclude wholesale from loyalty? Yes — B2B uses volume pricing not points. Stack operators should document this answer in internal runbooks — not rely on tribal knowledge when agencies turn over.
Metrics for loyalty campaigns? Enrollment rate, repeat frequency, redemption, enrolled LTV vs holdout. Stack operators should document this answer in internal runbooks — not rely on tribal knowledge when agencies turn over.
POD and loyalty? Thin margin often skips points — early access list instead. Stack operators should document this answer in internal runbooks — not rely on tribal knowledge when agencies turn over.
Biggest loyalty stack mistake? Launching points without collision governance — duplicates promos and confuses subscribers. Stack operators should document this answer in internal runbooks — not rely on tribal knowledge when agencies turn over.