Context
When marketing and product are working from different versions of performance data, optimization decisions are slow and often wrong. At Ben & Frank, the analytics layer had grown incrementally — event tracking added by different teams, at different times, for different purposes — and the gaps had accumulated.
Marketing couldn't trust campaign attribution. Product couldn't measure experiments cleanly. And the Conversions API gap meant browser-side signals were losing accuracy as tracking restrictions tightened.
Problem
- GA4 was implemented but not structured — events weren't mapped to actual funnel decisions, so the data existed but couldn't be acted on.
- Marketing and product were working from different performance reads on the same campaigns and features.
- No shared tracking plan — each team had its own version of what was being measured and why.
- Browser-side tracking alone was losing reliability; conversion signals needed a server-side complement.
Approach
Delivered three integrations — GA4, Bloomreach, and Conversions API — with a focus on business application, not just data collection. Built a shared tracking plan that product and marketing could both read and act from, rather than maintain separately.
Decisions
- GA4 with a structured event taxonomy — mapped to real funnel decisions, not default Shopify event names.
- Bloomreach for lifecycle communication and customer segmentation — connected to the same customer model the commerce platform uses.
- Conversions API to complement browser-side tracking and give marketing a more reliable attribution signal as cookie tracking erodes.
- One shared tracking plan: clear ownership, clear naming convention, clear update process.
Impact
- Clean, shared measurement layer that product and marketing work from together.
- Reliable attribution for campaign optimization — no more reconciling two different performance stories.
- An experiment loop product could use without depending on marketing to explain what the data means.