All scores are calculated per exchange and then accumulated. The tile you see on the scores dashboard is the average of all exchange scores, and every breakdown in the table is the average of all exchanges that have that particular contact/account/tag/agent/etc.
A score is roughly the number of times a metric or tag (aka “signal”) occurs multiplied by its weight.
A “points”-style score has a starting value (often null) and goes up or down as we detect signals in the conversation. Scores with positive and negative attributes have a default range of -100 to 100. For a score like Product Friction or Risk of Bad CSAT, it is bound by a 0 to 100 range, as the score itself represents negative activity and only counts up.
These scores accumulate almost linearly up to a value of about 70, and above that, they behave logarithmically in order to approach but never exceed an absolute value of 100. The result is that scores are nicely bound but still preserve the ordering that separates one exchange from another. (The same happens with negative values as they approach -100.)
This is technically called a Sigmoid function, and you can see an example visualized like this.
Updated 4 months ago