Email & Retention Project

Working plan · Companion to Grow Relaunch Plan (Move 4) · April 30, 2026

The Relaunch Plan sets the goal: lift Shopify repeat revenue from $1.46M (2025) to $1.80M+ (2026) — expressed in dollars, not share, so it doesn't pull against Move 1's new-customer revenue work. This document is the operational playbook for getting there. Structured as three phases run sequentially; we move to the next phase when the current one's deliverables are complete, not on a calendar.

Owner: Dan (plumbing) + Katelyn (content)

Phase 1

Audit and stabilize

1.1 — The seven-essentials benchmark audit

Frame the existing flow set against the seven essential e-commerce flows: welcome, browse abandonment, cart abandonment, checkout abandonment, post-purchase first-order, post-purchase repeat, and winback. For each, two questions:

Current state from the fresh Klaviyo MCP pull (90-day rolling):

Flow Recipients Revenue RPR Read
Welcome13,945$20,788$1.49Working well
Cart11,086$13,464$1.21Working well
Checkout5,810$8,566$1.47Working well
Winback25,394$5,504$0.22Underperforming — rebuild
Browse5,914$4,776$0.81OK; benchmark says could be 2×
SMS Welcome5,939$3,190$0.54Investigate (vs. email Welcome $1.49)
Post Purchase 1st Order25,487$2,044$0.08The big cliff. The prize.
Post Purchase 2nd Order10,293$1,173$0.11Underperforming
Cross-Sell6,023$1,217$0.20Underperforming
Thank You8,069$303$0.04Likely dead — investigate

The Post-Purchase 1st-Order flow is the biggest single conversion cliff in the data — and the v5/Letter framing is correct that it's the prize. Closing it from $0.08 to $0.50 RPR is roughly $50K/year of incremental retention revenue at zero variable cost.

1.2 — The Klaviyo attribution audit (do this before anchoring any RPR target)

Default Klaviyo attribution is last-touch with a 5-day window after an open or click. This setup is generous in two ways that matter:

Practical actions before we trust the $230K-attributed/year number:

  1. Confirm bot-click filtering is on in our account
  2. Tighten the attribution window from 5 days to 1-3 days (consider click-only, not open-or-click)
  3. Recompute attributed revenue under the tighter rule and compare to the loose-default number; the gap is the over-attribution
  4. Use the tighter number as our authoritative baseline going forward
⚠ PENDING DECISION — held for Katelyn discussion. Klaviyo only allows attribution settings to be changed once every two weeks. Once we change them, we're locked into the new configuration for that period regardless of what we learn. Worth waiting for Katelyn's input before flipping. The other Phase 1 deliverables (kill-list, deliverability walk, sender-reputation check) are not affected and can proceed.

This is a 30-minute audit in the Klaviyo UI. Dan and Claude will do this together so the settings work is visible and the resulting numbers are defensible to anyone who asks.

1.3 — The campaign kill list

Current 90-day campaign data shows the bottom 10 sends average $0.036 RPR vs. the top 10 at $0.106 — a 3× performance gap that's all in format choice. The bottom is dominated by the "RIQ Hack" and "Feature" formats:

Date Campaign Recipients Revenue RPR
Mar 10Weekly Hack: Linen Laundry103,208$3,319$0.032
Mar 28Spring Candles Feature79,677$3,013$0.038
Feb 12RIQ 12th February76,884$2,196$0.029
Mar 27Green Tea Matcha Feature64,409$2,231$0.035
Mar 2Vacuum Hack61,978$2,203$0.036
Apr 30Hack: 5-Minute Guest Prep48,997$937$0.019
(5 more in the same RPR band)

Three actions:

  1. Freeze the "Hack" format until redesigned. Single highest-frequency low-RPR pattern in the data.
  2. Move "Feature" sends to a smaller engaged-only segment instead of the full list. Don't kill outright — they may work as targeted content, just not as full-list pushes.
  3. Reallocate the freed frequency (currently ~25% of total send volume by these 10 alone) to launch announcements, scent-specific promotions tied to purchase history, and educational content tied to product benefits (the April 23 "Why Plant-Based Fragrance Behaves Differently" hit $0.091 RPR — solid for educational format).

1.4 — The deliverability and list-hygiene baseline

This is the one place we want to use the Klaviyo UI directly. The deliverability dashboard, sender-reputation, and per-domain complaint rates live in the account view, not the report APIs. Specifically we'll check:

Schedule: 30-minute screen share with Dan so the levers are visible in real time.

1.5 — Phase 1 deliverables


Phase 2

Targeted rebuilds + behavioral test program

2.1 — Split the welcome flow

Currently one Welcome Flow at $1.49 RPR doing three jobs:

Split into three paths, each tuned to context:

  1. Never-bought welcome — current flow's spine. Behavioral overlay: scarcity or social proof in subject line, A/B tested. Discount included since this customer hasn't bought yet.
  2. Already-bought welcome — much shorter (1-2 emails), no discount, focus on next-product affinity (spray buyer → diffuser pre-launch teaser; candle buyer → spray cross-sell). They've already paid full price; respect that.
  3. Re-subscriber welcome — acknowledges the comeback, re-establishes value prop, light offer.

This is Klaviyo's #1 audited fix per the Common Ground newsletter and the data behind it (audit of 100+ DTC brands). Concrete, executable, doesn't require offer-design innovation.

2.2 — Rebuild the post-purchase first-order flow (the prize)

Hypothesis on why the current flow is at $0.08: timing is wrong. Median time-to-second-order in our data is 85 days. Most post-purchase flows fire heavily in days 1-30. Customer is bombarded when they're not ready and silenced when they are.

Sequencing principle: organic before offers. Test what behavioral changes (timing, framing, content, social proof) do before introducing monetary discounts. This isolates which lever does what — if we run a timing change and a discount in the same arm, we can't tell which one moved the needle. Cleaner methodology, and it lets us see the ceiling of what we can achieve without giving away margin.

Wave 1 — organic test

If Wave 1 shows the organic ceiling (likely 2-5× the current $0.08 RPR), we'll know whether discount-based testing is even necessary. If we hit $0.30+ organically, the project is largely done. If we plateau at $0.15-0.20, then Wave 2 with discounts is warranted.

Wave 2 — offer test (contingent on Wave 1 results)

Run only if Wave 1 plateaus below the $0.50 target. Carry forward the winning organic configuration from Wave 1 as the new control, then test offer mechanics on top:

Discount code mechanics: when offers are introduced, use Klaviyo's dynamic unique codes (one-time-use, auto-generated per recipient via the Shopify integration). Prevents discount-hunter abuse and code-leakage to coupon sites.

Sample size discipline: each cell gets ~6,000 recipients at 90-day flow volume — enough to detect a 30% lift on a base conversion of 0.5% with 80% power. Document the win/no-win call before the wave starts; don't move the goalpost mid-test. Plan A/B with Klaviyo's built-in randomization.

2.3 — Rebuild the winback flow scent-specifically

Current winback: $0.22 RPR, 25K recipients touched, 0.4% conversion. That's underperforming for a flow with this much eligible volume. The current flow appears to be generic ("we miss you, here's 15% off"). Replace with scent-specific personalization:

This is a content lift (Katelyn) plus a flow-logic build (Dan). Plumbing-wise it requires a scent-tag on every customer's purchase history, which we already have via fact_orders and could surface to Klaviyo via a profile property feed.

2.4 — Loss-framing test on Browse + Cart + Checkout

Currently Browse $0.81 / Cart $1.21 / Checkout $1.47. Test loss-framing in subject lines:

Tight A/B — these flows have enough volume that 2-week cycles can call winners reliably.

2.5 — SMS Welcome investigation

Email Welcome RPR $1.49; SMS Welcome RPR $0.54. Three hypotheses:

  1. SMS list quality is lower (acquired via low-intent popup paths)
  2. SMS discount stack is different (smaller offer)
  3. SMS welcome content is less developed than email

Action: pull the SMS Welcome content and offer mechanics, compare to email Welcome, identify the gap, fix the obvious deltas. Cost-cutting consideration: SMS is more expensive per send than email; if SMS Welcome ROI is genuinely thin, restrict SMS to higher-intent moments (cart, exclusive launches) and stop running it as a parallel channel for everything.

2.6 — Phase 2 deliverables


Phase 3

Build what's missing + segmentation harvest

3.1 — Birthday flow (quick win)

Currently no birthday flow. Per industry data, birthday emails run a 481% higher transaction rate than promotional, $744 AOV, 43.3% open rate. ~2 hours of build work; the gating constraint is having birthday data collected.

  1. Add birthday field to popup with framing "Share for a special treat." Day + month, no year (less invasive, more people share). Mark optional; don't gate signup.
  2. Build the flow: trigger at midnight on the birthday. Three emails: morning ("happy birthday, here's a treat"), afternoon reminder ("12 hours left to claim your gift"), end-of-day last-chance.
  3. Discount mechanics: dynamic unique codes only. Code expires at end of the day (urgency without abuse). Discount large enough to feel celebratory — 20-25%, not 5%.
  4. Sustained measurement: even 20-30% birthday-data coverage is enough to make the flow worth running. Data coverage will grow naturally over time.

3.2 — RFM segmentation rollout

Klaviyo has built-in RFM (Recency / Frequency / Monetary). Auto-sorts every customer into 6 groups: Champions, Loyal, Recent, Needs Attention, At Risk, Inactive. Updates every 24 hours.

Note: requires Klaviyo Marketing Analytics or Advanced KDP add-on (paid). Audit current plan before assuming this is on.

What we'd actually do with it:

  1. Stop discounting Champions. Currently we run promotional sends to the entire engaged list, including people who'd buy anyway. Suppress Champions from discount-led campaigns. Send them content sends (launches, education) at full price.
  2. Activate Needs Attention + At Risk. These are the highest-value recovery targets — customers who used to buy frequently but have gone quiet. They're not "dead" — they're recoverable with the right offer or product news. Trigger flows specific to these segments.
  3. Test reactivation on Inactive. The "dead customers driving 15% of campaign revenue" case study suggests it's worth running scent-anniversary or product-news campaigns to long-inactive customers periodically. Test against a holdout to measure incremental.

This is also our segmentation answer that doesn't require a multi-week project — Klaviyo computes the segments automatically and we use them in flows and campaigns.

3.3 — Browse abandonment optimization

Current Browse Flow at $0.81 RPR. Per the benchmark, Browse Abandonment is the second-highest ROI flow when properly built. Audit our current setup against best practice — likely improvements: tighter trigger window, scent-specific browse-to-purchase logic (not generic "you looked at something"), product-stock messaging where relevant.

3.4 — Plain-text format test on educational content

For the "Hack" / "Feature" sends we paused in Phase 1 — instead of killing outright, redesign as plain-text-style emails before retiring. The HubSpot research suggests text-forward emails get 42% more clicks for non-product content. Test version: same content, plain-text styling (single text column, no hero image, no styled buttons — just inline links). If RPR moves from $0.03-0.04 to $0.10+, the format may be salvageable. If not, kill.

3.5 — Diffuser launch email path

Per the Relaunch Plan Move 3: the diffuser launch needs a dedicated email path. Build during Phase 3 in time for Q3 launch:

This integrates the email project directly into the Move 3 launch.

3.6 — Phase 3 deliverables


Klaviyo cost optimization

Treated as a parallel cost workstream — does not gate any of the strategy above.

How Klaviyo's billing model works (the foundational thing)

Klaviyo charges on three axes that combine to form the bill:

  1. Active profile count. "Active" means anyone you've sent a message to or has been processed by a flow. The pricing is tiered — discrete steps at 25K, 50K, 75K, 100K, 130K, 150K, etc. Each step up costs roughly $60/mo per 5K profiles in our range. This is the dominant cost driver.
  2. Email send volume. A monthly cap on how many emails the plan allows. Each profile tier comes with a bundled send allowance (130K profiles → 1.3M sends/mo for us). If you exceed the allowance, Klaviyo's response depends on a setting (covered below).
  3. Mobile (SMS) credits. A separate plan, billed independently. We're paying $630/mo for 125K credits.

There's a fourth lever that controls everything: the upgrade preference. Klaviyo gives you two mutually-exclusive options:

The default auto-upgrade is the "aggressive" behavior — once it's on, your bill can only ratchet upward, never downward, no matter how clean your list is. Switching to auto-downgrade flips that dynamic.

Where we are today (from April 2026 invoice + Preferences page)

Line item Monthly Limits
Profiles + email$1,725130,000 active profiles, 1,300,000 sends
Mobile messaging$630125,000 mobile credits
ReviewsFree50 review orders
Subtotal (base)$2,355
Recent monthly invoices$2,790(delta = ~$435/mo of overages or top-ups — needs investigation)

Trajectory check: monthly base went from $1,970 (Sep 2025) to $2,790 (Apr 2026). That's +42% in 7 months. The driver is the "Auto-upgrade on sends" preference.

Send volume reality check: 90-day Klaviyo data shows ~944K sends/month average against a 1.3M allowance — we're at 73% of capacity. After Phase 1's kill-list (which removes ~25% of campaign volume from the bottom-10 underperformers), we'll be closer to 700K/month — well under the 1M tier limit.

SMS volume reality check: combined SMS sends across the welcome, review-ask, and 3 SMS campaigns total ~30K/month against the 125K credit allowance. We're paying for ~4× the SMS capacity we use.

Recommended moves, in order

  1. Switch the email upgrade preference from "Auto-upgrade on sends" to "Auto-downgrade on profiles." This requires giving up automatic upgrade if we ever cross the send threshold (we'd manually upgrade), but unlocks the auto-downgrade we actually want. Safe given our 27% send headroom (which becomes 50%+ after the Phase 1 kill-list). One-click change in the Preferences page. Done by Dan, April 30.
  2. Run the profile sunset rule. Suppress profiles with no opens/clicks in 12+ months and no orders in 18+ months. Conservative expectation: 20-25% profile reduction (130K → ~100-105K). At Klaviyo's tier pricing of roughly $60 per 5,000 profiles, that's $300-360/mo savings ($3,600-$4,320/year).
  3. SMS tier audit. Drop from 125K mobile credits to a tier closer to actual use (e.g. 50K, leaving ~60% headroom over current 30K/mo). At ~$45/tier-step, the downgrade saves roughly $45-90/mo ($540-1,080/year). Pair with the SMS Welcome diagnosis from Phase 2.
  4. Investigate the ~$435/mo of recurring extras. The pattern of $45 / $55 / $110 / $115 charges across many days each month suggests either SMS credit top-ups, recurring add-ons, or per-send overages. Worth 15 minutes in the billing detail to identify and decide whether to cut.
  5. Consider annual prepay. Klaviyo offers 10-15% discount for annual vs. monthly. After steps 1-4 land, on a post-optimization $2,000/mo bill: $200-300/mo equivalent ($2,400-3,600/year). Cash-position dependent.
    ⚠ PENDING DECISION — held for discussion with Katelyn (only move with a 12-month lock-in; not as easily reversible as the other three). Cash question raised with Nikita ahead of next finance meeting.

Conservative projected savings

Move Monthly Annual
Profile sunset (130K → ~100K)$300-360$3,600-4,320
SMS tier downgrade (125K → 50K credits)$45-90$540-1,080
Cut recurring extras (after audit)$100-200$1,200-2,400
Annual prepay on remaining bill$200-300$2,400-3,600
Total$645-950/mo$7,740-11,400/yr

Floor of the range is the safe bet. Ceiling depends on what the recurring-extras audit surfaces and how much the sunset can prune.

Why each move doesn't hurt current or future work

Move 1 (sunset rule) — the rule targets profiles with no engagement in 12+ months and no orders in 18+ months. Both conditions have to be true. That double-condition is the safety net: a customer who ordered 14 months ago but hasn't opened an email since stays in the active list. The customer who opens emails periodically but hasn't bought yet stays. Only profiles that show no signal on either dimension get suppressed. Those profiles aren't deleted — they're moved to a "suppressed" segment. We can re-engage them later with an exception campaign (e.g. a major product launch). They just stop counting toward the active billing tier. Sender reputation actually improves with sunset; ISPs penalize repeated sends to unengaged inboxes, so cutting deadweight makes our delivered-to-inbox rate go up for the customers who DO engage. Net positive for the retention engine.

Move 2 (SMS tier downgrade) — we're paying for 125K credits and using 30K. We'd downgrade to ~50K, which still leaves 60% headroom over current usage. If SMS volume ever spikes, the auto-upgrade behavior would kick back in (or we'd manually upgrade — one click). Phase 2 includes an SMS Welcome diagnosis, and if SMS doesn't pull its weight there, we'd shrink further. Either way, paying for unused capacity now is wasteful.

Move 3 (recurring extras audit) — this is information-gathering before any cost cut. We're not removing anything until we know what those $45/$55/$110 charges are for. Could be SMS overages, could be add-on features, could be one-time top-ups. Risk: zero, because no action is taken until we understand.

Move 4 (annual prepay) — the only tradeoff is locking in 12 months of payment up front. The risk is reduced flexibility (if we wanted to leave Klaviyo or significantly change our plan we'd be partly committed). Cash position dependent. No operational risk.

What happens if user count grows

Switching to auto-downgrade-on-profiles means:

In practice this means growth is paid for in proportion to actual scale, not on the aggressive default of "bumped up by send volume that may or may not represent real list growth." More predictable, more cost-efficient.

For send volume specifically: Phase 1 kill-list cuts ~25% of send volume immediately. Phase 2 work mostly reduces sends-per-recipient (more targeted, less broadcast). Phase 3 birthday flow adds modest volume (maybe 3K sends/month). RFM segmentation is net-down on volume because we'd send fewer campaigns to everyone (Champions get suppressed from discount-led sends) and more targeted ones to smaller segments. Net trajectory for sends: flat-to-down for the next several months. Even if list grows, send volume per profile drops as we get more disciplined.

Cost-cutting risk checklist

Before any cost-cutting move, confirm:


What we're not doing (yet)

Recorded so they don't get pulled in mid-project:


Best practices the team should know

Brief reference list for Katelyn and any agency partners:


Working method with Katelyn — per-email briefs

Dan and Claude design the flow logic and produce a brief per email. Katelyn produces the actual copy and design from those briefs. This keeps content production fast (Katelyn doesn't have to design strategy from scratch) and keeps strategy concrete (we're not handing off vague intent).

Brief format, half-page or less, one per email per flow:

Flow:      [Welcome — Never Bought / Post-Purchase 1st-Order Wave 1 Cell B / etc.]
Email #:   [1 of 3 / 2 of 4 / etc.]
Timing:    When this fires (day, hour, post-trigger event)
Customer:  Who they are at this moment, what they just did,
           what they want, what objections they have
Purpose:   The single conversion or movement this email is trying to produce
Levers:    Behavioral econ angles, subject line directions,
           format notes (HTML or plain-text)
Content:   Text-based summary of what the email needs to say
Avoid:     What this email should NOT do

Briefs will be produced as part of Phase 2 deliverables — one per email per flow we touch. Estimated total: ~40-50 briefs across Phase 2 (welcome split, post-purchase wave 1, winback rebuild, browse/cart/checkout loss-framing). Each brief is short; the work is in the per-email thinking, not the formatting.


Open questions and decisions

# Question Status
1Katelyn involvement timingResolved — solo work for now, Katelyn layers in at Phase 2 content rebuilds
2Klaviyo plan tier / RFM add-on statusDan to grab from latest Klaviyo invoice and share
3Discount test budgetResolved — organic-first sequencing (Wave 1), discount-based Wave 2 contingent on Wave 1 results
4Time frameResolved — phases run sequentially, advance when each phase's deliverables are complete; no calendar deadline
5Klaviyo customer-success benchmark auditRecommendation: yes, request during Phase 1. 30-minute call. Dan to confirm.
6Attribution settings change (Phase 1.2)Pending Katelyn discussion. Klaviyo's 2-week lock on attribution changes means we want her input before flipping. Other Phase 1 deliverables can proceed without this.