EU AI Act high risk obligations are now enforceable. Check your exposure
Insights About us Careers
Contact us
Natural Language Processing

Sentiment and Intent Analysis

Understanding what customers actually mean, at the level of the specific thing they are talking about, calibrated against your own reviewers rather than against a general model's opinion of positivity.

5 to 9 weeks
Typical build
Fixed fee
Commercial model
Aspect level
Not document level

Document-level sentiment is close to useless in practice. A review that says the delivery was late, the product is excellent and the support agent was rude is not positive, negative or neutral. It is three separate opinions about three different things, and only the aspect-level version tells anyone what to fix.

In one paragraph

Sentiment analysis determines the opinion expressed in text, ideally attached to the specific aspect it refers to rather than to the document as a whole. Intent analysis determines what the writer wants to happen next, such as to cancel, to complain, to buy or to be contacted, so that the text can be routed and acted on.

Why general sentiment models disappoint

ProblemWhat goes wrongWhat we do about it
Mixed opinionsOne score for a review praising and criticisingAspect-level extraction and scoring
Domain language'Sick' and 'wicked' scored as negativeCalibration on your own text
Sarcasm and understatementConfidently scored the wrong wayMeasured, flagged, and reported as a known limit
Negation and scope'Not bad at all' read as negativeModern models handle it; older lexicons do not
Neutral floodMost factual text scored neutral, obscuring signalIntent classification alongside sentiment
Rating mismatchText and star rating disagreeBoth retained; disagreement is often the interesting case

The last row is worth dwelling on. Reviews where the star rating and the text disagree are frequently the most informative items in the dataset, and a system that averages them away deletes exactly what you wanted.

How we build it

Extract the aspect first

What is the opinion about: delivery, price, a specific feature, a person, the mobile app? Aspects are derived from your own text rather than imposed from a generic taxonomy, and they are what makes the output actionable, because a team can own an aspect.

Calibrate against your own reviewers

Your team reads a sample and scores it; the model is tuned until it agrees with them at an acceptable rate, and that agreement rate is published alongside every result. A sentiment figure with no calibration is a number without a unit.

Score intent as well as feeling

Intent is usually more actionable than sentiment. 'I want to cancel', 'I need a callback', 'I am about to escalate' and 'I want to buy more' each trigger something specific, whereas a negativity score triggers a discussion about what the negativity score means.

The absolute sentiment score is an artefact of your model and scale. The change over time, by aspect and by segment, is the signal. We build reporting around movement and around volume of mentions rather than around a single headline figure people will misinterpret.

Route the urgent immediately

Cancellation intent, regulatory language, safety concerns, vulnerability signals and threats to escalate publicly should reach a person now rather than appear in next month's dashboard. That routing is worth more than the analytics in most deployments.

Report confidence and abstain

Some text is genuinely ambiguous even to your reviewers. The system says so rather than committing, and those cases are counted rather than hidden, because an honest abstention rate is what makes the rest of the numbers trustworthy.

Worth knowing

Do not aggregate to a single company-wide score

A single sentiment index rises and falls for reasons nobody can act on and invites arguments about methodology. Aspect-level trends, owned by the teams responsible for those aspects, produce decisions. We build the second and resist the first, including when it is requested.

Where it pays

  • Support and contact analysis. Intent routing and escalation detection across tickets, chats and calls, complementing contact centre AI.
  • Product feedback. Aspect-level trends from reviews, app stores and surveys, tied to specific features and releases.
  • Churn early warning. Sentiment and intent as features in a churn model, where they frequently carry real predictive weight.
  • Employee feedback. Themes and sentiment from surveys and exit interviews, reported by group with individuals protected.
  • Market and brand monitoring. Movement in how you are described, by aspect, against competitors.
Process

How the engagement runs

Aspects come from your own text and the model is calibrated against your own reviewers.

Week 1

Aspect discovery

Aspects derived from a sample of real text with your teams, and mapped to who owns each one.

Weeks 2 to 3

Reviewer calibration set

Your reviewers score a shared sample, disagreements resolved, and the agreement bar for the model agreed.

Weeks 4 to 6

Model and intent classification

Aspect-level sentiment and intent models built and calibrated, with abstention on ambiguous cases.

Weeks 7 to 8

Routing and reporting

Urgent intent routed to people in real time, aspect trends delivered into your reporting tools.

Week 9

Handover

Calibration set, models, agreement rates and the process for adding aspects as the product changes.

Deliverables

What you receive

Trends teams can own and urgent cases that reach a person, not a single index nobody trusts.

01

Aspect taxonomy

Derived from your text, mapped to owning teams, with definitions and examples.

02

Calibrated models

Aspect-level sentiment and intent, with the agreement rate against your reviewers published.

03

Urgent routing

Cancellation, escalation, safety and vulnerability signals routed in real time.

04

Trend reporting

Movement by aspect, segment and period, with mention volume alongside.

05

Abstention reporting

The share of genuinely ambiguous text, counted rather than forced into a category.

06

Calibration set

The reviewed sample and process, so the model can be re-calibrated as language changes.

Fit check

Is this the right engagement?

Worth being direct. Sentiment and Intent Analysis is the wrong spend in some situations, and those are listed rather than buried.

Good fit if

  • You receive customer or employee text in volumes nobody can read.
  • Different teams own different aspects and would act on their own trend.
  • Reviewers can commit time to a calibration exercise.
  • Urgent intents exist that should interrupt someone.
  • You want movement over time rather than a headline score.

Choose something else if

  • The volume is small enough that reading everything is feasible and better.
  • Nobody owns any aspect, so no trend leads to an action.
  • The request is specifically for a single company sentiment index.
  • The text is conversational and the need is real-time handling, which is chatbot or agent territory.
Questions

Frequently asked questions

Marked up with FAQPage schema so these answers can surface directly in search results and inside AI assistant responses.

How accurate is sentiment analysis?

As accurate as its calibration against your own reviewers, which is the number we publish rather than a general benchmark. Aspect-level scoring on domain-calibrated models performs well; document-level scoring on general models performs poorly on exactly the mixed reviews you most want to understand.

Can it detect sarcasm?

Sometimes, unreliably, and we measure it rather than claim it. Sarcasm and understatement are the acknowledged weak point of every sentiment system, so we report the error rate on those cases and design so that a misread does not trigger an irreversible action.

What is aspect-based sentiment analysis?

Attaching the opinion to the specific thing it is about, so a review praising the product and criticising delivery produces two results rather than one confused average. It is the difference between a number and something a team can act on.

Is intent more useful than sentiment?

Usually, yes. 'I want to cancel' triggers a specific action; a negativity score triggers a meeting about what the score means. We build both and route intent in real time, while sentiment goes into trend reporting.

Why do you advise against a single sentiment score?

Because it moves for reasons nobody can act on and invites arguments about methodology instead of decisions. Aspect-level trends owned by the teams responsible produce changes; a company-wide index produces a slide.

Is this the right engagement?

Tell us what you are trying to build. If a different service fits better, or if you do not need us at all, we will say so.