Trevorwithdata

A curious PM's experiments with AI, analytics, and building things.

Want to try it? Join the waitlist

Latest Posts

The Funnel Block: Multi-Step Conversion Analysis in a Journey Analytics Tool

Funnels look like a solved problem until you try to build one for a journey analytics tool. Cross-device users, out-of-order events, conversion windows, person vs session scope - here's how we built a funnel block that handles all of it on top of a single ClickHouse function.

Read more

Notebooks, Blocks, and the Table Builder: Making Data Easier for Humans and AI to Explore

Setup is one thing. Actually exploring your data is another. Here's how we built notebooks as a canvas for reusable 'blocks' that can live inside a notebook or get dropped into an AI chat - starting with the most important block of all: the table builder.

Read more

Meet 'Ask Trevor': The AI Assistant That Speeds Up Everything You Do in Journey Analytics

Setting up a journey analytics platform means connecting warehouses, configuring datasets, building identity stitching, and defining metrics, dimensions, and segments - easily hours of work. Here's how we built an AI assistant that handles all of it through natural conversation, powered by the Claude Agent SDK and MCP tools.

Read more

Calculated Metrics: How Post-Aggregation Formulas Turn Counts Into Insights

Your analytics platform can count page views and sum revenue, but the metrics that actually drive decisions - conversion rate, average order value, revenue per visitor - require combining those building blocks with math that runs after aggregation. Here's how we built a calculated metrics engine with formula-level segments, statistical functions, and a live preview.

Read more

Segments: How Sequential Filtering Makes Journey Analytics Actually Useful

Traditional BI tools let you filter by 'who bought something.' Journey analytics segments let you filter by 'who browsed, then added to cart within 5 minutes, then purchased within the same session.' Here's how to build a segment engine with sequence awareness, scope control, and an AI builder that writes the segment logic for you.

Read more

The Semantic Layer: How Metrics and Dimensions Turn Messy Events Into Clean Analytics

Your events table has millions of rows, but an analyst just wants 'Revenue by Marketing Channel.' Here's how we built a semantic layer with dimension persistence and metric deduplication that turns messy data into clean, trustworthy reports - no window functions required.

Read more

Query-Time Transformation: How to Turn Raw Events Into Journey Analytics

Journey analytics requires sessionization, computed dimensions, segments, and smart aggregation - all at query time. Here's how to build a 6-layer SQL architecture to make it work.

Read more

Identity Stitching: How to Resolve Users Across Devices for Journey Analytics

A cookie on a laptop, a device ID on a phone, a CRM record in-store, a phone number at the call center - all the same person. How do you stitch that into one coherent journey? Here's how we built cross-device identity resolution for our DIY journey analytics platform.

Read more

How to Build a Unified Events Table for DIY Journey Analytics

When your data lives in separate tables with different schemas, how do you combine it all into one unified set of data for analysis? Here's how to build a 'Data Group' layer using ClickHouse materialized views.

Read more

Syncing Warehouse Data to ClickHouse with Airbyte

A deep dive into how to use Airbyte to sync data from a data warehouse into ClickHouse - covering CDC, full refresh, and append-only sync modes, the tradeoffs of each, and how to build an API layer on top to keep things simple.

Read more

10 Design Principles for Building a Modern Journey Analytics Solution

Before choosing any technology, I needed to establish what I would and would not build myself - and why that matters.

Read more

Can You Build Your Own Journey Analytics Solution with AI?

What if one PM with AI coding tools could build what usually takes hundreds of engineers? I'm finding out - and sharing everything I learn along the way.

Read more

Curious about Trevorwithdata?

I'm letting a few people try what I've created for free.

Join the waitlist