Skip to content

04 Dimensions

Predicted scores

Infer relevance, satisfaction, CSAT or NPS-style scores for every conversation, not just the few with a survey answer, with prompts you can copy.

Optional. You don't need this to get started. Back to the quickstart

A predicted score reads a conversation and estimates how the customer would have answered a survey question. Instead of asking customers how they felt, the model reads what they said and predicts it. You get a score for every interaction, not just the few where someone filled in a survey.

If you already have the real score for some conversations, such as survey NPS or CSAT, upload it as a column and use it as the outcome. Predict a score only where the real one is missing, and compare the two where you have both.

This page goes from the simplest score to the most specific, then covers how to write your own scoring prompts and how to read the results. Every score is an integer Dimension; see the config reference.

The most basic use of a score is separating signal from noise. Before you measure satisfaction, you often need to answer a simpler question: is this record worth analyzing at all?

A relevance score rates each record from 0 to 10 for whether it carries a meaningful signal for your analysis. It doesn’t measure experience. It separates the useful from the irrelevant, so everything that runs after it works on better data.

Use it on social listening, reviews, open-ended survey answers, or any source where many records may have nothing to analyze.

The general shape:

Score 0-10 for relevance to a personal, firsthand experience with our product.
High scores: firsthand, recent experience.
Lower scores: links, ads, news, jokes, secondhand references.
10 = clearly firsthand and highly relevant
0 = not relevant at all

Example: relevance to living with diabetes

Section titled “Example: relevance to living with diabetes”
Score 0-10 for relevance to the author's personal lived experience with diabetes.
High scores: firsthand experiences including diagnosis, symptoms, blood sugar,
insulin, CGMs, pumps, medications, food management, doctor visits, complications,
or emotional impact. Abbreviations may be used: T1D = type 1 diabetes,
T2D = type 2 diabetes.
Lower scores: generic discussion, news, advocacy, fundraising, jokes, awareness
posts, or secondhand references.
10 = clearly firsthand and highly relevant
0 = not relevant at all
Score 0-10 for relevance to a personal experience visiting a Disney location
or personally using a Disney product.
High scores: firsthand, recent experience only.
Lower scores: links, booking posts, generic recommendations, products purchasable
outside the parks, visitor-count commentary, or trips older than 2-3 years.
Override: if the post contains "RT", "QT", or @Poshmarkspp, assign 1.
10 = clearly firsthand and highly relevant
0 = not relevant at all

Both prompts have the same structure: what earns a high score, what earns a lower one, and an anchor at each end. The diabetes prompt spells out the high-score cues in detail because the vocabulary is specialized and the model benefits from explicit cues, including the abbreviations. The Disney prompt adds a hard override for known spam and repost patterns.

  1. Define what “relevant” means for your analysis.
  2. List the noise patterns in your source.
  3. Add hard overrides for known spam or repost patterns.
  4. Anchor both ends of the scale.

Predicted Rating is one of the Standard Dimensions: a 1 to 10 score for how well the customer’s needs were handled. Its prompt is deliberately simple:

An estimation of the success in handling the user's requests,
rated on a scale of 1 to 10 (with 10 being the best).

It names no particular construct (satisfaction, effort, advocacy), needs no behavioral anchors, and assumes nothing about the source. That generality is the point: it works on support conversations, bot interactions, survey answers and reviews without tuning.

What it measures is a blended read of “how did this go?”, mixing resolution, tone, effort and communication into one number. What it can’t tell you is why. A Predicted Rating of 4 flags a problem; the split scores below explain what caused it.

Cross it with other Dimensions. Rating by contact category shows which topics give the worst experiences. Rating by agent shows how performance varies. Rating by channel shows where the experience breaks down. The score is the filter; the other Dimensions explain it.

Predicted CSAT narrows the question from “how did this go?” to one construct: customer satisfaction. It uses the standard 5-point CSAT scale, so it can be checked against real survey results and compared with benchmarks.

An estimation of the customer's satisfaction with this interaction.
1 = Very Dissatisfied
2 = Somewhat Dissatisfied
3 = Neither satisfied nor dissatisfied
4 = Somewhat Satisfied
5 = Very Satisfied
Leave empty if there is not enough signal.

This is enough for trend monitoring and reports. Its limit is the same as the survey it mirrors: a 2 doesn’t tell you whether the customer was unhappy with the agent, the outcome, the product or the process.

Every predicted score is an inference, and some inferences are stronger than others. A companion confidence Dimension lets you report on the strong ones and review the weak ones. Make it a category Dimension:

Confidence in the assigned csat_rating.
Assess based on the strength and clarity of sentiment signals in the conversation.
high: Clear, unambiguous satisfaction or dissatisfaction through explicit language,
tone, or repeated sentiment signals.
medium: Sentiment can be inferred but is not stated, or the transcript
contains mixed signals.
low: Best guess based on limited or ambiguous language. The conversation may be
short, transactional, or lack emotional cues.
If csat_rating is empty, return 'none_detected'.

Add one whenever transcripts vary a lot in length and in how much they say. Report on high; read the low ones to see where the model is guessing. A confidence field works with any predicted score, not just CSAT.

The simple form works on any source. The split form is for conversations, such as support tickets, chat logs and call transcripts, where the interaction has an agent, an outcome and a product.

Satisfaction there isn’t one thing. An agent can be excellent while the outcome is poor because of a policy. The product can be terrible while the agent is kind and finds a workaround. One score collapses those signals. Three scores keep them apart, and send each one to the team that can act on it.

Agent satisfaction, for coaching and training:

Rate the customer's satisfaction with the agent only: clarity, empathy,
knowledge, responsiveness, and follow-through.
Ignore: product issues, policies, system limits, wait times, and final
resolution, unless clearly attributed to the agent.
Base the score on the customer's expressed or strongly implied view of the agent.
1 = Very Dissatisfied
2 = Dissatisfied
3 = Neutral
4 = Satisfied
5 = Very Satisfied
Leave empty if no human agent appears or evidence is insufficient.

Outcome satisfaction, for process and policy:

Rate the customer's satisfaction with the outcome only: whether the issue
was solved, the request fulfilled, or the question answered.
Ignore: agent tone, empathy, and effort, unless they directly changed
the result.
Base the score on the actual or clearly expected result.
1 = Very Dissatisfied
2 = Dissatisfied
3 = Neutral / Pending / Mixed
4 = Satisfied
5 = Very Satisfied
Leave empty if no outcome stage is reached or evidence is insufficient.

Product satisfaction, for product development:

Rate the customer's satisfaction with the product or service only.
Ignore: support quality, agent behavior, policy, and process.
Base the score on the customer's expressed or strongly implied view
of the product or service itself.
1 = Very Dissatisfied
2 = Dissatisfied
3 = Neutral / Mixed
4 = Satisfied
5 = Very Satisfied
Leave empty if no product or service sentiment is expressed
or evidence is insufficient.
  • Explicit isolation. Each prompt says what to ignore, not just what to score. Without that, signals bleed across: agents get marked down for product failures, or outcome scores go up because the agent was warm.
  • The customer’s view, not yours. “Base the score on the customer’s expressed or strongly implied view” asks the model to read the customer’s experience, not grade against your own rubric. That can be checked against survey data. A QA-style rubric can’t.
  • Concrete empty conditions. Each prompt’s empty rule matches the case where that score has nothing to read: no agent, no outcome stage, no opinion of the product.
  • Use the simple form for reports, benchmarks and trend monitoring, when you don’t need to diagnose the drivers.
  • Use the split form on conversation data when you need to know why satisfaction is high or low, or when different teams own different parts.

For most conversation data, the split form is the better default. It costs three fields instead of one and tells you much more.

NPS usually measures the relationship: how a customer feels about your brand overall. Transactional NPS narrows it to one interaction: did this experience build or erode the customer’s willingness to recommend you?

That is a different construct from satisfaction. A customer can be satisfied with an interaction that wouldn’t move them to recommend you, and one bad experience can turn a long-time promoter into a detractor.

Predict the Net Promoter Score the customer would give based on this interaction.
This measures brand advocacy impact, not just satisfaction.
0-6 = Detractor
Concrete complaints naming specific failures, broken promises or unmet
commitments, repeat contact about unresolved issues, explicit unwillingness
to recommend, language indicating active consideration of alternatives.
7-8 = Passive
Functional and transactional tone, issue resolved but no emotional engagement,
hedging or conditional language ("it's fine", "not bad"), absence of both
frustration and enthusiasm.
9-10 = Promoter
Emotional and relational language, references to specific people or features
that exceeded expectations, expressed enthusiasm or gratitude, language
indicating willingness to recommend or refer others.
Leave empty if the interaction is too short or transactional to carry meaningful
advocacy signal.
Predict the Net Promoter Score the customer would give based on this interaction.
Focus on whether this experience would make the customer more or less likely
to recommend the brand, not just whether they were satisfied.
0-6 = Detractor (frustrated, unresolved issues, broken commitments)
7-8 = Passive (satisfied but indifferent, functional tone, no strong emotion)
9-10 = Promoter (delighted, exceeded expectations, would actively recommend)
Leave empty if there is not enough signal.

The detailed version scores more consistently, because the behavior described for each band leaves the model less to interpret. The short version is quicker to iterate on, and enough when the overall distribution matters more than precision inside each band.

On its own, transactional NPS tells you what. The value comes from crossing it with other Dimensions. Adding issue type, product, channel, agent or resolution status takes you from “we have a detractor problem” to “we have a detractor problem driven by billing disputes in chat that stay unresolved after several contacts”.

It also covers what surveys miss. Most customers never answer a survey, and the ones who do aren’t a random sample of the rest. A predicted score reads the conversations of the customers who stayed silent too.

The prompts above cover the most common needs. When you need a different construct, for your business, your source or your research question, these rules give reliable results.

Ask “rate the customer’s satisfaction with X”, not “rate the quality of X”. Predicting the experience reads tone, language and reactions to infer how the customer felt, and can be checked against surveys. Judging quality needs a separate QA framework.

A weak prompt:

Rate the quality of the support provided by the agent based on clarity
of communication, accuracy of troubleshooting, empathy shown, and
follow-through on resolution.
1 = Very Poor, 5 = Excellent.

A strong prompt:

Rate the customer's satisfaction with the agent only: clarity, empathy,
knowledge, responsiveness, and follow-through.
Ignore: product issues, policies, system limits, wait times, and final
resolution unless clearly attributed to the agent.
1 = Very Dissatisfied
5 = Very Satisfied
Leave empty if no human agent appears or evidence is insufficient.

The weak one bundles criteria with no isolation and no empty condition. The strong one says what to score, what to ignore, and when to leave it empty.

Isolation clauses matter as much as the scoring criteria. “Rate satisfaction with the agent” is ambiguous: the model may count the outcome, the wait or the product. Listing what to ignore draws the line.

Pair a score with a confidence field when your transcripts vary in length and density. A CSAT of 2 with high confidence is a clear signal. A CSAT of 2 with low confidence may just be a short exchange with no real sentiment.

“Leave empty if there is not enough signal” is a necessary fallback, but it shouldn’t be the only rule. Name the actual cases: no human agent, transcript too short, no resolution stage, no opinion of the product.

A zero pulls down averages, distributions and percentiles. When there isn’t enough to go on, the score is left empty, never set to 0.

ConstructScaleWhy
Satisfaction (CSAT)1 to 5Matches CSAT surveys
NPS0 to 10The three NPS bands need it
General rating1 to 10Matches Predicted Rating
Relevance0 to 10Room to separate noise from signal

Whole numbers only.

A score is an integer Dimension. Don’t give it a list of string values.

// Wrong: the type is integer but the allowed values are strings
"type": "integer",
"enum": ["1", "2", "3", "4", "5"]
// Right: an integer with no string list
"type": "integer"

Put the scale and its anchors in the description instead.

  • Scores are directional. Use them to find patterns, set priorities and spot risk, not to replace formal survey reporting. Crossing a score with other Dimensions tells you more than any single score.
  • Confidence controls quality. Report on high. Read low to see where the model lacks signal.
  • Empty values are intentional. Leave them out of averages. Don’t count them as zero.
  • Read distributions, not single scores. One prediction is a rough estimate. The distribution across hundreds of conversations is a reliable signal. Track how it shifts over time.
  • Cross with your metadata too: CSAT by contact reason, by channel, by plan.
  • Split scores route action. Agent scores go to CX leadership, outcome scores to operations, product scores to product development.
  • Keep collecting surveys. Predicted scores reach every interaction, but surveys calibrate them. A gap between the predicted and the survey distributions is worth investigating.