This dbt project is a worked example to demonstrate how to model subscription revenue. Check out the full write-up here, as well as the documentation site for this project here.
Note that this project is not a package -- it is not intended to be installed in your own dbt project, but instead provides a good starting point for building similar data models for your own business.
The SQL in this project is compatible with Snowflake¹.
If you want to run this project yourself to play with it (assuming you have dbt installed):
- Clone this repo.
- Create a profile named
playbook
, or update theprofile:
key in thedbt_project.yml
file to point to an existing profile (docs). - Run
dbt deps
. - Run
dbt seed
. - Run
dbt run
-- if you are using a warehouse other than Snowflake, you may find that you have to update some SQL to be compatible with your warehouse. - Run
dbt test
.
- We decided to not make the SQL multi-warehouse compatible since this project is intended to be a demonstration, rather than a package. Making this project multi-warehouse compatible would complicate the SQL.