The Problem
We sell smart eyewear. Our customers include safety managers buying in bulk for construction crews, golfers who want hands-free calls on the course, runners who hate earbuds, and law enforcement officers who need ANSI-rated tactical comms.
These are completely different people with completely different pain points. But they all land on the same product page.
The result is predictable: they bounce. A safety manager doesn't care about golf. A runner doesn't care about OSHA compliance. The page tries to speak to everyone and connects with no one.
This is the mid-funnel gap. Traffic arrives from ads — targeted, persona-specific ads — and then hits a generic page that throws away all that targeting context. The numbers tell the story:
- 800K workplace eye injuries per year (BLS)
- 68% of B2B buyers prefer self-serve research (Gartner)
- 3–5x conversion lift from personalized landing pages
We needed a system, not a page.
The Hypothesis
Persona-specific experiences — with tailored messaging, social proof from their peers, and ROI calculators for their industry — will deliver 2–3x conversion per segment compared to generic product pages.
The key word is experiences, plural. We don't need one better page. We need the ability to produce many targeted pages, fast, and measure each one independently.
The Solution: Experience Factory
We built a monorepo that works like a factory. There's a single reusable template, and each new persona experience is a standalone Astro 5 project with its own subdomain, its own messaging, and its own tracking.
The structure:
the brand-experiences/
shared/ # tracking, shopify client, brand config
template/ # copy to create a new experience
experiences/
armor-b2b-safety/ # Safety managers
reebok-golf/ # Golfers
reebok-running/ # Runners & cyclists
...
The stack is deliberately simple:
- Astro 5 — Static pages with interactive islands. Fast by default.
- React 19 — For interactive components (ROI calculators, cart drawers, lead forms).
- Tailwind CSS — Utility-first styling, consistent across experiences.
- Cloudflare Pages — Edge hosting with auto-deploy on git push. Free for most use cases.
Each experience deploys to its own subdomain. armor-safety.the brand.co for safety managers. reebok-golf.the brand.co for golfers. Independent analytics, independent iteration.
What an Experience Contains
The pilot — Armor Safety, targeting EHS directors at construction and manufacturing companies — has 13 components:
Hero, Problem, Solution, Products, ROI Calculator, Lead Form, Cart Drawer, Comparison Table, FAQ, Social Proof, Use Cases, Header, Footer.
The key features that matter:
- Interactive ROI calculator — A safety manager enters their team size and current injury costs. The calculator shows payback period for our product. This alone drives engagement.
- Shopify Storefront cart — Add to cart without leaving the experience. Checkout happens on Shopify.
- B2B lead form — Company, title, team size, industry. Submits via Cloudflare Function to Slack, HubSpot, and Supabase simultaneously.
- Five-pixel tracking suite — GA4, GTM, Meta, TikTok, Google Ads. All fire from a single
fireEvent()call.
Three Checkout Paths
Not every buyer converts the same way. Every experience supports three paths:
- D2C — Buy Now button → Shopify Checkout. For individuals.
- B2B Self-Serve — Bundle packs (e.g., Safety Shield 6-Pack, $584) → Shopify Checkout. For small teams.
- Enterprise — Lead form → Slack notification → HubSpot deal → Sales team drafts a custom order. For large teams.
The checkout path adapts based on the experience type. DTC experiences (golf, running) emphasize email capture and Klaviyo flows. B2B experiences (safety, law enforcement) emphasize lead forms and HubSpot routing.
Full-Funnel Tracking
Every pixel fires on every experience. We don't pick and choose. The shared tracking module handles all platforms:
- GA4 — Pageview, conversion goals
- GTM — Tag orchestration
- Meta Pixel — Retargeting, Conversions API
- TikTok Pixel — Attribution, lookalike audiences
- Google Ads — Conversion tracking
- Klaviyo — Email behavior (DTC experiences)
Custom events track engagement depth: scroll milestones (25%, 50%, 75%, 100%), every CTA click, lead form submissions, email subscribes, product views, and checkout initiations. All events fire to every configured platform simultaneously. Scripts auto-skip if placeholder IDs are detected, so the template works out of the box without errors.
Speed
This is where the factory model pays off.
| Traditional CMS | Experience Factory | |
|---|---|---|
| Research to live | 4–6 weeks | 3–5 days |
| A/B test cycle | 2 weeks | Hours |
| New locale variant | Weeks | 1 day |
| New persona variant | Start over | 2–3 days |
Change a headline, push to git, Cloudflare auto-deploys, GA4 Realtime confirms the change within minutes. The feedback loop is tight enough to iterate within a single work session.
Localization
Same template, different markets. Copy the experience directory, translate content, swap the Shopify market routing and pixel IDs, deploy to a regional subdomain.
armor-safety.the brand.co— USarmor-safety-ca.the brand.co— Canadaarmor-safety-eu.the brand.co— EU (English)armor-safety-mx.the brand.co— LATAM (Spanish)
What changes per locale: language, currency display, regulatory references (OSHA vs. EU standards), Shopify store routing, ad pixel IDs, and testimonials. What stays the same: every component, every interaction pattern, every tracking hook.
The Roadmap
Six experiences planned through April 2026:
| Experience | Persona | Type | Timeline |
|---|---|---|---|
| Armor B2B Safety | Safety/EHS managers | B2B | Feb ’26 |
| Reebok Golf | Golfers | DTC | Mar ’26 |
| Reebok Running | Runners, cyclists | DTC | Mar ’26 |
| Armor LE | Law enforcement | DTC | Mar ’26 |
| Reebok Commuter | Urban commuters | DTC | Apr ’26 |
| vs Ray-Ban Meta | Smart glasses shoppers | DTC | Apr ’26 |
Open-Sourcing the Template
We're releasing the template as an open-source project: astro-experience-factory.
What's included:
shared/— Tracking module, Shopify Storefront client, brand config stubstemplate/— The base experience scaffold. Copy it, customize it, deploy it.docs/PLAYBOOK.md— The full workflow from ICP research to deployment to measurement
What's not included: our actual live experiences, pixel IDs, or brand-specific content. The template is the how, not the what. Your ICPs, your copywriting, and your data are what make it convert — the factory just makes it fast.
If you're running an e-commerce brand with multiple buyer personas and you're tired of one-size-fits-all product pages, fork it.