AlphaStyle × GTW · Phase 1 Build

Email Templates — 16 Builds, Two Formats

Each Phase 1 email rendered as both a visual mockup (modern HTML for Figma import) and a Klaviyo-ready production version (table-based, paste into Klaviyo's HTML editor). Real Shopify CDN imagery, refined to alphastyle.store voice, all merge tags wired up. Browser preview: cart and order emails use static product image URLs in <img> and CSS heroes so previews load here and in the iframes below; when pasting into Klaviyo for live cart/order flows, swap those src values back to {{ event.extra.line_items.0.product.images.0.src|default:'…same URL…' }} so each send pulls the real line item.

16 emails
4 flows · 32 files
2 templates (Editorial Refined · Drop Mode)
0 public discount codes (kill before launch)
Client uploads · per-email assets + approve / notes

Welcome Series · 5 Emails

Trigger: List Subscribed (newsletter). Madhappy → Represent → Moose Knuckles → discount → final nudge. Code WELCOME10 lives only in Email 4.

Abandoned Cart · 3 Emails

Trigger: Started Checkout (no order). Gentle reminder → social proof (Drop Mode) → CART10 lever. Code lives only in Email 3, 24-hour expiry.

Post-Purchase · 4 Emails

Trigger: Placed Order. Confirm → ship → deliver → review request. Email 4 (review) is gated on Judge.me / Loox going live.

Win-Back · 4 Emails

Trigger: Day 60 since last order. Day 60 → 90 → 120 → 135. Voice refined from the design book's casual profanity to alphastyle.store's editorial register.

Send Settings — Subject Lines + Preview Text

Paste these into Klaviyo's send settings for each campaign. A/B variants included where it makes sense to test.

EmailSubject A (primary)Subject B (test)Preview
Welcome 01Welcome to AlphaStyle.You're in.We don't do basics. Here's why.
Welcome 02Why we built the Kudu.A note from the founder.Nothing existed at this price. So we built it.
Welcome 03What customers are wearing.The lineup, right now.Built for –40°C. Worn on the 6 train.
Welcome 0410% off your first order — WELCOME10Your welcome gift.Expires in 72 hours. The only place this code lives is here.
Welcome 05One last thing.The Kudu sells out. Every winter.The pieces that disappear first, and why.
Cart 01Still there, {{ first_name }}?Your cart is waiting.Your cart is saved. No pressure.
Cart 02What's holding you back?Others are buying it.You're not the first one to think about it.
Cart 03One last try, {{ first_name }} — 10% off, 24 hours.We rarely do this. CART10 inside.The first and last code we'll send for this cart.
Post-Purchase 01Order confirmed · #{{ event.order_id }}We've got your order, {{ first_name }}.Order #{{ event.order_id }} · we're packing it now.
Post-Purchase 02It's on the way.Your AlphaStyle shipped.Tracking attached. Should be with you in 3–5 days.
Post-Purchase 03It's there.Your AlphaStyle arrived.A few ways to style what you just got.
Post-Purchase 04How's the {{ event.extra.line_items.0.product.title }}?Quick review?Two weeks in — how's it working out?
Win-Back 01It's been a minute.A few new things since you were last here.No discount. No pitch. Just what's new.
Win-Back 02A few things changed.Free shipping. 60-day returns.The friction we used to have is gone.
Win-Back 0315% off — welcome back.COMEBACK15. One week.No minimum. No exclusions. Just the offer.
Win-Back 04This is goodbye, unless…We'll stop after this.No more emails after this. Promise.

Klaviyo Merge Tags Used

Every dynamic field across the 16 emails. Make sure these profile properties + event variables are populated before activating each flow.

TokenTypeUsed InNotes
{{ first_name }}Profile propertyAll flowsAlways wrap with |default:'' — empty string is better than "Hi ,"
{{ organization.url }}Org settingAll emailsKlaviyo built-in. Set in Klaviyo > Settings > Account.
{{ event.checkout_url }}Event variableCart 01, 02, 03From Started Checkout / Checkout Started events. Direct resume link, not homepage.
{{ event.extra.line_items.0.product.title }}Event variableCart, Post-PurchaseFirst line item. For multi-item carts, loop in Klaviyo dynamic blocks.
{{ event.extra.line_items.0.variant.title }}Event variableCart, Post-PurchaseColor/size combo. Empty if product has no variants.
{{ event.extra.line_items.0.quantity }}Event variableCart, Post-PurchaseFalls back to '1' in defaults.
{{ event.extra.line_items.0.product.images.0.src }}Event variableCart, Post-PurchaseFalls back to Kudu hero if missing.
{{ event.extra.line_items.0.line_price }}Event variablePost-Purchase 01Per-line price.
{{ event.extra.value }}Event variableCart 01, 02, 03Total cart value. Use |floatformat:2 for $X.XX format.
{{ event.order_id }}Event variablePost-Purchase 01–04Shopify order number.
{{ event.extra.subtotal_price }}Event variablePost-Purchase 01Pre-tax / pre-shipping total.
{{ event.extra.total_tax }}Event variablePost-Purchase 01Calculated tax.
{{ event.extra.total_price }}Event variablePost-Purchase 01Final order total.
{{ event.extra.shipping_address.* }}Event variablePost-Purchase 01name, address1, city, province_code, zip.
{{ event.extra.tracking_number }}Event variablePost-Purchase 02From Shopify Fulfilled webhook.
{{ event.extra.tracking_url }}Event variablePost-Purchase 02Carrier-specific tracking URL.
{{ event.extra.carrier }}Event variablePost-Purchase 02UPS, USPS, Canada Post, etc.
{{ event.extra.delivered_at }}Event variablePost-Purchase 03Date delivered. Use Klaviyo date filter.
{{ event.extra.delivery_location }}Event variablePost-Purchase 03"Front door", "Mailroom", etc.
{{ event.extra.review_url }}Event variablePost-Purchase 04SWAP THIS for actual Judge.me / Loox URL before activation.
{{ person.last_order_days }}Profile propertyWin-Back 01Custom property — set via Klaviyo segment query at flow entry.
{% unsubscribe %}Klaviyo tagFooter of every emailBuilt-in. Renders as one-click unsubscribe link (CASL-compliant).

Phase 1 Pre-Activation Checklist

Before any flow goes live:
  • CASL footer: the large colored footer block was removed from these HTML exports to shorten previews. Add mailing address + unsubscribe in Klaviyo (global layout or a text block below the pasted HTML) before going live.
  • Kill every public discount code in Shopify (WELCOME10, CART10, COMEBACK15 should all be unique-per-profile via Klaviyo)
  • Configure Judge.me OR Loox; swap {{ event.extra.review_url }} default in Post-Purchase 04
  • Verify CASL double opt-in is enabled for Canadian subscribers before any SMS node fires
  • Confirm Shopify "Fulfilled" + "Delivered" webhooks fire into Klaviyo for Post-Purchase 02/03
  • Set person.last_order_days as a Klaviyo segment query for Win-Back 01 enrolment
  • Smart sending ON for all flows — no sends 10pm–8am local time