cd /news/ai-tools/your-review-mining-is-backwards-ai-s… Β· home β€Ί topics β€Ί ai-tools β€Ί article
[ARTICLE Β· art-154304] src=dev.to β†— pub= topic=ai-tools verified=true sentiment=Β· neutral

Your Review Mining Is Backwards: AI Should Explain, Not Count

A developer described a review-mining workflow that uses spreadsheet formulas to count and rank customer pain-point tags before handing only the top two or three tags to a language model for root-cause explanation. The approach splits AI analysis into product, listing/expectation, and usage issues, with the developer arguing that counting is a solved problem for spreadsheets while explanation is what LLMs genuinely do well. The developer packaged the setup as a small toolkit with built-in formulas and a prompt set.

by read3 min views2 publishedOct 21, 2026

Here's the thing nobody says out loud: when you paste 200 reviews into a chatbot and ask "what are my customers complaining about?", it doesn't count anything. It vibes.

It reads a few loud reviews, notices a theme that feels frequent, and hands you a ranking that sounds authoritative. Sometimes the ranking is even right β€” by accident. But you can't tell which times those are, and neither can the model.

I know because I did exactly this for months. My Seller Central had the usual graveyard: a few hundred reviews nobody has time to read, all of them potentially useful, almost none of them actually read. Pasting them into AI felt like mining. It was just scrolling with extra steps and better formatting.

Counting is a solved problem. A spreadsheet counts perfectly, every time, for free. What a spreadsheet can't do is tell you why buyers are angry, or which complaints are actually your listing's fault.

Explaining is the opposite: it's the one thing a language model is genuinely good at β€” as long as you feed it a small, pre-sorted pile instead of the whole graveyard.

So the workflow that finally worked for me runs in the unglamorous order:

1. Log the reviews once, tag them by hand.

Date, stars, text, and one column I fill in myself: a pain-point tag ("lid hard to open," "paint chips," "too big for cup holder"). The tag list is the only real design decision in the whole system. Too broad and everything is soup; too narrow and everything is noise.

2. Let formulas rank.

COUNTIF over the tag column. AVERAGEIF for stars per tag. The 1–2β˜… share per tag. Now I have a ranked list I can defend: the tag with 30 mentions at 2.1β˜… is a problem. The tag with 3 mentions is one grumpy afternoon.

3. Only then, AI β€” on the top 2–3 tags only.

Paste just those reviews in and ask for the root cause, split three ways: (a) product issue, (b) listing/expectation issue, (c) usage issue β€” with quotes as evidence. Category (b) is where the money hides: a good share of "product is broken" reviews are really "the listing made me expect something else," and those you can fix tonight without touching the product.

A tiny demo run, on fictional data (an 18-review bottle set I use for testing): "lid hard to open" and "paint chips" tie at the top with 2 mentions each at 2.0β˜…, while the praise tags cluster at 4.5–5.0β˜…. Two minutes of counting told me more than an afternoon of scrolling ever did β€” and the AI's job shrank to explaining four reviews instead of hallucinating over eighteen.

Formulas rank. AI explains. In that order, or not at all.

I turned my setup into a small toolkit (worksheet with the formulas built in, plus the prompt set) β€” it's linked on my profile if you want the files instead of building your own, and there's a free 5-prompt mini pack there too.

But I'm more interested in how the rest of you do this: do you count first, or paste into ChatGPT first? And if you count β€” what's on your tag list? Mine's still evolving, and tag taxonomy turns out to be the whole game.

── more in #ai-tools 4 stories Β· sorted by recency
sponsored brought to you by zahid.host 4,200+ EU-deployed projects
reading about agents? ship yours in a single git push.

Run your AI side-project on zahid.host

EU-based hosting, git-push deploys, automatic HTTPS, no cold starts. Free tier with a custom domain β€” perfect for shipping the agent you just read about.

$git push zahid main
β†’ Live at https://your-agent.zahid.host βœ“
Get free account β†’ Pricing
from €0/mo Β· no card required
LIVE [news/your-review-mining-i…] indexed:0 read:3min 2026-10-21 Β· β€”