Skip to content

A fully incremental model, that transforms raw web & mobile event data generated by the Snowplow JavaScript & mobile trackers into a series of derived tables of varying levels of aggregation.

License

snowplow/dbt-snowplow-unified

Repository files navigation

early-release License Discourse posts

snowplow-logo

dbt-snowplow-unified

This dbt package:

  • Transforms raw web & mobile event data generated by the Snowplow Snowplow JavaScript tracker & iOS tracker, Android tracker or React Native tracker into a series of derived tables: views, sessions and users.
  • Derives a mapping between user identifiers, allowing for 'session stitching' and the development of a single customer view across the mobile and web platforms.
  • Processes all web and mobile events at the same time, incrementally. It is not just constrained to page and screen view events - any custom events you are tracking will also be incrementally processed.
  • It is designed in a modular manner, allowing you to easily integrate your own custom dbt models into the incremental framework provided by the package.

Please refer to the doc site for a full breakdown of the package.

Please note that this data model is under the Snowplow Personal & Academic License (SPAL). For further details please refer to our documenation site.

Getting Started

The easiest way to get started is to follow our QuickStart guide.

Adapter Support

The current version of the snowplow-unified package supports Snowflake, BigQuery, Databricks, Redshift & Postgres.

Requirements

Installation

Check dbt Hub for the latest installation instructions.

Configuration & Operation

Please refer to the doc site for details on how to configure and run the package.

Models

The package contains multiple staging models however the output models are as follows:

Model Description
snowplow_unified_views A table of page and screen views, including engagement metrics such as scroll depth and engaged time.
snowplow_unified_sessions An aggregated table of session events, including conversions [Optional], grouped on session_identifier.
snowplow_unified_users An aggregated table of sessions to a user level, grouped on domain_userid.
snowplow_unified_user_mapping Provides a mapping between user identifiers, such as domain_userid and user_id.

Please refer to the dbt doc site for details on the model output tables.

Join the Snowplow community

We welcome all ideas, questions and contributions!

For support requests, please use our community support Discourse forum.

If you find a bug, please report an issue on GitHub.

Copyright and license

The snowplow-unified package is Copyright 2023-present Snowplow Analytics Ltd.

This distribution is all licensed under the Snowplow Personal and Academic License . (If you are uncertain how it applies to your use case, check our answers to frequently asked questions.)

About

A fully incremental model, that transforms raw web & mobile event data generated by the Snowplow JavaScript & mobile trackers into a series of derived tables of varying levels of aggregation.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages