Skip to content
NEW: Martech Stack Builder on your phone →

Quickstart stack

A real-time streaming stack: everything continuous

Every connection here is continuous or close to it. Snowplow collects, Kafka carries, Databricks and dbt model, and Hightouch activates within minutes. There is no daily batch anywhere in it.

Open this stack in Stack Builder → No sign-up. It opens on the canvas, ready to change.

10 tools · 12 connections

OneTrust to GTM Server-side: Consent signalOneTrust to Snowplow: Consent stateGTM Server-side to Snowplow: Server-side eventsSnowplow to Apache Kafka: Enriched good streamSnowplow to Google Analytics 4: Analytics forwardApache Kafka to Databricks: Structured Streaming ingestDatabricks to dbt: Bronze tablesdbt to Databricks: Gold modelsDatabricks to Hightouch: Audience & propensity modelsHightouch to Google Ads: Customer MatchHightouch to Braze: Profile syncBraze to Apache Kafka: Engagement events OneTrust Consent Management dbt Data Modeling Google Ads Advertising GTM Server-side Server-side Tagging Snowplow Event Collection Apache Kafka Event Streaming Databricks Lakehouse Hightouch Reverse ETL Google Analytics 4 Analytics & BI Braze Customer Engagement
Scroll sideways to see the whole stack. Arrows show the direction data moves. Every connection is listed by name below.

What it is for

Teams with engineering capacity and a need for speed build this: marketplaces, gaming, subscription businesses that act on behavior within the session or the hour.

It is the stack to read the freshness of each connection against: how fresh does each one need to be, and what does it cost to keep it that fresh.

Why each tool is here

  • OneTrust Consent Management

    Consent management. It records what each visitor agreed to and passes that state on, so the tools downstream only collect and use what they are allowed to. Here it sends consent to both collectors.

  • GTM Server-side Server-side Tagging

    Server-side tagging. Forwards events to Snowplow.

  • Snowplow Event Collection

    Behavioral event collection, with validation and enrichment. Sends the validated event stream on to Kafka.

  • Google Analytics 4 Analytics & BI

    Web analytics, fed from Snowplow.

  • Apache Kafka Event Streaming

    Event streaming. Carries Snowplow events and Braze engagement to the lakehouse.

  • dbt Data Modeling

    Data modeling. Turns the raw (bronze) tables into the modeled (gold) ones every 15 minutes.

  • Databricks Lakehouse

    The lakehouse. Streams events in and serves audience and propensity models out.

  • Google Ads Advertising

    Paid search. Receives Customer Match every 15 minutes.

  • Hightouch Reverse ETL

    Reverse ETL, streaming. Syncs models to Braze on each change and to Google Ads every 15 minutes.

  • Braze Customer Engagement

    Customer engagement. Receives profile updates in real time and sends engagement back to Kafka.

How data flows

The server container and Snowplow both receive consent from OneTrust. Snowplow streams validated events to Kafka and forwards a copy to GA4. Kafka streams into Databricks.

dbt reads the raw tables and writes modeled ones every 15 minutes. Databricks streams audience and propensity models to Hightouch, which updates Braze on each change and Google Ads every 15 minutes. Braze sends engagement back into Kafka.

Every connection

  1. OneTrust to GTM Server-side Consent signal · Real time, on each event
  2. OneTrust to Snowplow Consent state · Real time, on each event
  3. GTM Server-side to Snowplow Server-side events · Streaming, continuously
  4. Snowplow to Apache Kafka Enriched good stream · Streaming, continuously
  5. Snowplow to Google Analytics 4 Analytics forward · Streaming, on each event
  6. Apache Kafka to Databricks Structured Streaming ingest · Streaming, continuously
  7. Databricks to dbt Bronze tables · Streaming, continuously
  8. dbt to Databricks Gold models · Batch, every 15 minutes
  9. Databricks to Hightouch Audience & propensity models · Streaming, continuously
  10. Hightouch to Google Ads Customer Match · Batch, every 15 minutes
  11. Hightouch to Braze Profile sync · Real time, on each event
  12. Braze to Apache Kafka Engagement events · Streaming, on each event

When this is the wrong choice

  • Your channels only act daily. Streaming infrastructure costs more to run than batch, and buys nothing if email goes out once a day.
  • You have no platform engineers. Kafka and a lakehouse need owners on call.

Other quickstart stacks

Make this stack yours

Open it on the canvas, swap in the tools you use, and connect them. No sign-up until you want to keep it.

No credit card required. Free plan available.