Leaving Data Chaos Behind: A Paradigm Shift towards Activity-based Modeling

Explore a powerful approach that can revolutionize the way you understand and utilize data: modeling data as activities. Activities can bring clarity and organization to your data, allowing you to gain valuable insights and make the most of your data.

Leaving Data Chaos Behind: A Paradigm Shift towards Activity-based Modeling

In this blog post, we want to explore a powerful approach that can revolutionize the way you understand and utilize data: modeling data as activities. We'll provide practical examples that demonstrate how activities can bring clarity and organization to your data, allowing you to gain valuable insights and make the most of your data.


In the world of data, finding meaning amidst a vast amount of information can be a daunting task. Traditional approaches often lead to confusion and misunderstanding, leaving businesses struggling to make sense of their data.
But what if there was a way to bring clarity and structure to your data?
That's where modeling data as activities can help. Let's dive in!

The Magic of Activities

Imagine treating each piece of data as an activity—an action performed by a customer or an action done upon them. This simple shift in perspective opens up a world of possibilities. Unlike events, which are simply logs of what happened, activities represent the user or company's intention because they involve actors performing actions or being acted upon. And unlike fact tables, these actions are represented in their atomic form so that they can be used as building blocks to calculate standard business metrics as well as answer nuanced ad-hoc questions. By embracing activities as the foundation of your data model, you'll align your data representation with how businesses naturally discuss and understand their operations.

Just like legos, activities become the building blocks for infinite applications

Simplifying Data Retrieval and Analysis

One of the key advantages of modeling data as activities is the ease of data retrieval. Instead of dealing with complex data structures, you can focus on the actions involved. Want to know when a customer received an email, made a call, or performed specific actions? With activities, you can effortlessly navigate the data landscape and find the answers you're looking for. No more struggling to map questions to convoluted data cubes; activities provide a clear and direct path from inquiry to insight. Even when querying data from different source systems (e.g., Klaviyo to Salesforce to Stripe), the approach is simple. An activity structure utilizes temporal joins, using timestamps and customer identifiers for seamless integration between systems, rather than relying on foreign keys, which are frequently absent or inconsistently recorded.

A Common Language for Clarity

Communication is crucial in any business setting, and data should be no exception. Modeling data as activities fosters a common language for discussing and understanding information. Imagine having a data dictionary where everyone speaks the same terminology—eliminating confusion and preventing misinterpretation. With activities as your foundation, you can promote collaboration and ensure that everyone is on the same page when it comes to data analysis and decision-making.

Avoiding Missteps
Data can be a treacherous landscape, prone to pitfalls and missteps. Traditional data models often lead to incorrect analyses and flawed decision-making due to mismatched relationships and far-fetched hypotheses. By embracing activities, you can sidestep these dangers.

For example, a stakeholder may want to know "if the timing of a new course launch impacted the sign-up rate," but the time of the launch and sign-up behaviors are not intrinsically linked. By reframing the question from the perspective of the customer (aka the activity representation), we'd naturally look for the "first time someone became aware of the course," such as an email announcement or webpage visit. The time of this event is much more likely to have a correlation with sign-ups than the course launch itself since the customer had no awareness of the launch time. And as a result, we're much more likely to extract a meaningful signal from our data. Activities provide clarity on the questions that need answering, ensuring that you focus only on the relevant data. Say goodbye to the frustration of trying to connect unrelated data points and welcome a more accurate and insightful data interpretation.

As we conclude our exploration of activities as a data modeling approach, it's evident that this paradigm shift holds immense potential. By representing data as activities, you can transform chaos into clarity, enabling you to extract actionable intelligence and make informed decisions. Explore the advantages of incorporating activities for yourself and witness the positive impact on your data strategy.


Check us out on the Data Engineering Podcast

Find it on the podcast page or stream it below