All Writing
๐Ÿ“Š Data & DecisionsDeep DiveSeptember 20264 min read

I Set Up Product Analytics at Three Companies Without a Data Engineer. Here's the Stack.

When you're at an early stage startup or a lean team, you don't have a data engineer. You don't have a fancy BI tool. You barely have time to ship features. But you still need to know what's working. Here's how I actually did it.

At Sonic Linker, we were three people building an AI SaaS platform. No data team. No analysts. Just me, trying to figure out if our product was actually working.

I've done this three times now, at Sonic, Finvestfx, and with clients at NJ Group. Every time, the constraint was the same: no data engineer, tight budget, and I needed answers in days, not months.

Here's the thing. Most PMs overthink this. They wait for the perfect setup, the right schema, the clean event taxonomy. Meanwhile, they're flying blind. I learned to get scrappy.

Start with Mixpanel or Amplitude, but only track 5 things

At Sonic Linker, I set up Mixpanel in 48 hours. Not because I'm fast, but because I only tracked five events at launch:

  • User signed up
  • User completed onboarding
  • User created first project
  • User invited a teammate
  • User came back within 7 days

That's it. No fancy funnel. No 40-event taxonomy. Just the core loop.

Why? Because when you have no data engineer, every event you add is technical debt. Your engineering team has to instrument it, test it, and maintain it. If you're not going to look at it weekly, don't track it.

I used Mixpanel's free tier (up to 100K events/month) and the JavaScript SDK. Took me two hours to get the first event firing. The rest of the day was QA and making sure it actually worked in production.

At Finvestfx, I did the same thing with Amplitude. Different tool, same philosophy. Track the minimum viable set of events that tells you if the product is alive.

Use Google Sheets as your BI tool

This sounds ridiculous, but hear me out.

At Sonic, I exported Mixpanel data to Google Sheets every Monday. Retention cohorts, activation rates, feature adoption. All in a shared sheet that the whole team could see.

Why Sheets? Because everyone knows how to use it. The founder could check it. The designer could check it. I didn't need to explain how to use Tableau or Metabase. I just dropped a link in Slack.

I set up a simple dashboard with five tabs: - Weekly signups and activation - 7-day retention cohorts - Feature adoption (which features were people actually using) - Drop-off points (where users stopped in onboarding) - Enterprise client health (at Finvestfx, this was contract renewals and ticket volume)

Mixpanel and Amplitude both let you export to CSV. I'd pull the data, drop it in Sheets, and spend 20 minutes cleaning it up. Then I'd link it in our Monday standup.

This isn't scalable forever. But it worked for 18 months at Sonic and got us through our first 20 enterprise clients at Finvestfx.

Add one SQL-accessible source for when you need to dig deeper

Around month three at Sonic, Mixpanel wasn't enough. I needed to answer questions like "which cohort of users from our October campaign is still active?" or "what's the overlap between users who invited teammates and users who upgraded?"

That's when I added a lightweight SQL layer. Not a full data warehouse. Just something I could query.

I used Supabase (Postgres with a free tier) and set up a simple sync. Every night, a script dumped our core user data and event logs into Supabase. I could write SQL queries in their web UI and export the results.

This sounds technical, but it's not. If you can write a basic SELECT statement, you're good. And if you can't, ChatGPT can write it for you in 10 seconds.

At Finvestfx, I did something similar with BigQuery's free tier. Same idea. Just a place to run ad hoc queries when the pre-built dashboards weren't enough.

The real work isn't the tools. It's deciding what to measure

Here's what I got wrong early on: I thought analytics was about instrumentation. It's not. It's about knowing what question you're trying to answer.

At Sonic, I initially tracked everything. Button clicks, page views, hover events. It was useless. I had data but no insight.

What worked: I started with one question per week. "Are users finishing onboarding?" Then I'd track only the events that answered that question. The next week, a new question.

By the end of three months, I had a lean, useful analytics setup that actually informed decisions. Not because I had a perfect schema, but because I was disciplined about what mattered.

What you actually need

  • One event tracking tool (Mixpanel or Amplitude, free tier is fine)
  • Five core events that map to your product's critical path
  • Google Sheets for dashboards (seriously)
  • Optional: a SQL-accessible source for deeper analysis (Supabase, BigQuery)
  • One question per week to keep you focused

I've seen PMs wait months for a "proper" analytics setup. They lose momentum, ship blind, and guess at what's working. You don't need a data engineer. You need clarity on what you're trying to learn, and a willingness to get your hands dirty with a CSV export.

That's it. That's the stack. It's not fancy, but it works.