Skip to content
ToolUlkaa Tool
All tools

AI

Object DetectorBackground RemoverImage UpscalerFace DetectorPose EstimatorImage ClassifierText to SpeechSpeech to TextImage to Text (OCR)Sentiment AnalyzerText SummarizerToken Counter

Categories

AcademicTextMathematicsStatisticsMachine LearningAIData ScienceFile
All tools
AI

Sentiment Analyzer

Paste English text, a list of reviews or a CSV file and see a sentiment score for each one.

Input
Try:
English only. Up to 2000 rows. Nothing is uploaded.

DistilBERT SST-2

68 MB · Apache-2.0

Optional. A second opinion from a trained model. It labels text as positive or negative only, in English.

The model downloads from Hugging Face the first time; your browser may cache it. Your files stay on this device.

Sentiment

Positive 0.85

Rule-based score from -1 (most negative) to +1 (most positive). Between -0.05 and 0.05 counts as neutral.

Words that moved the score

  • helpful +3.75
  • love +1.5
  • easy +0.75
  • fast +0.7
  • confusing -0.7

DistilBERT model

Download the model on the left to add its labels to the table.

  1. Tools
  2. AI
  3. Sentiment Analyzer

About Sentiment Analyzer

This sentiment analyzer is free, needs no sign-up and runs in your browser. It scores English text from -1 (very negative) to +1 (very positive) and labels it positive, negative or neutral. You can score a single message, one text per line, or a column of a CSV file, and download the results as a CSV.

It works in two layers. The first is an instant rule-based scorer in the style of VADER: a word list with strengths, plus rules for negation ("not good"), intensifiers ("very good"), capital letters, "but" and exclamation marks. It is available the moment the page opens. The second is an optional DistilBERT model (SST-2) that you can download, 68 MB, to get a second opinion from a trained neural network.

The text stays on your device. The only network use is the one-time model download from Hugging Face, and only if you ask for it. The tool is for English only, and the model gives a positive or negative label with no neutral class.

How to use Sentiment Analyzer

  1. 1Choose how you want to enter text: one text, one per line, or a CSV column.
  2. 2Paste your text or drop a CSV file. The sample on the page shows the format.
  3. 3For a CSV, pick the column that holds the text and say whether the first row is a header.
  4. 4Read the label and score. For one text, the words that moved the score are listed.
  5. 5Optional: tap Download model, then Run, to add the DistilBERT label and confidence to every row.
  6. 6Download the table as a CSV to use in a spreadsheet.

Features

  • Instant rule-based scoring that needs no download.
  • Optional DistilBERT SST-2 model, 68 MB, downloaded only when you confirm.
  • Batch input: one text per line or any column of a CSV, up to 2000 rows.
  • Results table with the rule-based label and score next to the model label and confidence.
  • CSV export of the whole table, including rows past the first 200 shown on screen.
  • The words behind the score, so you can see why a text came out positive or negative.
  • Negation, intensifiers, capitals, "but" and exclamation marks handled.
  • Works on a phone, in light and dark mode.

How the rule-based score is calculated

Each known word has a valence between -3 and +3. Negation within the three words before flips and weakens a word (multiplied by -0.74). An intensifier such as "very" adds to its strength, a dampener such as "slightly" subtracts, and a word in capitals gets a small boost. Words before a "but" count half and words after it count one and a half. Each exclamation mark, up to four, adds a little in the direction of the text.

The sum is squashed into the range -1 to +1 so that long texts do not run away. A compound score of 0.05 or more is positive, -0.05 or less is negative, and anything between is neutral.

compound = sum / sqrt(sum^2 + 15)
positive: compound >= 0.05
negative: compound <= -0.05
neutral: otherwise

Worked examples

  • I love this phone, the camera is excellent! → gives positive, +0.85

    Two strong positive words and an exclamation mark.

  • This is not good. → gives negative, -0.33

    The word "good" is positive, but "not" flips it.

  • The food was great, but the service was terrible. → gives negative, -0.65

    Words after "but" count more, so the negative part wins.

  • The package arrived on Tuesday. → gives neutral, 0.00

    No sentiment words, so the text is neutral.

Rule-based scorer and the DistilBERT model compared

Rule-basedDistilBERT SST-2
AvailabilityInstantDownload 68 MB first
LabelsPositive, neutral, negativePositive, negative
LanguageEnglishEnglish
Explains itselfLists the words that moved the scoreNo
Handles context and sarcasmOnly simple rulesBetter, still imperfect

Good to know

What a sentiment score can and cannot tell you

A sentiment score measures the tone of the words, not whether a statement is true or whether the writer is satisfied overall. Sarcasm ("great, another delay") is often misread by both methods. Domain words matter too: "sick" is negative in a hospital review and positive in slang.

Treat the score as a quick sort for large piles of text, then read the extremes yourself. For an important decision, check a sample of rows by hand.

Where the models and the word list come from

The word list was written for this tool and is not copied from another list. The optional model is DistilBERT fine-tuned on the SST-2 movie review set (Apache-2.0 licence), served as a quantised ONNX file by Hugging Face. Because it was trained on movie reviews, it can be less sure on other kinds of text.

Privacy: how it works

  • Your text and CSV files are processed in your browser and are never sent to Ulkaa. If you choose to run the model, the model file is fetched once from Hugging Face; your text is not sent there.

Tips

  • Score reviews one per line rather than as one long paragraph, so you get a result for each.
  • Remove quoted replies and signatures from emails first, because they add words that are not the writer's.
  • If the rule-based score and the model disagree, the text is probably mixed or sarcastic. Read it yourself.
  • The model reads only the first 512 tokens of a long text.

Frequently asked questions

Is it really free?

Yes. There is no price, no trial and no credit card. Ulkaa Tool does the work with your own device, so there is no server bill to pass on to you.

Do I need an account?

No. There is no sign-up and no login. Open the page and use it. An Ulkaa account is not needed for anything on this tool.

Does it run in my browser?

Yes. Your text are processed by code running in your browser tab, on your own device.

Is my data uploaded?

No. Your text are never sent to Ulkaa or to anyone else. You can check this yourself by watching the Network tab in your browser developer tools while you use the tool.

Does it work in languages other than English?

No. The word list and the DistilBERT model are English only. Text in another language will mostly come out neutral or be scored wrongly.

Why does the model never say neutral?

DistilBERT SST-2 was trained with two labels, positive and negative. A flat text is still pushed to one side, usually with a lower confidence. Use the rule-based score if you need a neutral class.

What is the compound score?

It is the total strength of the sentiment words in the text, squashed into the range -1 to +1. Above 0.05 is positive, below -0.05 is negative.

Is the model downloaded automatically?

No. It is 68 MB, so the tool shows its size and waits for you to tap Download. It comes from Hugging Face the first time, and your browser may keep a copy for next time.

How do I analyse a CSV file?

Switch to the CSV column mode, drop the file or paste it, choose the column with the text, and read or download the results table. The file is read on your device.

How many rows can I score?

Up to 2000 rows at once. The page shows the first 200 rows, and the CSV download holds them all.

Can it detect sarcasm?

Not reliably. Both methods read the tone of words, so sarcasm that uses positive words for a negative point is often missed.

Can I use the results for research or decisions?

Use them as a first pass. Both methods make mistakes, so check a sample by hand and report the method (rule-based or DistilBERT SST-2) with your results.

Popular Sentiment Analyzer pages

  • Text Sentiment AnalysisPaste a message, post or paragraph and get a positive, negative or neutral label.
  • CSV Sentiment AnalysisDrop a CSV file, pick the text column and get a sentiment label for every row.
  • Review Sentiment CheckerPaste product or service reviews, one per line, and count the positive and negative ones.

Ulkaa Apps

  • Ulkaa
  • Calendar
  • Task
  • Note
  • Disk
  • Call
  • Contact
  • Mail
  • Finance
  • Health
  • Office
  • Work
  • Workspace
  • Halum
  • Jaal
  • Islam
  • Game
  • Weather
  • Campus
  • News
  • Developer
  • Help
  • Account
About·Privacy·Terms·© 2026 Ulkaa

What is Ulkaa Tool?

Ulkaa Tool is a free collection of fast, privacy-friendly online tools from Ulkaa Network. Calculate your GPA and CGPA, edit rich text, count words and characters, replace text and more — all in your browser.

Every tool runs entirely in your browser — no sign-up, and your data never leaves your device.

Academic

  • GPA Calculator
  • CGPA Calculator
  • Citation Generator
  • Quiz Maker

Text

  • Rich Text Editor
  • Word Counter
  • Character Counter
  • Text Replacement

Ulkaa

  • Ulkaa
  • Ulkaa News
  • Ulkaa Campus
  • Ulkaa Tool
  • Ulkaa Game
  • Ulkaa Weather
  • Ulkaa Islam

Company

  • About Ulkaa
  • Careers
  • Support
  • Help
  • Privacy Policy
  • Terms of Service
  • Disclaimer
  • Sitemap

© 2015-26, Ulkaa. All rights reserved.
Facebook PageLinkedIn CompanyX (Twitter) ProfileInstagram ProfileGitHub Account