Technical Implementation Plan to Unify Marketing and Product Analytics at Streamline

To develop better reporting, we merged our marketing and product data into one. This outlines how we got that done.

Khushi Lunkad
Growth Lead at Streamline Previously Bubblz

Outcome of full-funnel growth analytics:

Teams can answer questions like these without the help of a data analytics team:

User Behavior and Engagement

  • Where are users coming from? Track UTMs and referral domains.
  • What is their behavior in the product?
  • How many activate and take core product actions?
  • How many people drop off at each stage in the funnel (e.g., from a pageview on the marketing site to copy/download to search asset)?

Product Features and Metrics

  • Which features are popular with different segments of the audience? Should we pivot to a different ICP?
  • What happened to core metrics after we launched the redesign?
  • Where exactly are people getting stuck in the product?

Marketing and Outreach

  • We could send cohort data to lifecycle marketing tools (e.g., send email to users that start a trial but never take core action event)
  • Which partner is sending how many users? How many users sign up / start a trial / convert? To which plans? And when?
  • If we run an ad on Twitter, how many users copy/download at least a single asset? How many convert after a period of X days? For people that use the free product, do they retain?
  • Are we getting most of our new traffic from extensions and plugins?

SEO and Content Performance

  • Which SEO blogs perform best in terms of activation, engagement, and conversion?
  • Which user converted from which blog? (Something GA won't tell you). How long does a user retain from each blog?

Data Analytics and Modeling

  • Map attribution models based on last touch and first touch data.
  • Backport product signals to performance marketing and optimize for other goals besides conversions.
  • What's the word of mouth coefficient for the app?

Implementation team: who did what

The setup was achieved by just a full-stack engineer and myself. For the initial product analytics setup, I brought on a consultant. This took a few weeks of work + additional few weeks of testing data. The work with the consultant wasn't very successful so we eventually took it on internally. 

For the marketing analytics this also took a month long implementation process. Our tech stack includes a react app, framer websites, a blog hosted on Ghost, a shopify store, and multiple plugins and extensions. We use a mix of server-side and client-side tracking to get the most amount of data.

 We ran through the analytics setup ourselves and made some mistakes. That's ok and was expected!


For UTMs, we used Mixpanel's out of the box setup. 

To stitch prelogin and post login data, we used a combination of mixpanel.alias (backend) and mixpanel.indentify (frontend). If you are using only frontend library, then mixpanel.identify will do all the work for you.

 The UTM params are stored in the cookie but are only being sent on certain events and not all of them. I use the Initial UTM params on the profiles most of the time so it's not that big of a deal. But it can be a problem and you could use formulas to bypass this. 

Google Analytics vs Mixpanel 

We still have code lying around for GA4 but I honestly cannot stand their UX anymore. I don't recommend using it. Plus, Mixpanel integrates with Hotjar so you can see a lot more visual data alongside metrics.

 The Success

 The insights we get out of Mixpanel was historically impossible to do so and we couldn't be happier with the time invested. What we ended up with was a robust analytics system that I once only dreamt of having. This allows me to focus on channels that work and remove ones that don't. It also helps identify friction points in the product. 

The limitations 

1) Filters display only 3,000 rows at a time. To view more, you can filter, segment, or export in CSV format with up to 10,000 results. However, for larger sites, especially in programmatic SEO, you'll need to analyse outside of Mixpanel.

 2) There is no native integration with Search Engine Console. However, GSC data is sampled and not entirely accurate for low volume keywords in terms of click data. So Mixpanel is reliable in terms of click data.

 3) Unlike Google Analytics, there's isn't a no-code integration with Looker or Data Studio.

 4) Tag Manager integration is now available. I implemented it quickly on my site (  in 10 minutes, but it doesn't track 'time spent'. This might be an error on my part but could also not be. But the team is shipping fast. A month ago, they didn't have GTM but now they do (after I had a feedback session with their PM). So, tech is evolving in the right direction.

 5) If you have a landing page that also acts as a navigational site item, it's much harder (or impossible to get data) on how many users land because you need to exclude users that just find the page via navigational search. 

6) You don't see metrics like bounce rate right off the top of Mixpanel but you could create a funnel report.

Related Artifacts