DTC Health & Supplements

Northvale Wellness — Supplement brand found Klaviyo and Meta retargeting double-counting revenue

How a supplement brand found $22k/mo in double-counted revenue between Klaviyo flows and Meta retargeting

Northvale Wellness's Klaviyo post-purchase flow claimed $48k/mo. Their Meta retargeting campaigns claimed $31k/mo. Admaxxer's blended attribution showed $22k of that was the same buyers, and cutting retargeting 40% freed budget for prospecting — with no revenue loss.

Northvale Wellness — Supplement brand found Klaviyo and Meta retargeting double-counting revenue
## The situation Northvale Wellness sells a clinically-formulated supplement line — magnesium, adaptogens, and a sleep-support blend — to an audience skewed heavily female, 30-55, and wellness-engaged. The brand does about $280k/mo in revenue, with a very strong email engagement profile (45% open rate, 3.2% click rate on flows) and a mature Klaviyo program built over three years. The list sits at 180k engaged subscribers with a 30-day engagement rate above industry average, and the flow architecture is comprehensive: Welcome, Abandoned Cart, Browse Abandonment, Post-Purchase, Winback at 60/90/180 days, Replenishment at SKU-specific intervals, and a VIP segment with a separate cadence. The stack at onboarding was Shopify, Klaviyo (all the flows above), Meta for prospecting and retargeting, Google for branded Search plus a small Shopping campaign, and a modest Meta Creator Marketplace spend for whitelisted creator posts. The CMO ran the brand on two core attribution lenses: Klaviyo's native attributed-revenue number (5-day last-click or last-open) and Meta Ads Manager's reported ROAS. Budget decisions followed both numbers. Klaviyo was showing roughly $48k/mo in flow-attributed revenue, which the team used to justify the Klaviyo seat price and the email operator's time. Meta retargeting was showing roughly $31k/mo in attributed revenue against about $8k/mo of spend — an apparent 3.9x ROAS on retargeting alone. This is the standard post-ATT email-plus-retargeting stack, and it has a well-documented pathology. Klaviyo's community itself acknowledges the issue: "Klaviyo double-counts revenue if users interact with multiple emails pre-checkout, as there is no native multi-touch logic." Meta's retargeting claims revenue on the same buyers because its pixel fired on the same session. Two tools, two claims, one customer — and operators who trust both numbers make budget decisions against ghost revenue. This was compounded by the fact that Meta's retargeting audience definitions (website visitors last 30 days, abandoned cart last 14 days, past purchasers last 90 days) have near-complete overlap with Klaviyo's flow-qualified audiences. The same person getting the abandoned-cart email was also getting the abandoned-cart retargeting ad, and both tools were claiming their eventual purchase. ## The problem Admaxxer's blended attribution view exposed the overlap cleanly within the first week. Of the $48k Klaviyo attributed to flows and the $31k Meta retargeting attributed to itself, roughly $22k was the exact same customers both tools were claiming. These were post-purchase or near-purchase buyers who were being emailed AND retargeted AND would have bought anyway, because both tools were sitting on top of an already-warm audience. The math matters. True incremental email contribution, once overlap with retargeting was stripped out, was about $26k/mo — not $48k. True incremental retargeting contribution, once overlap with email was stripped out, was about $9k/mo — not $31k. The retargeting ROAS of 3.9x collapsed to 1.1x on genuinely incremental revenue. Meanwhile, Meta prospecting (the part of the funnel where the buyer was actually being acquired, not re-reached) was running at 1.6x reported ROAS and getting 40% less budget than retargeting, because retargeting looked like the obvious winner. This is the retargeting-addiction pattern the incrementality-testing community has been warning about for years: "measured wasted spend in retargeting campaigns ranges from 20% to 75%" and "only 40 percent of retargeting conversions were truly incremental." Northvale was sitting squarely in that distribution. They had been paying Meta to re-reach buyers that Klaviyo was already closing. ## What they did with Admaxxer - **Step 1 — Install the pixel and connect Klaviyo.** Pixel went on the Shopify theme in 10 minutes, firing the standard first-party event set (PageView through Purchase). Connected Klaviyo via API key so flow-sent events (Flow Email Sent, Flow Email Opened, Flow Email Clicked) could be joined with pixel events at the `customer_id` level. The join key was hashed email, so users who interacted with email and later purchased on a different device were still linked to the correct attribution path. - **Step 2 — Connect Meta (paste-token) and Google (OAuth).** Standard connection flow — no app review needed for Meta thanks to the long-lived user token pattern. Spend and conversion data backfilled overnight from Meta Marketing API v21.0 and Google Ads GAQL. Tokens encrypted AES-256-GCM at rest, rotated quarterly by the cron expiry watcher. - **Step 3 — Run the blended attribution view.** Opened the [attribution dashboard](/features/capi-match-rate) and looked at the overlap card: "Revenue claimed by multiple channels." Saw the $22k/mo overlap between Klaviyo flows and Meta retargeting immediately, broken down by buyer cohort (first-time vs repeat vs VIP segment). The breakdown was critical — most of the overlap was on repeat buyers, which is exactly the segment that retargeting is least incremental for. - **Step 4 — Ask the Claude agent to propose a reallocation.** Prompt: *"For every customer who bought in the last 90 days after being in a Klaviyo post-purchase flow AND being shown a Meta retargeting ad, calculate incremental revenue assuming we removed the retargeting touch. Then recommend a new retargeting budget."* The agent used `query_metrics` against the incrementality pipe (which runs a two-proportion z-test on paid-vs-organic cohorts) and returned: retargeting incremental contribution $9k/mo, current spend $8k/mo, true incremental ROAS ~1.1x. Recommended 40% budget cut with the freed spend going to prospecting, plus a proposed monitoring rule to detect regression. - **Step 5 — Cut retargeting 40%, reallocate to prospecting, monitor cohorts for regression.** Executed via `update_campaign` with confirmation. The confirmation screen showed each retargeting ad set's current budget, the proposed new budget, and a preview of the spend shift. Set up a weekly cohort check via the agent: if new-customer acquisition rate drops week-over-week more than 5% against the pre-cut baseline, alert to Slack immediately rather than waiting for the Monday digest. - **Step 6 — Audit the Klaviyo flow cadence.** Parallel to the paid-media cut, the email operator used the overlap data to tune the post-purchase flow itself: reduced Email 3 (which had the worst open-to-conversion ratio and the highest retargeting overlap) from the sequence, added a short-delay cross-sell email for sleep-support buyers, and narrowed the Winback segment entry criteria to avoid double-mailing active retargeting audiences. ## The results After 60 days post-reallocation: | Metric | Before | After | Change | |-------|--------|-------|--------| | Klaviyo-claimed flow revenue | $48,000/mo | $46,500/mo | -3% | | Meta retargeting spend | $8,000/mo | $4,800/mo | -40% | | Meta retargeting claimed revenue | $31,000/mo | $19,000/mo | -39% | | True incremental retargeting ROAS | 1.1x | 1.8x | +64% | | Meta prospecting spend | $19,000/mo | $22,200/mo | +17% | | New customers acquired (monthly) | 1,120 | 1,340 | +20% | | Total monthly revenue | $280,000 | $283,000 | +1% | | Overlap revenue (double-counted) | $22,000/mo | $9,500/mo | -57% | The revenue held because the retargeting spend being cut was not driving incremental purchases — those customers were coming back via email anyway. The freed $3,200/mo of budget went to prospecting, which increased new-customer acquisition by 20% at a steady CPA. ## Why this worked The fundamental problem — revenue double-counted across tools that each see the buyer once — is invisible inside Klaviyo or Meta individually. Each tool is honest within its own walled garden. The failure mode is using both numbers to make budget decisions without deduplicating them. Industry research has measured this pattern consistently: "measured wasted spend in retargeting campaigns ranges from 20% to 75%" and "only 40 percent of retargeting conversions were truly incremental." Northvale's 1.1x true incremental retargeting ROAS sat right at the typical distribution. Admaxxer's [attribution engine](/features/capi-match-rate) joins pixel events, Klaviyo flow events, Meta ad-set impressions, and Shopify order data at the user level and computes true incremental contribution per channel, not platform-reported contribution. The [Claude agent's](/features/claude-agent) `query_metrics` tool runs against the [incrementality pipe](/guides/incrementality) — one of the 33+ Tinybird pipes — which computes a two-proportion z-test on paid-vs-organic cohorts to produce an incrementality estimate rather than an attribution estimate. The destructive-action confirmation mattered here too. The CMO wanted to cut retargeting 40% but needed to be sure the decision was defensible if new-customer acquisition cratered. The agent's recommendation came with a proposed monitoring rule ("alert if new-customer rate drops >5% WoW") and the `update_campaign` confirmation step gave the CMO a chance to review before anything actually changed in Meta. That workflow — agent proposes, human confirms, agent monitors — is the right shape for any incrementality-driven reallocation. ## What other DTC supplement brands can learn - Klaviyo flow-attributed revenue is an upper bound, not a lower bound. Subtract the overlap with retargeting before using it to justify anything. A $48k flow-attributed number minus a $22k overlap is a $26k number — still meaningful, still justifies the seat, but materially different from $48k. - Retargeting ROAS as reported by Meta is almost always wrong for warm audiences. True incremental ROAS is what matters, and it is often under 1.5x once email overlap is stripped. Some measured datasets put the figure even lower — 20 to 60 percent of retargeting spend is non-incremental in the average DTC account. - The first 30 days of a new tool should be spent reconciling what your existing tools are claiming, not building new reports. Overlap is where the money is. - Use an incrementality framework, not an attribution framework, for retargeting budget decisions. Two-proportion z-test on paid-vs-organic cohorts is the minimum viable rigor. Geo-lift tests are the next step up if you can afford the holdout cost. - Pair every retargeting cut with a monitoring rule. If new-customer acquisition holds, the cut was correct; if it drops, reverse cleanly. Never cut without a rollback trigger defined. - Supplement brands specifically: post-purchase email flows are unusually strong for this category (repeat ordering cadence is real — magnesium runs out on schedule, sleep blends get reordered predictably), which makes retargeting overlap worse than average. Audit it quarterly, minimum. - VIP and repeat-buyer segments should be explicitly excluded from retargeting audience definitions when possible. Meta's "past purchasers last 180 days" is an attractive retargeting audience from the platform's POV and a money-fire from yours — those customers are already being emailed. - The operator learning matters as much as the budget shift. Once the CMO understood the overlap math, every subsequent retargeting proposal got challenged with "what's the email overlap here" — a cultural change that persists past any single campaign.

Frequently Asked Questions

Could my supplement brand do this?

If you run Klaviyo plus Meta retargeting, the overlap exists. The size depends on list engagement and retargeting audience definition, but the pattern is near-universal. The first blended attribution view usually surfaces the number in week one.

How long did the analysis take?

The blended attribution overlap card showed up immediately after pixel install and Klaviyo connection — about 24 hours of data backfill. The Claude agent's incrementality recommendation took 30 seconds once the data was loaded.

Do I need to stop using Klaviyo?

No. Northvale kept Klaviyo exactly as it was — the change was purely on the Meta retargeting side. Klaviyo's own flow reporting is still useful for tuning email content; it just shouldn't be used alone to size retargeting budgets.

Does the Claude agent cut retargeting budget automatically?

No. The agent proposes a reallocation with incrementality data and a proposed monitoring rule. Actually cutting the budget via update_campaign requires explicit confirmed: true from the operator.

What plan does this require?

Northvale ran on the Pro plan at $79/mo — it includes the Claude agent, the incrementality pipe, blended attribution, and the Klaviyo integration. A 7-day free trial is available with no credit card.

Try Admaxxer Free