Free, open source, no account
Hear what thousands of customers are actually saying.
Drop in reviews, survey answers or support tickets. Sift scores the mood of every one, groups them into topics by meaning, spots the week something broke and writes a summary you can check line by line.
82.7%
sentiment accuracy on held out data
20,000
rows per upload
0
databases, accounts or trackers
~10s
for a thousand reviews
How it works
Six steps of real machine learning, streamed to you live.
- 1
Clean
Finds the text, date and rating columns on its own, drops empty rows and duplicates, and copes with any delimiter or encoding.
- 2
Score the mood
A logistic regression classifier trained on 2,400 labelled sentences, 10 points more accurate than the usual rule based VADER.
- 3
Understand meaning
Each review becomes a 384 number vector from the MiniLM sentence model, so “arrived late” and “took three weeks” land side by side.
- 4
Find topics
HDBSCAN clusters the vectors, near duplicates are merged, and class based TF IDF picks words that set each topic apart.
- 5
Catch spikes
Weekly counts per topic are tested against the previous eight weeks. Anything 2.5 deviations above normal is flagged.
- 6
Explain it
Claude writes a short summary that cites real reviews. Every citation is checked, and an offline writer takes over if there is no key.
What you get
A report your team will actually read.
Topic map
Every review drawn as a dot, placed by meaning with t SNE. Hover to read it, click a cluster to filter the whole report.
Negativity drivers
See which topics produce the complaints, ranked by their share of all negative feedback.
Spike alerts
A weekly chart per topic with unusual weeks marked, so a broken release shows up before the stars drop.
Search by meaning
Ask for “refund taking forever” and get the reviews that mean it, whatever words they used.
Cited summary
A plain English summary where every claim links to the review behind it. Hover a citation to read it.
Export anything
Download reviews and topics as CSV, the full result as JSON, or print the report to PDF.
Under the hood
No database. No paid hosting. Nothing stored.
Files are analysed in memory and forgotten after 30 minutes. Reports are saved in your own browser with IndexedDB. The frontend runs on Vercel and the Python API in a free Docker space. The sentiment model is trained and evaluated in GitHub Actions on every change.
Read the model cardNext.js 16 and React 19
App Router frontend, server components for static pages
FastAPI
Async API with live progress over server sent events
scikit learn
Sentiment classifier, HDBSCAN, KMeans, t SNE, c TF IDF
ONNX MiniLM
Sentence embeddings on CPU, no GPU or paid API
Claude
Structured summaries with validated citations
GSAP and Motion
Timeline, scroll and layout animation
Try it on 1,400 reviews right now.
The demo opens instantly. Then run the same data through the live pipeline, or bring your own.