HockeyStack’s power and flexibility comes from the fact that we’re able to transform any type of data into a unified data model.

Our unified data model is fundamentally different than the object-based (Salesforce, HubSpot, Marketo, etc.) data model that a lot of people are used to before starting to use HockeyStack.

In the object-based model, you have every type of entity recorded as objects with pre-defined fields. You would have an Opportunity object, a Lead object, a Contact object, each having a list of possible fields, with some of those fields defining relationships between the different objects.

This model was put in place at a time when the customer journey was less complex, and companies had less types of interactions with customers.

In the modern era, customers can interact with a company in thousands of different ways. If you wanted to store all of those interactions in an object-based model, each of those types of interactions would be represented either by a separate object or by a combination of fields. Reporting would be a huge mess, the data volume would be unmanageable for any CRM or marketing automation system, and each type of interaction would need to be completely thought through beforehand.

This is the reason why:

1- CRMs and marketing automation systems are not good at complex data problems such as attribution and intent modeling — their data model is too low resolution and silo’ed to make this work.

2- Attempts to make multi-touch work within those object-based systems always result in a very very crude and inaccurate version of multi-touch that nobody wants to use, or a complete migration from a CRM system to a data warehouse that renders business users completely incapable of using analytics without hand-holding from technical folks.


To solve this problem, HockeyStack’s unified data model is action-based.

An Action is a timestamped interaction along the customer’s journey.

An action can be performed by a customer: Visiting the website, clicking an email, filling out a form, etc.

But it can also be performed by you, the company: creating a Lead in the CRM, sending an email, calling, etc.

The customer might be an individual, in the case of a website visit, or it might be an organization, in the case of a LinkedIn Ad Engagement where we don’t know who the individual is.

The interaction can have infinite number of different qualities. For example, a website visit might be qualified using its source, but an email might be qualified using the campaign name or the subject. Furthermore, an outreach email might have different qualities than a marketing email. The list goes on and on.

Considering all of the above, an action is represented using 4 key pieces of information: