In a Nutshell:

Component-based tracking is a simple framework to help teams define and standardise behavioural tracking events based on UI components across any digital product.

The core idea is to name behavioural events in accordance to the UI component they are connected to, such as buttons, cards, navigation elements, etc. All other information (i.e. business, user or product contexts) is passed as custom properties.

The goal is to have a single and scalable tracking schema that is easy to implement, maintain, document and use.

Example: PayPal Mobile App

Depending on the entry point, sending a payment via the PayPal app takes 3 to 4 clicks. This is how event names could be named using the traditional approach:

Screenshot 2023-08-03 at 15.45.50.png

And this is how they would be named using the component approach:

Screenshot 2023-08-03 at 16.40.55.png

We of course need some context information to get the full granularity, and today I would use Matthew Brand’s Data Library to enrich the event with the following (amongst other) properties:

The reason why we call all of the above “button_click” is because they are all defined as buttons in the design component library 👉

The same follows for other UI elements like cards, notification banners, navigation elements, etc. Checkout Matthew’s Data Library schema for a full overview of the different components and their respective events, properties and contexts he suggests.

Screenshot 2023-08-03 at 17.22.49.png

Key benefits: