webtracking.org

Snowplow

A behavioral data pipeline that collects schema-validated events and delivers them raw to your own warehouse or lake.

Pricing
freemium
Open source
No
Self-hostable
Yes

INTEGRATES: bigquery · snowflake · databricks · redshift · dbt · gtm-server-side

ALTERNATIVES: rudderstack · segment · posthog · heap · google-analytics-4

Snowplow is not a dashboard product — it is a first-party event pipeline. Trackers (20+ SDKs for web, mobile, and server) emit events into a collector you run in your own cloud or Snowplow’s, the pipeline validates and enriches them, and loaders land the raw, structured events in your warehouse. Analysis happens entirely downstream: Snowplow maintains dbt packages — Unified Digital for sessionization and identity stitching, plus an Attribution package — that model the event stream incrementally, and BI sits on top of your warehouse.

How it models data. The core idea is the self-describing event: each event carries a reference to the JSON Schema version it was validated against, so downstream consumers always know what every field means even as definitions evolve. Schemas live in the Iglu registry, and every event can carry schema-defined entities (contexts) — user, page, product, whatever you define — attached alongside the event itself. A handful of baked-in event types (page views, page pings, structured events) land in standard columns; Snowplow’s docs call structured events a legacy format and steer you toward self-describing events for anything custom. Validation is non-lossy: events that fail schema checks route to a failed-events stream and can be reprocessed rather than silently dropped.

Destinations. Loaders target Redshift, Snowflake, BigQuery, and Databricks as warehouses; S3, GCS, and ADLS/OneLake as lakes; and Kinesis or Pub/Sub as real-time streams. Event forwarding to tools like GTM Server-Side is also supported.

Implementation notes. Terraform modules automate the quick-start deployment, and Snowplow estimates the out-of-the-box Community Edition pipeline handles roughly 100 events/second (~9M events/day) at around $200–240/month in AWS or GCP infrastructure. Budget real engineering time regardless: schema design, enrichment configuration, and the dbt modeling layer are yours to own.

The licensing gotcha. Core pipeline components moved from Apache 2.0 to the source-available Snowplow Limited Use License (v1.0 in January 2024, v1.1 in December 2024). Under SLULA 1.1, self-hosted production use requires a commercial license — Community Edition is explicitly for testing and evaluation only, and the earlier “highly available” carve-out that permitted some production use was removed. Older Apache 2.0-licensed releases remain forkable, which is a live consideration for teams that adopted Snowplow when the whole pipeline was open source.

Use it when a data engineering team wants governed, event-level behavioral data as a warehouse asset rather than a vendor’s aggregates, and is prepared to pay for either the managed platform or a self-hosted license. Look past it when you have no data engineers, need reporting out of the box, or your volumes do not justify operating a pipeline.

Visit site → Docs