All Collections
Scores and Score Conditions
A guide to Breyta's scoring system
A guide to Breyta's scoring system

Optimize your business decisions with customizable scoring metrics

Chris Moen avatar
Written by Chris Moen
Updated over a week ago

Breyta's power lies in its ability to seamlessly merge attributes and events from multiple tools into a single platform, enabling the calculation of scores for various metrics such as product engagement, customer fit, buying intent, and churn risk. A score is calculated by assessing a set of conditions and assigning a numerical value based on how well something meets those conditions. Scores comprise two main components:

  • Conditions: Criteria or requirements that must be fulfilled to assign a score.

  • Weight: Different levels of importance assigned to each component of the score to reflect its relative significance in achieving the score's goal or objective.

Each condition's score is normalized between 0 (minimum) to 100 (maximum). The final score from 0 to 100 is computed based on the normalized scores for each condition, accounting for their respective weightings.

To build a good score, it's essential to understand the various types of conditions in Breyta and their respective mechanisms. Breyta has four types of score conditions - Range of values, Part of a segment, Recent events, and Summarized scores - each with its unique scoring logic tailored to the condition's intended purpose. Let’s take a closer look at each type of score condition.

Range of values condition

Best for when you want to rank values – or attributes – within a field.

Key features of this condition:

  • Condition score is based on the weight placed on the field value.

  • The condition score won’t change unless the field value changes.

  • Can only filter on fields.

  • Field values can be weighted individually.

  • The available options within this condition vary based on the field data type.

Range of values where field data type is ‘text’

If a field's data type is "Text," you must enter the exact text to score the data accurately.

For example, let's say we're scoring individuals from Norway, the United States, and Canada based on countries that match our customer fit. A weight is assigned to each country based on its prioritization ranking, with people from Norway receiving a higher score than those from the United States and Canada.

Note that any country not included in the list will automatically be excluded from receiving a score for this condition.

Range of values where field data type is ‘number’

When a field's data type is set to "Number," you have two options: Min-Max and Range.

The "Min-Max" option takes the lowest and highest input values and assigns one a maximum score of 100 and the other a minimum score of 0. Breyta automatically scores the interval values relative to the range. For instance, in the following example, a company with a revenue of 50 will automatically receive a score of 50 for this condition.

If you choose the "Range" option, you can weigh a range of values within a field individually. This is particularly useful for fields such as revenue or number of employees. For instance, in the following example, we've prioritized companies with a revenue of 1001 to 10000 as the highest, and those with a revenue of 1 to 10 as the lowest. Any company with a revenue value outside the ranges specified in the condition will receive a score of 0 automatically.


Part of a segment condition

This condition is ideal for scoring an object based on whether it belongs to your target group, while disregarding values or events that are not relevant. Think of it as a true/false filter that helps you focus on your specific target audience.

Key features of this condition:

  • Binary scoring: If the object meets the condition, it will receive a score of 100; if not, it will receive a score of 0.

  • Additional filters (sub-filters) can be added to the main filter to further narrow down the target group.

  • Weight is applied to the entire condition, not individual sub-filters.

  • Filtering can be done on:

    • Fields: Linked to the object type being scored.

    • All events: Used when the time an event was first or last seen, or the number of times it occurred, is important.

    • Recent events: Used when the number of times an event has occurred within a specific time frame is significant to the score calculation.

      • Using event in Part of a Segment condition will not time decay.

    • Relationships: Used to filter based on related object types.

Each filter serves a specific purpose. Let's explore the unique benefits of each filter option.

Field filter

Used to create a condition based on a specific field linked to the object type being scored. For instance, you can use this condition to score companies in Norway, but not in Oslo. If a company meets this condition, it will receive a score of 100, otherwise it will receive a score of 0.

Event filters

When filtering for events in the Part of a segment condition, you can choose between two options: All events and Recent events. These options differ in terms of the available filter settings:

  • All events allows you to filter based on when an event was first seen, last seen, or the total number of times it occurred.

  • Recent events provides additional filters for the number of times an event happened within a specific time frame, such as the last 7 days.

All events > First seen

Let’s say you want to score people who You want to target users who have interacted with a part of your app for the first time. Using Part of a segment condition > All events filter, select an event, then set the filter to "First seen" then enter the number of days.

All events > Last seen

You may want to target users who have been inactive on your app for a while, say for a churn risk score. Using Part of a segment condition > All events filter, select a relevant event, then set the filter to "Last seen" more than 30 days ago. This will apply a score to people who have not opened your app for more than 30 days.

All events > Event count

For when you want to to score people who have done one of more events in your app, regardless of when the event occurred. Using Part of a segment condition > All events filter, select an event, then select ‘has count’. From here, you can choose between greater than, less than, is, is not, is unknown, or has any value.

Recent events filter

Let's say you want to identify the most engaged users of your product. You could create a score based on the number of times a user has performed a certain action in the last 100 days. Using Part of a segment condition with "Most recent events" filter, you can set the condition to score users who have performed that action more than 3 times in the last 100 days.

This score would allow you to score product engagement. It could also help you identify users who may be at risk of churning if their activity levels drop below a certain threshold.

Relationship filter

Used to filter on fields for related Object Types.

You can score an object based on attributes of another object that it is related to. For example, if you're creating a score for the People object type, you can filter on attributes of the company that each person is linked to.

In this example, we're creating a condition to score people who work for companies in the Internet Software & Services industry with a revenue value greater than 1000.


Most recent events condition

The Most Recent Events condition is similar to the Part of a Segment condition > Recent Events filter, but here you’ll filter on specific event properties.

Key features of the condition:

  • Scoring is based on the recency of an event, and decays over time.

  • One or more event properties can be used as sub-filters.

  • Event property sub-filters cannot be weighted individually.

Event Decay Scoring

Suppose you create a condition using the Most Recent Events condition, where a specified event occurs more than three times in the last 100 days.

  • If the event occurs less than three times, the score will be 0.

  • Once the event occurrence hits three, it will receive a full score of 100.

  • The score will decay over time, until the event occurs again. The score will return to 100 as the event occurs again, as long as at least three event occurrences happened within the 100-day timeframe.


Summarized score condition

The Summarized score condition aggregates scores for related objects, rather than on the object itself. This is useful when you want to evaluate the overall fit of a group of related objects.

Key features of this condition:

  • Designed to aggregate scores for related objects.

  • Can score on average, maximum, or minimum score for the related object type.

  • Does not include any filters or sub-filters.

For example, if you're creating a score for the Company object type, you can use Summarized score to fetch the customer fit scores for all people within a company and calculate the average, maximum, or minimum score.

Summary

Breyta's scoring system offers a flexible and customizable approach to evaluating and ranking data across the tools various tools. Scores are important because they allows you to evaluate and rank data based on the specific criteria or conditions that matter to your business goals. This helps you make more informed decisions and prioritize your resources and efforts accordingly. Scores can be used in a variety of contexts, from marketing and sales to customer support and product development. By using scoring, you can streamline your processes, improve your efficiency, and ultimately achieve better results.

FAQ

How can I incorporate events into a score without applying time decay?

When using the 'Part of a Segment' condition, you have the choice between 'All Events' or 'Most Recent Events' options. Since 'Part of a Segment' is a True/False condition, once a person meets the event conditions, they will receive a score of 100, which will not decrease over time. On the other hand, if the event conditions have not been satisfied, the individual will be assigned a score of 0 for that particular condition.

Did this answer your question?