Skip to main content
Completions

Marketing Engineering with AI · Coming soon

Stop rebuilding the weekly marketing report from GA4 exports

For marketers and analysts who write some SQL and spend Monday stitching GA4 and store exports into a report nobody fully trusts. You build a dbt project on Google’s public GA4 sample and the Olist e-commerce dataset: sessions, orders, channels and customers, with tests that catch duplicates before a dashboard does. Then you point it at your own data.

The course: A marketing data model with dbt, from raw events to answers

$25 $49 early-bird price

This course is being built now. Join the early-access list to reserve the early-bird price and shape what it covers.

Joining the list is free. You only pay if you buy at launch, at the early-bird price.

If this sounds like your week

  • Every Monday starts with exports from GA4, the store and the ad platforms, pasted into the same sheet.
  • GA4 reports one revenue figure, the store reports another, and the meeting turns into explaining the gap.
  • The BigQuery export arrives as nested event rows, so every query starts from scratch.
  • Nothing catches a duplicated order or a broken join until someone senior spots a strange number.

What you do now, and where it stops working

Most teams run on spreadsheets, a connector such as Supermetrics and a Looker Studio report that blends sources. It holds until an API changes, a column is renamed or a second person edits the logic — and then finding the mismatch takes longer than building the report did.

What changes after the course

  • The weekly channel report reads from one modelled table instead of four exports.
  • Every revenue number traces from the dashboard back to the raw event that produced it.
  • Tests fail when an order is duplicated or a source stops loading, before the number reaches a meeting.
  • Generated documentation lets a colleague look up what every column means without asking you.

How it works: Raw to answers in three layers

  1. 1Staging: flatten the nested GA4 export and the Olist orders into clean rows per event, order and customer.
  2. 2Intermediate: build sessions, assign each order a channel and join customers across sources.
  3. 3Marts: one table per question your team asks weekly, such as revenue by channel and new versus returning customers.
  4. 4Tests and docs: uniqueness, not-null and relationship tests on every key, with a checklist for when one fails.
  5. 5Repoint: swap in your own sources, using partitioned and incremental models so a query does not scan every day of history.

What you get

  • Complete dbt project (staging, intermediate and mart models)
  • Data tests and a test-failure checklist
  • SQL cheat sheet for marketing questions
  • Video walkthrough of every model

This is for you if

  • You write basic SQL and want a structure around it.
  • Your reporting lives in GA4, store exports and spreadsheets, or in a warehouse nobody trusts.
  • You want to learn dbt on marketing data rather than a generic sample project.

Skip it if

  • You already run dbt in production with tests and docs; most of this will repeat what you know.
  • You have never written SQL. The course assumes you can read a JOIN.
  • You want a no-code dashboard tool. This is code, in a repository you own.

Before you join

Is this just the free dbt course repackaged?
The free dbt Fundamentals course teaches the tool on a fictional sandwich shop. This course works on marketing data — the GA4 export with its nested event rows, and a real e-commerce order history — and builds the models a marketing team asks for. Take the free course as well; the two fit together.
I do not have a warehouse at work. Will this still help?
You build the whole project on public data, so you can finish it without one. The last module covers what to ask for when you want to run it on your own data, which is usually the free GA4 export to BigQuery.
Will BigQuery costs get out of hand on GA4 data?
An unfiltered query over the GA4 export can scan far more data than you expect, and dbt forum threads describe exactly that. The course builds partitioned, incremental models and shows you how to check what a query will scan before you run it.
Who is teaching this?
Jay West leads DevOps for the marketing organisation of a multi-location specialty retailer. He is building this course in public alongside the project itself, and the working dbt project is included — every model, test and doc — so you can check each step rather than take it on trust.
Is the course finished?
No. It is in early access. Joining the list is free and gets you the launch date and the $25 early-bird price; the list price is $49.

Reserve the $25 early-bird price

Rather have it built for you? Describe the project and the same work can be done for your team.

All courses