Toolvore

AI Sentiment Analyzer

Detect the sentiment and emotional tone of any text.

This tool sends the text you enter to an AI provider to generate a response. Don't paste secrets or personal data. No files are uploaded.

Feed in a review, a survey response or a support message and get a read on whether it is positive, negative or neutral, and how strongly.

How to use it

  1. 1Drop the text into the single 'Text to analyze' box — a support ticket, an app-store review, a survey answer, a message thread.
  2. 2Press Analyze. The verdict arrives as formatted Markdown rather than a bare score.
  3. 3Read the label and the rationale together; the rationale is what tells you which part of the text drove the call.

Example

Input
Honestly, delivery was three days late, but the product itself is excellent.
Output
A short Markdown block: an overall label (text like this is typically read as Mixed), a confidence figure, two or three dominant emotions, and one sentence explaining the split.

The confidence figure is the model's own guess about itself, not a calibrated statistical score. Do not feed these labels straight into a metric anyone makes decisions on without spot-checking a sample by hand.

What happens to your data

The text you paste is transmitted verbatim as the user message in a request to an AI provider — there is no redaction or scrubbing pass in between, so the customer names, order numbers, phone numbers and email addresses that tend to sit inside real feedback travel with it. Strip identifying details out before analysing, and never paste anything confidential or credential-bearing.

Last updated August 2026

Someone asks whether customers are happy this week, and what you have is free text — survey answers, app-store reviews, a support queue — none of it in a column anyone can average. Reading all of it is the honest answer and there is never time for it, so you go looking for something that will say which way a piece of writing leans, and why.

Decide first which of two jobs you are doing, because they need different things. Understanding one piece of text closely — a complaint you are about to answer, a review someone wants escalated — is a reading task, and a label with the reasoning attached helps. Turning a thousand responses into a figure for a slide is a measurement task, needing a fixed set of categories, a hand-labelled sample to check against, and something that processes rows. Done one passage at a time, it produces numbers whose accuracy nobody has ever established.

The format has a hard limit worth knowing before you paste anything: one label covers a whole passage, and real feedback is rarely single-minded. Late delivery plus an excellent product is one document holding two opinions, and a document-level verdict flattens it. The label is then the least informative part of the answer; the line explaining what drove it is where the content sits.

The common mistake follows from that — treating the verdict as a measurement rather than as one careful reading. Negation, sarcasm, faint praise and in-house shorthand all move it, silently.

How it works

Toolvore runs no analysis on your own machine. What you put in the single 'Text to analyze' box is dropped into a one-line prompt — the words 'Analyze the sentiment of this text' followed by your passage — posted to this site's /api/ai route and forwarded to Anthropic's API, which streams the answer back in fragments as it is written. The instruction behind it asks for four things in Markdown: an overall label from Positive, Negative, Neutral and Mixed, a confidence estimate, the dominant emotions, and a one-line rationale, all kept brief by a 1,000-token ceiling on the reply. That shape is also where the weaknesses are. No scoring model sits underneath and there is no numeric scale, so the confidence figure is written in the same pass as the label rather than derived from anything, and the same passage run twice can come back worded differently. Each run is one fresh message with no memory of the last, so nothing holds a judgement steady from one text to the next.

Common use cases

  • Reading the mood of an angry support ticket before replying
  • Getting a second opinion on feedback you are too close to
  • Spotting a review that praises one thing and damns another
  • Working out why a survey comment reads badly despite a high score
  • Triaging a small pile of free-text NPS answers by hand
  • Checking whether a customer email is as annoyed as a colleague thinks

Frequently asked questions

How does sentiment analysis actually decide whether text is positive or negative?

There are two families of method. The older scores each word against a dictionary marked positive or negative, adds the result up and applies rules for negation and intensifiers — fast, cheap, inspectable, and easily fooled by idiom. The newer hands the whole passage to a language model trained on enormous amounts of writing and asks it to judge, which copes far better with context and phrasing while leaving you no arithmetic to check. This page is the second kind: the passage goes to a language model under an instruction to return a label, a confidence estimate, the dominant emotions and a line of reasoning.

Why does sentiment analysis get sarcasm wrong?

Sarcasm contradicts itself on purpose — the words approve and the meaning does not, and whatever flips it usually sits outside the sentence, in tone of voice, shared history or a running joke. 'Brilliant, another update that breaks the login' holds a positive word and a bad event, and which wins depends on knowing a broken login is bad news for this writer. Models handle it better than dictionaries because they weigh the passage whole, but dry sarcasm, understatement and anything resting on the previous message in a thread still slip past. If a verdict on a sarcastic line looks wrong, it is.

What does the confidence figure mean — is it a probability?

Not in any statistical sense. Nothing counts outcomes or holds a validation set, so the number is written alongside the label rather than derived from it: an impression of how clear-cut the passage was, expressed as a figure because a figure was asked for. It works as a rough flag, since a low one usually does mean the text is genuinely ambiguous and worth a human read. It does not work averaged, plotted over months, or wired to a threshold that triggers something. If you need a calibrated score, hand-label fifty of your own texts and compare — that is a different piece of work.

What is the difference between a neutral and a mixed result?

Neutral means no evident feeling in either direction, which is more common in real feedback than people expect: delivery updates, factual bug reports, questions, one-word answers. Mixed means both directions are present at once and neither clearly wins. The distinction is what makes labels useful for triage — a mixed result almost always deserves a human read, a neutral one usually does not. Short text drifts neutral simply because there is nothing to go on; 'fine', 'ok' and 'as described' carry plenty of unexpressed opinion, and no method recovers what the writer did not type.

Where does the text I paste go, and is any of it stored?

It leaves your device. There is no local model and no offline mode: the passage is sent to this site's /api/ai endpoint and on to Anthropic's API, so with the network off nothing happens at all. Nothing in that path writes what you typed into a database here — the server logs record failures, not input — and beyond that point retention is governed by the AI provider's policy rather than by anything on this page. One related caution: instructions buried inside text you are analysing are meant to be treated as ordinary content rather than obeyed, and that is a mitigation, not a guarantee.

Can I run a spreadsheet of reviews through this in one go?

Not here. There is one box and one button, and each run carries a single passage with no memory of the one before, so a hundred rows means a hundred separate runs whose labels were never held to a common standard. One submission is capped at 40,000 characters, which covers a long thread but not an export, and requests are limited to six a minute from one address — comfortable for a person reading answers, useless for a loop. For a real corpus, script it against an API with your own fixed category list, or use something built for tabular data.

Why do star ratings and the sentiment of the text disagree?

Because they measure different things. A rating is a summary judgement made afterwards and anchored to habit — some people never award five, others award five for anything that arrives intact — while the text describes a specific experience as it is remembered. A four-star review can be a list of grievances from a generous writer; a two-star one can praise the product and blame the courier. Where the two disagree, the text is usually the more informative and the rating is the one that gets counted. That gap is the reason to read sentiment at all.

What is aspect-based sentiment analysis, and do I need it?

Aspect-based analysis splits a passage by subject — delivery, price, packaging, support — and returns a verdict for each, instead of one verdict for the lot. You need it the moment the question becomes what people are unhappy about rather than whether they are unhappy, and it is the only way a review praising the product and damning the shipping turns into something anyone can act on. This page does not do it: one passage in, one overall label out, with any split described in the sentence of reasoning rather than broken into fields. A structured version means naming your aspects in the prompt yourself.