EM-114 · Scope only · 13 Aug 2026

What we are not doing yet to capture emails and SMS

Our welcome pop-up is not the problem. It is doing 13.28%, which beats Klaviyo's own 3–8% band for a standard pop-up. The problem is everything around it: the exit pop-up gives a discount away and asks for nothing, the SMS step on the welcome pop-up is built correctly but only about 11% of people who hand over an email end up as SMS subscribers, back-in-stock has fired zero times in six months while ten products sit sold out, and a returning customer sees nothing at all.

Updated 14 August, and it narrows to one cell. Fault 2 is now measured rather than triaged. Two thirds of people who reach the SMS step do fill it in; the step is not being skipped. But the step runs a different button on each device, and the mobile one — tap-to-text, 75% of the volume — completes at 0.9% against desktop's 46%. The people who never confirmed are not on any list: they are 39,513 profiles holding a phone number with no consent attached, 24.4% of every number in the account. Both findings are now live Klaviyo segments.

This is the scope-and-size pass, not the build. Fifteen initiatives, ranked, with what each is worth and what each takes. Two of them are one-hour fixes that should not wait for Monday.

Sources: Klaviyo API (forms, metrics, step-level form events and flow reporting; 30 days to 13 Aug 2026, step funnel 1–14 Aug 2026) · live browser teardown of 50 competitor storefronts · published benchmarks, each labelled with who published it.
→ Companion document, with a screenshot of every competitor pop-up: bfs-optin-catalogue.vercel.app

74,097
Welcome pop-up views / 30d
13.28%
Submit rate · above benchmark
0.9%
Mobile SMS completion · 75% of volume
39,513
Phone numbers held with no consent
−76%
SMS opt-ins, May → July
$7.61
Our value per SMS subscriber
01

What we actually run today

I loaded our own storefront in a real browser, on desktop and on mobile, as a first-time visitor and again as a returning one, and read what came back. This is what is live, not what we think is live.

SurfaceToolWhat it asks forWhat it offers30-day volumeState
Welcome pop-upfull-screen, all pagesKlaviyo STUCB3Three views. View 0 takes an email to list Ym3A7Z, view 1 is named “SMS Opt-In” and takes a phone number to list VdWm2S, view 2 redirects to Bestsellers.“DO YOU WANT 25% BACK ON YOUR FIRST ORDER” · cashback via ?cashback=welcome2574,097 views
9,839 submits
13.28%
Email working, SMS step leaking
Exit-intent pop-updesktop mouse-outAttracNothing at all. No email field, no phone field.“GET 15% OFF TODAY” · code WELCOMEHOME printed on screen with a countdownNot in Klaviyo.
Pull from Attrac.
Captures nothing
NAD+ early accessBFMD, FloridaKlaviyo VCfHT8EmailEarly access to the NAD+ launch2,989 views
1,028 submits
34.39%
Best rate we own
Footer sign-upevery pageShopify themeEmail only. No phone field.“Subscribe for Offers & Tips!”Not measured
separately
Live, unmeasured
Back-in-stock“BE NOTIFIED WHEN IT'S BACK!”Klaviyo XGMwtTEmailRestock alert0 viewsLive in Klaviyo, on no page
Product quiz/pages/quizRevenueHuntPaid for, broken link
Identity resolutionanonymous visitorsRetention.comNothing from the visitor~25,000
events / month
Running, unaudited
Meta lead-gen forms3 formsKlaviyoEmail, SMSCampaign-specific~0 viewsDormant with the ads
Worth knowing before anyone estimates a build

Five of the things this task asks us to “scope” already exist as Klaviyo drafts that somebody started and abandoned: XBdpzj “Futuristic tap-to-text”, YgZeqP “Take Quiz Popup”, T8ZgSM “Multi-step email & SMS – CashBack A/B Test”, plus WgtNmQ and WffNye, which are both targeted at people who are not subscribed to SMS. Twenty forms exist in the account; fourteen are drafts.

This is the theme of the whole report. Almost nothing here needs building. The SMS step is built. Tap-to-text is built and live on a toll-free number. The back-in-stock form is built. The quiz app is installed and the quiz page is published. Every one of them is either switched off, unplaced, mislinked or leaking. The work this week is repair and measurement, not construction, and the estimates below reflect that.

02

Three things that are broken right now

These are not opportunities. They are faults, and two of them can be fixed in an hour.

Fault 1 · the exit pop-up is a discount giveaway with no capture

Our Attrac exit-intent pop-up renders a headline (“GET 15% OFF TODAY”), a countdown timer, and the code WELCOMEHOME printed directly on screen, next to a “Continue shopping” button. There is no email field and no phone field in it. I checked the rendered markup: the only inputs are five hidden ones.

So a visitor who is about to leave gets 15% off for free and stays anonymous. We pay the margin and get no subscriber. Meanwhile Klaviyo's own published band for exit-intent forms is a 10–13% submit rate, which is higher than what our main welcome pop-up does. We are running the highest-intent surface on the site as a pure cost.

There is a second problem sitting on top of it: the welcome pop-up offers 25% back through a cashback app, and the exit pop-up offers 15% off through a real Shopify code. Two mechanics, two values, on the same visit. Until those agree, no pop-up A/B test we run will be interpretable, because we will not know which offer the visitor thinks is the real one.

Fault 2 · the SMS step is built correctly, two thirds of people act on it, and 89% of those still never become subscribers — almost all of it on mobile

Correction to the first version of this report. I originally wrote that the pop-up had stopped asking for phone numbers, on the basis that the rendered markup contained only an email field. That was wrong, and Juan flagged it. Klaviyo renders later views lazily, so the browser never downloads view 1 until view 0 is submitted. Pulling the actual form definition the browser fetches from static-forms.klaviyo.com/forms/api/v7/WdwJQj/full-forms settles it: STUCB3 has three views, and view 1 is named “SMS Opt-In”.

It is also built properly. There is a PHONE_NUMBER component writing to list VdWm2S with consent_type: PROMOTIONAL_ONLY, a mobile-only tap-to-text action on keyword JOIN to +1 888 302 6840, and the full TCPA disclosure: “including messages sent by autodialer. Consent is not a condition of purchase. Msg & data rates may apply.” Nobody removed anything. The real fault is narrower and more fixable than what I first described.

The gap: 9,839 people submitted the pop-up in the last 30 days. Klaviyo recorded 1,070 SMS marketing opt-ins in July. Roughly one in nine people who hand us an email address come out the other end as an SMS subscriber, even though effectively all of them are shown the SMS step. The step-level numbers further down narrow that to a single cell: it is not the ask that fails, it is the mobile confirmation.

SMS marketing opt-ins in Klaviyo, by month:

Feb 2026
2,021
Mar 2026
4,015
Apr 2026
3,697
May 2026
4,437
Jun 2026
2,964
Jul 2026
1,070
Aug 1–13
478

Email opt-ins over the same months held up: 21,598 in March, 28,657 in April, 20,877 in May, 15,011 in June, 16,263 in July. So this is not a traffic story. SMS collapsed as a share of email capture, from 21.3% in May to 6.6% in July.

By week, the drop is not a slide. It is a cliff, and it has a date on it:

wk 31 May
875
wk 7 Jun
924
wk 14 Jun
947
wk 21 Jun
193
wk 28 Jun
224
wk 5 Jul
201
wk 12 Jul
245
wk 19 Jul
242
wk 26 Jul
239
wk 2 Aug
346

Roughly 940 a week through mid-June, then 193 in the week of 21 June, and it has never come back. Email opt-ins are flat across the whole period at 3,100 to 4,100 a week, so nothing happened to traffic. STUCB3 was created on 18 June 2026, and Klaviyo's “Viewed Form” metric reads zero for every month before June and 79,185 in July, which means Klaviyo forms only became our capture surface that same week. It is also the week SMS moved off Postscript.

Second correction, 14 August. The three candidate causes above are now settled, and the first one was wrong. I measured the step-level metrics Klaviyo emits (submitted_form_step T4qceY and viewed_form_step STRrCx), which carry step_name, device_type and the actual submitted_fields on every event. Nobody is skipping the phone step. Two thirds of the people who see it act on it. The loss happens entirely after they hand over the number, and it is a different loss on desktop than on mobile.

The pop-up funnel, 1–14 August 2026, split by device. Every figure below is a count of unique Klaviyo events.

StageDesktopMobileTotal
Viewed view 0 “Email Opt-In”10,21823,30733,525
Submitted the email1,0083,2914,299
Reached view 1 “SMS Opt-In”1,0052,9463,951
Acted on the SMS step66766.4% of those who reached it1,99267.6% of those who reached it2,659
Ended up an SMS subscriber~286–30818304
Completion rate~46%0.9%11.4%

So the step is not being skipped and the pop-up is not the problem. Mobile is 75% of the SMS-step volume and it converts at about one in a hundred. That single cell is most of Fault 2.

Why the two devices behave differently: they are two different buttons. View 1 carries a device-targeted pair, which I read straight out of the live form definition.

  1. Desktop — “SEND” fires SUBMIT_TO_LIST_AND_TRANSITION_VIEW into list VdWm2S. That list is double opt-in (confirmed against the API; the email list Ym3A7Z is single opt-in). The number is banked, then a confirmation has to be completed before Klaviyo will record consent. About 46% of people finish it. This is the cause I ranked second and it is real, but it is the smaller half.
  2. Mobile — “Subscribe via SMS” fires SUBSCRIBE_VIA_SMS, the tap-to-text path. It captures no phone number at all — on 1,944 of the 1,992 mobile events the submitted_fields object is empty. Instead the shopper is handed off to their own messaging app to send keyword JOIN to +1 888 302 6840, and the message we pre-fill for them still reads “…marketing alerts (e.g. special promotions, cart reminders) from Klaviyo Library”. We are asking people to text a company they have never heard of. Almost none of them do.

And a third thing I was not looking for. The handful of mobile shoppers who do send the text are not landing where the pop-up says they will. Tap-to-text opt-ins arrive with method: text against a list called “SMS Subscribers” SUmgWj — created 19 June 2026, single opt-in, 215 profiles in total — not VdWm2S, which is the list the button declares. Every flow, segment and report we have built on VdWm2S is blind to them. It is a small number today only because the path barely works; if we fix the mobile path without fixing this, the winners will pour into a list nothing is listening to.

Here is how the 534 SMS opt-ins in the first fortnight of August actually arrived, by method and destination:

MethodDestination listWhat it isOpt-ins
formOn-Page SMS Subscribers VdWm2SThe pop-up's desktop path286
shopifyOn-Page SMS Subscribers VdWm2SCheckout, not the pop-up at all141
formBFMD — Florida SMS SWAHz2A different brand's form89
textSMS Subscribers SUmgWjThe mobile tap-to-text path18

Worth saying plainly: a quarter of what we call our on-page SMS capture is Shopify checkout, which the pop-up gets no credit for and which would keep running if the pop-up vanished.

Two smaller defects in the same form definition, both one-line fixes. View 0's mobile button (“of course!”) also fires SUBSCRIBE_VIA_SMS, but with list_id: null — it subscribes people to no list whatsoever. And its pre-filled message is correctly branded “from Black Forest”, which is how I know the “Klaviyo Library” string on view 1 is an oversight rather than a house style.

None of this is a build. It is four settings and a placeholder nobody replaced.

Fault 2b · where the people who never confirmed actually went, and how to find them

This was Juan's question and it has a precise answer. They are not in VdWm2S. That list holds 29,898 profiles and I sampled it: the members are either SUBSCRIBED or UNSUBSCRIBED, with almost nothing in between. A double opt-in list does not hold people while they think about it. Someone who types a number and never confirms leaves no trace on the list at all — which is exactly why this has been invisible.

Where they do sit is on the profile: a phone_number attribute is written, and subscriptions.sms.marketing.consent stays NEVER_SUBSCRIBED. Counting the whole account that way reconciles exactly:

Profiles with a phone number on fileSMS marketing consentCountCan we text them?
Confirmed subscribersSUBSCRIBED86,202Yes
Opted in, then leftUNSUBSCRIBED36,404No — and must not
Gave us a number, never completedNEVER_SUBSCRIBED39,513No consent on record
Total phone numbers we hold162,119

39,513 phone numbers, 24.4% of every number in the account, sitting on profiles with no consent attached. Not all of those came from the pop-up — a phone typed at Shopify checkout without a marketing tick lands in the same bucket — so treat this as the size of the pool, not as pop-up damage. In the 1–14 August desktop sample the pop-up's own share of it is clear enough: of 660 unique numbers typed into the SMS step, 247 were NEVER_SUBSCRIBED (37.4%), 308 had subscribed, 103 had unsubscribed.

I have built two live segments so this is queryable rather than a one-off. Both auto-refresh.

SegmentDefinitionProfilesUse
URnxWdSMS Recovery · phone on file, never SMS-opted-in (ALL)Has a phone number and SMS consent is never_subscribed39,513The true size of the pool
RCm4nZSMS Recovery · … email-reachableThe above and email consent is subscribed19,863The one to actually work. We can email these people and ask them to opt in.

For the individual numbers, the recoverable record is the event, not the profile: submitted_form_step where step_name = "SMS Opt-In" carries the typed number in submitted_fields.$phone_number. That is the only place a desktop abandoner's number survives in a form we can read back.

Two hard constraints on any recovery, and I would not move without them settled.

  1. We cannot text this pool. There is no consent on record; that is the definition of the segment. Recovery has to run over email, inviting people to opt in properly. In the 350-profile August sample, Klaviyo had already flagged 15 as MESSAGE_BLOCKED and 2 as KNOWN_LITIGATOR. At 39,513 that scales to a couple of hundred people who sue over exactly this.
  2. The 19,863 figure is the ceiling, not the forecast. These are people who already declined to finish once. I would send to a 2,000-profile slice first and read the actual opt-in rate before anyone puts a revenue number on the rest.

The cheaper half of the fix is upstream and does not involve this pool at all: the mobile path is 75% of the volume and converts at 0.9%. Replacing tap-to-text with Klaviyo's Smart Opt-in (the OTP flow, which works on all devices and does report revenue metrics) is the single highest-value change in this report, and it stops the pool growing by roughly 1,900 people a fortnight.

Fault 3 · ten products are sold out and none of them capture a waitlist

Of 126 products in the catalogue, 10 are fully out of stock across every variant, including NMN 90-day and 120-day supplies, NR 1550mg, Cocoa Flavanols 1200mg and NMNH 250mg. I loaded a sold-out product page: it says sold out, the add-to-cart button is a cart icon, and there is no “notify me”, no back-in-stock form, and no Klaviyo back-in-stock trigger anywhere on it.

Klaviyo confirms the consequence: the “Subscribed to Back in Stock” and “submitted_back_in_stock_form” metrics have recorded zero events every month since February. The form “BE NOTIFIED WHEN IT'S BACK!” has existed and been live in Klaviyo since May 2024 and has had zero views in the last 30 days, which means it is not placed on any page.

This one has a question attached that is above my pay grade: 8% of the catalogue is dead with no restock date visible. Back-in-stock capture turns that into a list. It does not turn it back into inventory.

03

What it is worth

Every number in this section is either ours, measured this week, or clearly labelled as a model or someone else's benchmark. The parent task asks for value per initiative; this is where that value comes from.

Our own two welcome flows, last 30 days

Email welcome U6vFUA: 3,994 people entered, across 20 messages, and Klaviyo attributes $45,240 to it. That is $11.33 per new email subscriber inside a 30-day window.

SMS welcome TWWDQd: 973 people entered, across 3 messages, $7,409 attributed. That is $7.61 per new SMS subscriber, and the first message alone runs $6.65 per recipient, the highest single message in the account.

A profile can sit in both flows, so these do not simply add. Grading is per message, per the rule on this task.

The SMS gap, priced

May's 4,437 opt-ins against July's 1,070 is a shortfall of 3,367 SMS subscribers per month.

3,367 × $7.61 = $25,623 / month (our measured rate) 3,367 × $3.606 = $12,141 / month (the rate quoted on EM-108)

Call it $12,000 to $25,600 a month in welcome-flow revenue alone, before any campaign revenue from a larger SMS list. Annualised, $146,000 to $307,000.

The value did not change when the diagnosis did, and it has not changed now the diagnosis is finished. What changed is the work: not “add an SMS step”, and no longer “find out which of three settings is at fault” either. It is one setting on one device. Mobile is 75% of the SMS-step volume and completes at 0.9%; swapping tap-to-text for Smart Opt-in is the whole job.

Measured the opt-in counts, the per-subscriber values. Modelled that recovered opt-ins convert like current ones.

Before anyone banks the top of that range. The pre-June SMS numbers are Klaviyo-side consent events. Some share of them may have been Postscript-sourced consent syncing into Klaviyo rather than net new capture, in which case restoring the pop-up field recovers less than the full 3,367. The check is one screen: pull May and June opt-in counts from the Postscript dashboard and compare. I could not do it from here; there is no Postscript API key in the automation config. Until that is done, plan against the $12,141 figure and treat the rest as upside.

The exit pop-up, priced as a parameter

I cannot price this properly yet because Attrac impressions do not flow into Klaviyo and the Shopify token expired before I could read WELCOMEHOME's redemption count. So here is the shape of it, with the number to fill in:

Every 10,000 exit-intent impressions × 10–13% submit rate (Klaviyo's published band) = 1,000–1,300 new subscribers × $11.33 per email subscriber (ours, measured) = $11,300–$14,700 in welcome-flow revenue

For scale: 45,344 people closed the welcome pop-up in the last 30 days. The exit pop-up is firing into a pool of that order of magnitude, and asking none of them for anything.

Two numbers to pull: Attrac impressions and submit count for the last 30 days, and WELCOMEHOME's usage count in Shopify. The second one tells us what the giveaway has cost.

04

What 50 brands actually do

I did not read listicles for this. I loaded 50 supplement and longevity storefronts in a real browser, on desktop at 1440×900 and on iPhone at 390×844, waited out the timers, scrolled, clicked through to the second step of whatever appeared, then triggered exit intent and reloaded as a returning visitor. Everything quoted below is verbatim from a live page on 13 August 2026.

The brand-by-brand catalogue now lives in its own document: bfs-optin-catalogue.vercel.app — 54 brands, every pop-up screenshotted, with time-to-fire, offer, step structure, decline copy, phone asks and vendor stack per brand, plus a manual re-check worklist carrying every link. This section is the summary of it.

Read the counts as floors, not totals. 17 of the 50 never showed a pop-up to my browser at all, either because they gate on engagement signals a script does not produce, or because they geo-target, or because they detect automation. So “9 of 50” means at least 9. It never means “only 9”.

The pattern that matters: nobody good asks for the email first

Our pop-up opens with the ask. “DO YOU WANT 25% BACK ON YOUR FIRST ORDER”, one email field, one button. The brands winning this category have moved the email field to step two and put a question in front of it. At least 9 of 50 ask a segmentation question before they will take your address, and they are not fringe brands:

BrandStep 1: the questionThe optionsStep 2
ARMRAAlia-style unit“Start your revival with 30% Off. Select your health goal to access your offer.Gut Health · Immune Health · Metabolism · Fitness & Recovery · Skin & HairEmail, then WELCOME30
Bloom Nutritionalso runs Attrac“You've got a mystery discount. But first, let us know what you're looking for!” with a 0:50 countdownFitness Fuel · Gut Health · Energy Boost · I'm not sure!Email
Transparent Labs“You've Got A Mystery Discount. What are you shopping for?Protein · Creatine · Pre-Workout · Health & Wellness · All Of The AboveEmail · opt-out reads “No thanks, I'll pay full price.”
Bare Performance Nutrition“You've got 25% off your subscription. What does your training look like?Endurance · Strength · HybridEmail
Four Sigmaticon exit intent“Claim A Special Discount. To claim, tell us: What's your current wellness priority?Focus · Calm · Gut HealthEmail
Truvanimobile“You've got up to 72% off plus a FREE Starter Kit! To claim, tell us what you're shopping for today:Plant Based Protein · Electrolytes · Whey · Creatine · OtherEmail and phone in the same step
Gorilla Mindmobile“You've unlocked 20% off! Let us know what you're shopping for to claim it:Pre-Workouts · Protein & Recovery · Health & Wellness · Fat Loss SupportEmail
Cymbiotika“Discover your personalized wellness routine. Take the Quiz” as the mobile entry pointQuiz-ledEmail and phone, one form
Naked Nutrition“You've got 15% off. *First-time customers only”Yes, please! · I'm not interested.Email

Three things are going on in that table and all three are testable next week.

  1. The question is the conversion mechanic, not the research. Answering “Gut Health” is a tiny commitment that makes the email field feel like the second half of something you already started. Nine brands independently arrived at the same structure.
  2. “Mystery discount” is doing the work that a stated percentage cannot. At least 9 of 50 hide the number behind a reveal: Transparent Labs, Ancestral Supplements, Bloom, Tru Niagen, Jocko Fuel, Truvani, Naked Nutrition, BPN, Gorilla Mind. We print “25% BACK” on the first screen, which means a visitor who does not want 25% back has no reason to continue.
  3. The decline button is written to sting. “No thanks, I'll pay full price” (Transparent Labs, and Qualia uses the same line), “I'm not interested”, “No thanks, I don't want a discount”. Ours says “Continue shopping”. At least 9 of 50 write the refusal as a cost.

The offer is drifting away from a naked percentage

Tied to a subscription · at least 12 of 50

ARMRA gives 30% off the first subscription order and states in the fine print that recurring orders get the standard 5%. BPN's pop-up says “25% off your subscription”. Cymbiotika ladders it: one subscription 30% off, two 34%, three 38%, four 40%.

Paleovalley makes the sharpest version of the argument, and it is one we could copy this month: “Subscribe to save on every order and never worry about out of stocks … we keep reserve stock for subscribers.”

Content instead of money · at least 28 of 50 mention it

Function Health: “Subscribe and get 9 health guides for living 100 healthy years.” BiOptimizers: “Get Access To The AWESOME Health Course … 12 week program.” Ancestral Supplements: “Receive our newsletter series | 9 Ancestral Energy Enhancers.”

Heart & Soil: “Get weekly health insights delivered to your inbox … Join 155,000+ Subscribers.” MUD\WTR: “a newsletter people actually look forward to. One thing to read, one thing to watch, one thing to listen to.” Seed: “nerdy reads for your inbox.” LMNT: “Salty Science and the inside scoop on launches.”

The split is clean: the longevity and premium end sells the list itself, the mass and sports end sells a percentage. We are positioned at the first end and priced at the second.

The one offer nobody in our set is running

Sports Research is alone in the 50 with a free-shipping-for-email trade: “LIMITED TIME ONLY. FREE SHIPPING. Get free shipping on your first order when you sign up for email. CLAIM FREE SHIPPING.” At our order values, free shipping costs materially less than 25% back and reads as the same size of favour. It is the cheapest offer test on the list, and no direct competitor of ours is using it.

Phone capture: the whole category is bad at it, which is the opportunity

Only 4 of 50 ask for a phone number anywhere in an on-site form, and only 2 of 50 carry the TCPA language that means they are doing it properly:

We are currently at zero phone capture on the site, in a category where four brands out of fifty have bothered. Being the fifth is not a hard climb, and our own numbers say each phone number is worth $7.61 inside 30 days.

Back-in-stock is normal equipment, and we do not have it

At least 6 of 50 run a back-in-stock app: MUD\WTR, 1st Phorm and Sports Research on Back in Stock, RenueByScience and Bulletproof on Swym, plus BPN. BPN shows the mechanic in the cleanest possible form; on a sold-out item in a product carousel, the button simply reads “NOTIFY ME VIA EMAIL” instead of “Add to cart”. Alani Nu does the same thing on a sold-out flavour with “sign up for alerts”.

We have ten sold-out products and a Klaviyo back-in-stock form that has been live since 2024 with zero views. The equipment is in the garage.

Who runs what, for reference

Vendor fingerprints across the 50, useful next time somebody proposes buying a tool: Klaviyo 42, Gorgias 18, Recharge 15, Attentive 12, Postscript 7, Retention.com 6, Attrac 6, OptiMonk 5, Octane AI 5, Digioh 5, WisePops 4, Wunderkind 4, Alia 2, RevenueHunt 2, Justuno 2, Swym 2, PushOwl 2.

Two things worth noting there. Attrac, our exit-intent tool, is in respectable company; Ancestral Supplements, Bloom, RenueByScience, Double Wood and Jocko Fuel all run it, and all five of them use it to capture an address. The tool is not the problem, our configuration is. And Retention.com appears on 6 of the 50, including us, which tells us the identity-resolution question is a live category debate rather than something we quietly adopted alone.

05

The returning-customer gap

This was the question behind the task: the welcome pop-up goes stale for people who already know us. It is worse than stale. It is absent.

What a returning visitor gets from us

I reloaded our homepage in the same browser session, cookies and local storage intact. The Klaviyo welcome pop-up correctly did not fire again. Nothing replaced it. No teaser, no phone ask, no restock prompt, no quiz, no referral prompt. The only thing that still fired was the Attrac exit pop-up, handing out WELCOMEHOME again to somebody who may well already be a customer.

Our footer has an email field and no phone field, so even the passive surface asks a returning subscriber for the one thing it already has.

The pattern to copy: RenueByScience

On the first visit they show a full pop-up: “Join our VIP list for 15% off your order.” On the return visit the full pop-up is gone and a small persistent teaser sits in its place reading “Join our VIP list for exclusive perks”. Same list, no discount, no interruption.

They also change the offer by device. Desktop says “15% off your order”; mobile says “exclusive perks” with no discount at all. That is two tests we have never run.

Klaviyo already supports every piece of this without an app. Forms can be targeted to exclude or include existing Klaviyo profiles and specific lists and segments, and forms have a native teaser state, so “full pop-up for strangers, teaser for regulars” is a targeting change rather than a build.

The highest-value version of this is not an email ask at all. Klaviyo's published benchmark for phone-capture-only forms is a 10–13% submit rate, and their own note is that this holds “especially when targeted at email subscribers”. That is the exact audience currently seeing nothing. A returning subscriber does not need another welcome offer; they need to be asked for the one channel we do not have, and that channel is worth $7.61 a head to us.

So the returning-visitor surface is not one idea, it is a queue, and the right one to show depends on what we already know about the person:

If the visitor is…ShowBecauseBuild
On the email list, no phonePhone-only ask, Smart Opt-in10–13% benchmark, $7.61 a head, closes our worst gapKlaviyo UI
On both lists, never purchasedThe goal question, no offerGives us the segmentation we lack; nothing to discountKlaviyo UI
A past customerReferral promptSocial Snowball is already installed and already has an affiliate sign-up metric firingApp exists
Looking at a sold-out product“Notify me”Highest revenue-per-recipient automation in the category; ten products qualify todayKlaviyo + theme
Anyone who dismissed the pop-upPersistent teaser45,344 people closed it last month and got nothing after thatOne toggle

Caveat on my own method: my “returning visitor” was a reload minutes later in the same session, which is a weak proxy for somebody coming back next week. It is enough to prove that we show nothing and that RenueByScience shows a teaser; it is not enough to grade anyone's frequency capping.

06

The ranked initiative list

Fifteen items, ranked by value divided by effort, with the evidence behind each number. EM-114 says scope and size only, do not build this week; items 1 and 2 are one-hour repairs to live faults and I would argue they are not builds.

1

Make the exit pop-up ask for something

Effort 1 hourOwner JuanTool AttracRisk Low

It currently prints WELCOMEHOME on screen with a countdown and takes no email and no phone. Put a field in front of the code. Every other Attrac brand in the teardown does exactly this, so it is a configuration we can copy from five competitors.

Worth: at Klaviyo's 10–13% exit band and our measured $11.33 per email subscriber, every 10,000 exit impressions is $11,300–$14,700. Plus it stops the margin leak on visitors who give nothing. Klaviyo benchmark our $11.33

Blocked on nothing. Pull the impression count from Attrac while you are in there.

2

Make the two offers agree

Effort 1 hourOwner Juan, with Antonio on the numberRisk Low

The welcome pop-up offers 25% back through a cashback app driven by a URL parameter. The exit pop-up offers 15% off through a real Shopify code. Same visitor, same session, two different promises and two different redemption mechanics.

Worth: not directly measurable, and that is the point. Until one offer is running, every A/B result below is contaminated. This is the prerequisite for the whole test calendar, which is why it sits above the items with bigger numbers.

3

Fix the SMS step that is already on the welcome pop-up

Effort Diagnosis done. Minutes to change.Owner JuanTool Klaviyo settings, no buildValue $12,141–$25,623 / month

Updated 14 August: the diagnosis is finished, so this is no longer three candidates to work through. The step converts fine as an ask — 66% of desktop and 68% of mobile visitors who reach it act on it. The loss is at confirmation, and it is 99% on mobile against 54% on desktop. Do these in this order:

  1. Replace the mobile tap-to-text action with Smart Opt-in. This is the whole fault. Mobile is 75% of SMS-step volume and completes at 0.9%. Smart Opt-in has the visitor type a number and a one-time passcode back: it stays double opt-in by construction, keeps the shopper on site, works on both devices so the device split disappears, and unlike tap-to-text it reports revenue metrics. Requires a paid SMS plan — confirm ours covers it first.
  2. Point the tap-to-text keyword at VdWm2S, or retire it. Keyword JOIN currently deposits opt-ins into SUmgWj “SMS Subscribers” (215 profiles, created 19 June), not the list view 1 declares. Every flow and segment we own reads VdWm2S. Fix this before item 1 raises the volume.
  3. Fix view 0's mobile button, which subscribes to list_id: null. It writes consent attached to no list at all.
  4. Replace “from Klaviyo Library” with “from Black Forest” in view 1's tap-to-text message. Two minutes, and it stops mattering entirely once item 1 ships.
  5. Leave VdWm2S on double opt-in. I had this ranked as the likely main cause; the measurement says it costs us about 54% of desktop, which is 25% of volume. Double opt-in is the safer compliance posture, Klaviyo recommends it, and Smart Opt-in preserves it while removing the friction. Changing it is a legal call rather than a settings call, and item 1 makes it unnecessary.
  6. Stop treating the phone field's required: false as a defect. Two thirds of people fill it in voluntarily. A forced field on a pop-up that already has the email banked is likelier to cost submits than win phone numbers. If we want the data, add a measurable “No thanks”; do not make the field mandatory.
3,367 recovered opt-ins/month × $7.61 = $25,623 (our measured SMS-welcome value) 3,367 recovered opt-ins/month × $3.606 = $12,141 (the rate quoted on EM-108)

Before you bank the top of the range: pull May and June opt-in counts from Postscript to establish how much of the pre-June number was Postscript-sourced consent syncing into Klaviyo rather than net new capture, and check whether the Postscript pop-up was single opt-in. Plan against $12,141.

4

A phone-only pop-up for people already on the email list

Effort 3 hoursOwner JuanTool Klaviyo, no appValue ~$11,278 / month modelled

This is the direct answer to “the welcome pop-up is stale for recurring customers”. Clone STUCB3, invert the targeting so it shows only to existing Klaviyo profiles who have an email and no SMS consent, and ask for the phone number alone. Two of the abandoned drafts in the account, WgtNmQ and WffNye, were already aimed at this audience.

74,097 monthly pop-up views × 20% assumed already-known profiles = 14,819 views × 10% (low end of Klaviyo's 10-13% band) = 1,482 opt-ins × $7.61 = $11,278 / month

The 20% is an assumption, not a measurement, and it is the number to replace first: Klaviyo form targeting will report the real eligible audience within a day of going live.

5

Back-in-stock on the ten dead product pages

Effort 4 hoursOwner Juan + theme accessTool Klaviyo native, freeRisk Low

Klaviyo's back-in-stock is included with the Shopify integration. The form already exists (XGMwtT, live since May 2024, zero views). The work is placing the trigger on the sold-out product template and wiring the flow.

Worth: back-in-stock is consistently reported as the highest revenue-per-recipient automation in ecommerce; secondary write-ups of Klaviyo's 2026 benchmark set put it at $9.14 per recipient at 6.72% conversion secondary source, not Klaviyo direct. For a sanity check against our own account, our best-performing single flow message runs $6.65 per recipient. Even at half the quoted benchmark this pays for four hours immediately.

The question this raises is not mine to answer. Ten of 126 products, 8% of the catalogue, are sold out across every variant with no restock date on the page. Back-in-stock capture converts that into a list. It does not convert it back into stock, and somebody should be looking at why NMN 90-day, NMN 120-day, NR 1550mg, Cocoa Flavanols 1200mg and NMNH 250mg are all dark at once.

6

A teaser instead of silence

Effort 1 hourOwner JuanTool Klaviyo toggle

45,344 people closed our welcome pop-up in the last 30 days and were shown nothing afterwards. Klaviyo forms have a native teaser state. RenueByScience's version, verified live, is a small persistent “Join our VIP list for exclusive perks” that replaces the full pop-up on the return visit.

Worth: unquantified until it runs, but it costs an hour and it is the only item that recovers value from a dismissal.

7

Ask a question before asking for the email

Effort 4 hoursOwner JuanTool Klaviyo multi-stepTest A/B against current

The strongest pattern in the teardown, and free to try. One question, four or five answers, then the email field. Answers land as Klaviyo profile properties, which is the segmentation we do not currently have. Candidate question for our catalogue, borrowing the ARMRA and Four Sigmatic framing: what are you working on right now, with energy, sleep, heart, longevity and metabolic as the options.

Worth: two effects. The opt-in rate effect is what the A/B measures. The segmentation effect is larger and slower; RevenueHunt cites Klaviyo's own benchmark that segmented campaigns earn more than 3× the revenue per recipient of generic sends, and our own campaign revenue-per-recipient problem is documented in the retention work.

The paid alternative is Alia at $100/month self-serve, which is the unit ARMRA runs. Alia claims 15–35% opt-in rates and “10%+ with Klaviyo versus 3–5% with Klaviyo native” vendor claim. Note their comparison uses a 3–5% native baseline; ours is already 13.28%, so their headline lift does not transfer to us. Build it free in Klaviyo first, and only buy Alia if the free version wins and we want the optimisation layer.

8

Test a lead magnet against the 25%

Effort 2 hoursOwner JuanCost $0, the assets exist

We have finished long-form assets sitting unused. OptiMonk's aggregate of their own user base puts newsletter-plus-ebook at 7.49% and newsletter-plus-discount at 7.65%, against 5.10% for a plain newsletter OptiMonk, no sample size published. Read that as: the ebook holds the opt-in rate and keeps the margin.

Worth: at roughly $87 average order value, 25% back is about $21.75 per first order. If a guide converts within a point or two of the discount, the saving is the entire prize. Judge this test on profit per visitor, not opt-in rate, which is the same instruction as the offer test scoped in the July quiz and funnel report.

A cheaper third arm worth including: free shipping, which only Sports Research runs in our whole competitive set.

9

Finish the quiz we already pay for

Effort 1 hour to unbreak, 1–2 days to do properlyOwner JuanCost Already licensed

RevenueHunt's script loads on every page of our store. /pages/quiz is live and returns 200. Its “TAKE THE QUIZ” button points at blackforestsupplements.com/#quiz-OGHOb7, and that anchor does not exist on the homepage, so the button goes nowhere. The page is not in the navigation. There is also an abandoned Klaviyo draft called “Take Quiz Popup”.

Worth: RevenueHunt's June 2026 benchmark, from 45M quiz responses across 20,000 stores, reports 69% of starters finish, and for the supplements and health category a quiz-taker conversion rate of 6.2% with a within-store AOV uplift of +14% vendor benchmark. Two honest caveats they publish themselves: the supplements row rests on only 1,046 responses, and their headline rate is orders per completed quiz, not orders per visitor, so it cannot be compared to a site conversion rate.

Fix the link this week because it is an hour. Decide on the real build after the goal-question test in item 7, since a one-question pop-up may capture most of the segmentation value at a fraction of the cost.

10

Measure the tap-to-text we are already running

Effort 2 hoursOwner JuanStatus Already live

This is not a build either. Both view 0 and view 1 of STUCB3 already carry a SUBSCRIBE_VIA_SMS action, device-targeted to mobile, on keyword JOIN to +1 888 302 6840. That number answers the sending-number question too: it is a toll-free number, not a branded sender ID, so tap-to-text is legitimately available to us.

Updated 14 August: this is not a catch, it is Fault 2, and the vendor claim does not survive contact with our own data. Tap-to-text is not a challenger we should be testing — it is what we are already running on mobile, and it completes at 0.9% against the desktop phone field's 46%. Klaviyo documents that tap-to-text does not report revenue metrics, and it requires the shopper to leave the site, open their messaging app and actually send a text that currently names “Klaviyo Library”. Agency write-ups put two-tap at 2–3× a standard SMS form vendor claim; measured on our own traffic it runs at roughly one fiftieth. Treat the vendor number as refuted for our storefront rather than untested.

Run Smart Opt-in as control and tap-to-text as the mobile challenger, judge on opt-in volume, and read revenue at the flow level.

11

Audit Retention.com before adding anything else

Effort Half a dayOwner Juan + AntonioPossibly negative value

This is the one item on the list that may be subtracting. Retention.com's identity-resolution script is live on our store and its “Reclaim” events went from about 2,000 a month in May to roughly 25,000 a month from June onward, and they are still running. That is a tool putting identified-but-not-opted-in contacts into our world at scale.

Given our deliverability history this needs three answers before we grow the list any other way: what does it cost us monthly, do those profiles get added to sending lists, and did anybody sign off on the consent posture. Six of the 50 brands we tore down run the same category of tool, so this is a real debate rather than an obvious error, but it is currently nobody's job.

12

Put a phone field in the footer

Effort 2 hoursOwner Juan + theme access

Our footer asks for an email on every page and never asks for a phone number. Ghost's footer is the model: two subscribe buttons side by side, email on one, phone with its own consent checkbox on the other. Jocko Fuel's cheaper version is a line of text, “Text Jockofuel to 24672”, which needs no form at all.

13

Capture inside the 13 launch blogs

Effort 1 dayOwner Juan

Thirteen published product-launch blogs already carry cold traffic and currently sell rather than capture. Embedded forms mid-article are the highest-intent placement we are not using, and this overlaps directly with EM-113's audit of where traffic lands. Fold it into that ticket rather than running it separately.

14

Referral prompt for past customers

Effort Half a dayOwner JuanTool Social Snowball, installed

Social Snowball is already in the account and already firing a “Signed up as an affiliate via sign up form” metric. For a returning customer who is on both lists, a referral ask is a better use of the slot than a discount they cannot use. Existing referral programme planning is already written up in reports/referral-program-plan.html.

15

Web push as a third channel

Effort 1 dayOwner unassignedPriority Q4 at the earliest

Two of the 50, Jocko Fuel and Gorilla Mind, run PushOwl. Push collects no personal data, so it sidesteps the consent questions entirely, and it reaches the 45,344 people a month who close our pop-up without giving anything. It is genuinely third in line behind fixing SMS and back-in-stock, and it is here so that it is on the list rather than because it should be started.

07

Eight weeks of A/B tests

The task asks for a list we can start testing against. The good news is our traffic makes these fast to read.

How long a test actually needs

74,097 pop-up views over 30 days is about 2,470 views a day. Split evenly between two arms, each arm sees roughly 1,235 views a day, and at our 13.28% submit rate that is about 164 submits per arm per day. Klaviyo's guidance is to accumulate a few hundred submits per variation before calling a winner, so a submit-rate test reads in two to three days and a week is comfortable.

Revenue effects are slower. Anything judged on profit per visitor rather than opt-in rate needs three to four weeks, because the welcome flow itself runs for days and the purchase tail runs longer. Run the fast tests weekly and let the two offer tests run long in the background.

WeekWhat runsControlChallengerJudged on
1Repairs, not testsExit pop-up captures an address; the two offers are reconciledSubmit count where there was none
2The SMS step, diagnosed then changedOptional phone field, double opt-in listRequired field, and separately a single-opt-in testSMS opt-ins, and email opt-in must not fall
3The question before the ask“25% back” then email“What are you working on?” then emailSubmit rate
4Mystery framingStated “25% back”“You've got a discount” revealSubmit rate
5Returning-visitor surfaceNothing, as todayPhone-only ask to known email profilesSMS opt-ins from a dead audience
6Mobile SMS mechanicSmart Opt-inTap-to-textOpt-in volume; revenue read at flow level
7–10The offer test, running long25% backGuide, and free shipping as a third armProfit per visitor, plus AOV and 60-day repeat
8Dismissal recoverySilence after closePersistent teaserSubmits from previously lost sessions

One rule for all of it. Change one thing per test. The reason our current numbers are hard to reason about is that in June the pop-up tool, the pop-up offer, the SMS platform and the identity-resolution tool all changed in the same window, and now nobody can attribute the SMS collapse to a single cause without going back to Postscript to check.

08

What I am not recommending

Scoping is also deciding what to leave alone.

09

Method, and what is still unverified

So the next person can check the work or redo it.

Where our numbers came from

Klaviyo API, pulled 13 August 2026. Form performance from the form-values report over the last 30 days. Opt-in trends from metric aggregates on “Subscribed to Email Marketing” and “Subscribed to Text Messaging Marketing”, monthly, February to August. Flow economics from the flow-values report with Placed Order as the conversion metric, aggregated per flow from per-message rows, so no flow is graded as one blended number. Catalogue and stock state from the storefront products feed. GlockApps test sends are not part of any of these surfaces, so nothing here needed that filter.

How the competitor work was done

Fifty storefronts, each loaded in a real Chromium browser with a US locale and an Eastern timezone, first on desktop at 1440×900 and then on iPhone at 390×844. For each: wait out the timers, scroll, capture every visible modal in every frame including cross-origin iframes, click through to the second step, then trigger exit intent and reload as a returning visitor. 250 screenshots and the raw JSON are in the working folder. Cookie banners were filtered out by pattern.

Open items, in the order they should be closed

  1. Postscript's May and June opt-in counts. Decides whether the SMS recovery is worth $12,141 or $25,623 a month. There is no Postscript API key in the automation config, so this is a dashboard screenshot.
  2. Attrac impressions and submits, last 30 days. The exit pop-up's value is currently a formula with a blank in it.
  3. How many times WELCOMEHOME has been redeemed. Tells us what the giveaway has cost. The Shopify admin token expired mid-analysis; it needs a fresh 24-hour token.
  4. What Retention.com costs and where its profiles land. See item 11.
  5. Which of the three candidate causes in Fault 2 dominates. Closed 14 August. Neither of the two I ranked first. The step-level metrics say mobile tap-to-text completes at 0.9% against desktop's 46%, and mobile is 75% of the volume. See Fault 2.
  6. Whether our SMS plan includes Smart Opt-in. The entire Fault 2 fix depends on it. This is a Klaviyo billing-page check, not an analysis.
  7. What the 19,863 in RCm4nZ are actually worth. They declined to finish once already. Send an opt-in invitation to a 2,000-profile slice and read the real rate before anyone models the rest.

One correction against the first version of this report, recorded rather than quietly edited. I originally reported that the welcome pop-up no longer asked for a phone number. It does; view 1 is called “SMS Opt-In” and is correctly built. I had inspected the rendered DOM, which contains only view 0 because Klaviyo loads later views lazily, and I flagged that as unconfirmed at the time rather than resolving it. The right method, which is now in the working folder as form_def.py, is to intercept the form definition the browser fetches from static-forms.klaviyo.com/forms/api/v7/{company_id}/full-forms; that returns every view, every field, every action and every list binding without submitting anything. The 76% collapse and its value are unchanged. The diagnosis and the fix are not.

A second correction, 14 August, recorded the same way. Having established that the SMS step existed, I then offered three candidate causes and ranked “the phone field is optional and therefore skipped” first and “VdWm2S is double opt-in” second. Measuring the step-level metrics Klaviyo already emits — submitted_form_step and viewed_form_step, which carry step_name, device_type and submitted_fields — shows the first was simply wrong: two thirds of people who reach the step act on it. The real fault was the one I had filed as a side note about branding: the mobile tap-to-text path, which is 75% of the volume and completes at 0.9%. The lesson is the same one as the first correction. I reasoned from the form's configuration when the account was already emitting per-step event data that would have answered it directly.

Sending number, now answered: +1 888 302 6840, a toll-free number, which supports keywords and tap-to-text. That was open item 4 in the first version.

How to read the labels

Measured our own data, pulled this week. Modelled arithmetic on top of a stated assumption; the assumption is always written next to it. Benchmark published by a platform or aggregator, named. Vendor claim published by a company selling the thing; directional at best. No number in this report is an estimate presented as a fact.