Fernbank Outfitters — Outdoor apparel brand moved from Triple Whale to Admaxxer
How an outdoor apparel brand moved from Triple Whale to Admaxxer to unify a Shopify main store and a WooCommerce outlet
Fernbank Outfitters ran two storefronts: Shopify for full-price and WooCommerce for clearance. Triple Whale only saw Shopify. When Admaxxer unified both, the outlet turned out to have a 2.1x higher repeat-purchase rate — and the team had been under-investing in the highest-LTV acquisition channel for a year.
## The situation
Fernbank Outfitters designs technical outerwear for thru-hikers, ski tourers, and bikepackers. They run a three-year-old brand with ~$220k/mo in revenue and a deliberately two-storefront strategy: a Shopify Plus site for full-price, new-season inventory at premium margins, and a WooCommerce outlet site (branded as "Fernbank Outlet") for end-of-season clearance, returns, and seconds. The dual-storefront model is intentional — it keeps the brand equity clean on the main site while still moving clearance volume at healthy margins. Total SKU count is around 180 across both sites, with roughly 110 on the main site and 70 rotating through the outlet as seasons turn.
Their analytics stack was Triple Whale on the Shopify side (installed 18 months prior, running the Sonar pixel with post-purchase surveys at about $500/mo), plus Google Analytics 4 as the single pane that technically saw both sites. Paid media was Meta and Google, with Meta skewing toward the main-site premium line and Google Shopping handling both sites via separate merchant feeds. The founder trusted Triple Whale's Shopify view but treated the outlet as a "clearance bucket" — revenue mattered, but acquisition quality on the outlet was treated as secondary. GA4 was technically unified across both sites but the cross-site identity resolution was leaky, and the team had long ago stopped trying to reconcile GA4's numbers against any other tool.
This dual-storefront pattern is increasingly common as DTC brands scale. The Shopify-only analytics ecosystem has a well-known blind spot: "Triple Whale has no WooCommerce integration. Neither does Recast, Mutinex, or any other modern marketing mix modelling platform — every SaaS MMM tool in 2026 is built for Shopify." For brands with mixed stacks, the industry's default toolset simply does not work.
## The problem
The outlet was invisible in Triple Whale, so the outlet was invisible in every decision. Paid media got allocated based on Shopify-only revenue attribution. Retargeting audiences got built from Shopify pixel data. Klaviyo flows got tuned against Shopify LTV. Meanwhile, the WooCommerce outlet quietly did $48k/mo in revenue with no visibility into which paid touches were driving those purchases.
When Admaxxer was installed and the pixel went onto both storefronts, a surprising pattern emerged. The outlet's repeat-purchase rate at 90 days was 34% — versus 16% for the main Shopify store. First-purchase AOV was lower on the outlet ($58 vs $142), but 7-day and 30-day LTV trends showed outlet customers coming back at 2.1x the rate of main-store customers. The thesis was clarifying: the outlet was a discovery channel. A first-time buyer would try the brand at a discount, have a good product experience, and come back to the full-price store at premium margins. Nobody on the team had seen that loop because Triple Whale literally could not see the WooCommerce half.
The paid-media misallocation followed. Meta had been running prospecting campaigns optimized against Shopify purchase events only. Outlet conversions — the cheaper, higher-LTV first touch — weren't even in the optimizer's training signal. Google Shopping's main-site feed got twice the bid modifier of the outlet feed, even though the outlet feed was driving the better long-term customer.
## What they did with Admaxxer
- **Step 1 — Install the pixel on both storefronts.** 10 minutes on Shopify via the liquid theme, 15 minutes on WooCommerce via the standalone Admaxxer plugin (open-source, listed in the WordPress plugin directory, installs with no extra PHP config). Both fired into the same workspace, so revenue was unified from event one. The pixel's `customer_id` resolution used the hashed email so buyers who purchased on both sites were linked correctly in the cohort-LTV pipe.
- **Step 2 — Connect Meta and Google.** Paste-token for Meta (long-lived user token, encrypted AES-256-GCM at rest), OAuth for Google Ads. The existing Triple Whale Sonar pixel stayed live for the first 30 days as a parity check — blended MER in Admaxxer matched Triple Whale's Shopify-only MER within 2% once the outlet was excluded, confirming the data was clean and the migration could proceed without loss of historical continuity.
- **Step 3 — Build a unified cohort view.** Set up the dashboard to track blended MER across both storefronts, plus separate LTV cohorts per storefront plus a combined view. The 7/30/90-day LTV cut per storefront was the key signal — without it, the outlet's repeat-purchase pattern stays invisible. Added a custom cohort that specifically tracked first-outlet-purchase customers through their subsequent main-store purchases, which was the exact loop nobody had been able to measure before.
- **Step 4 — Reallocate Meta spend using the Claude agent.** Asked: *"Show me Meta ad sets with the highest 30-day blended LTV (combined Shopify + WooCommerce) and flag ad sets that are under-weighted relative to their true LTV contribution."* The agent returned 4 ad sets that were driving outlet traffic at sub-scale; the team reallocated ~25% of Meta prospecting budget toward them via `update_campaign` with confirmation. The reallocation was staged over 7 days in 4 increments to avoid spooking Meta's optimizer into a learning-phase reset.
- **Step 5 — Add outlet-focused creative.** Using the cohort insight, commissioned 6 new Meta creative variants that explicitly led with the discovery-then-retention loop (gift-with-purchase for first outlet order, loyalty rewards hinted at in the second creative frame). Variants ran across the reallocated ad sets with a proper split-test structure, and within 3 weeks the top 2 variants had converged to a clear winner that got scaled.
- **Step 6 — Adjust Google Shopping bid modifiers.** Because the outlet was now visible in Admaxxer, the team could see that the outlet merchant feed had been under-bid relative to its LTV contribution. Bumped outlet-feed bids by 15% and saw conversion-volume-weighted LTV improve without a CPA penalty, because the optimizer was now scoring outlet conversions correctly rather than treating them as equivalent to main-store conversions.
## The results
After 75 days:
| Metric | Before | After | Change |
|-------|--------|-------|--------|
| Total visible monthly revenue | $172,000 (Shopify only) | $220,000 (both) | +28% visibility |
| Blended MER (both storefronts) | Unknown | 3.1x | newly measurable |
| AOV-weighted MER | 2.4x (Shopify-only lens) | 2.8x | +18% |
| 30-day LTV (outlet customers) | Unknown | $134 | newly measurable |
| 30-day LTV (Shopify customers) | $168 | $172 | +2% |
| Meta prospecting spend reallocated to outlet | 0% | 25% | new allocation |
| Main-store conversion rate from outlet repeat buyers | Unknown | 21% | newly measurable |
The most important change isn't in the table: the team now treats the outlet as a discovery channel, not a clearance bucket. First-touch economics flipped from "the outlet is free customer acquisition we don't track" to "the outlet is the single best source of high-LTV customers we have."
## Why this worked
Admaxxer's [pixel is storefront-agnostic](/features/pixel) — it fires on Shopify, WooCommerce, headless, and custom stacks via the same event schema. Triple Whale's architecture, by contrast, was built around Shopify's data model, and every attempt to retrofit WooCommerce has bumped into the reality that WooCommerce order data lives on WordPress, not on a centralized API. Industry-wide, the pattern is widely acknowledged: "Triple Whale has no WooCommerce integration. Neither does Recast, Mutinex, or any other modern marketing mix modelling platform — every SaaS MMM tool in 2026 is built for Shopify." Fernbank's outlet was simply not a solvable problem with a Shopify-first tool, and they had spent 18 months working around the gap with spreadsheets before concluding the tool itself was the constraint.
Two Admaxxer capabilities did the heavy lift. First, [cohort LTV at 7/30/90 days](/guides/cohort-ltv) per acquisition channel — without it, the discovery-to-full-price loop stays invisible no matter how many dashboards you build. Second, [blended MER](/guides/blended-mer-vs-roas) computed against all paid spend and all storefront revenue surfaced the true efficiency of the paid-media stack; Shopify-only MER had been flattering the main site while hiding that outlet-sourced spend was the higher-LTV dollar.
The [Claude agent](/features/claude-agent) closed the loop. `query_metrics` against the cohort-LTV pipe returned the "under-weighted ad sets" answer in a single conversational turn — a query that would have taken a senior analyst half a day to write by hand. Reallocation was a 10-minute decision, not a week-long project.
## What other DTC apparel brands can learn
- If you run multiple storefronts, you need storefront-agnostic attribution. Shopify-only tools create blind spots that compound over quarters, and by the time you notice, you've likely been misallocating for six to eighteen months.
- Treat outlet or clearance stores as discovery channels, not as margin drags. The LTV profile often flips when you measure it properly — the first-purchase discount is the acquisition cost, not a margin hit.
- First-purchase AOV is the least interesting number. Track 30-day and 90-day repeat-purchase rate per acquisition channel — those are the numbers that actually predict cohort profitability.
- Never trust a lens that can only see half your revenue. A partial view of blended MER is a confidently wrong number, and wrong numbers compound into wrong decisions.
- Meta's optimizer can only learn from events it receives. If outlet purchases never hit the optimizer, outlet-friendly ad sets will be starved regardless of their true value.
- Apparel specifically: seasonal clearance cadence makes outlet-vs-full-price LTV one of the most important cohort cuts. Brands that miss it consistently over-invest in premium acquisition.
- The cross-storefront customer is rarer than you think in raw terms but represents an outsized share of lifetime revenue. Identifying them requires identity resolution at the email or phone level, not session-level cookies.
- Before migrating off a Shopify-only tool, run both tools in parallel for 30 days as a parity check on the Shopify portion. Data teams who skip this step end up in conversations about "whose number is right" that could have been pre-answered.
- Retire tools only after the new tool has demonstrated parity on the domain the old tool was good at. Triple Whale's Shopify attribution was genuinely accurate on Shopify; the migration bet was that Admaxxer would match on Shopify AND cover the outlet — and the 30-day parity check confirmed that before any spend decisions moved.
Frequently Asked Questions
Could my apparel brand do this without two storefronts?
The core insight — channel-level cohort LTV over 30-90 days — works for single-storefront brands too. The two-storefront case is just the starkest version, because the blind spot is literal. Any brand running multiple acquisition channels benefits from the same analysis.
Do I have to leave Triple Whale to use Admaxxer?
No. Fernbank ran both in parallel for the first 30 days as a parity check. The numbers matched within 2% on the Shopify side, which gave them confidence to migrate. Running both indefinitely works if your budget allows.
Do I need to be on Shopify?
No. Admaxxer works on WooCommerce, Shopify, headless, BigCommerce, Magento, and custom storefronts. The pixel is storefront-agnostic and the event schema is the same across all of them.
Does the Claude agent move budget between ad sets automatically?
No. The agent can recommend a reallocation and execute it via update_campaign, but every budget change requires explicit confirmed: true. Human-in-the-loop is mandatory for destructive actions.
What plan does this require?
Fernbank Outfitters ran on the Pro plan at $79/mo — it includes the Claude agent, cohort LTV at 7/30/90 days, blended MER, and the query_metrics tool. A 7-day free trial is available with no credit card.