01The question
Chat models can write a convincing product review in a second, for free, in any voice. Anyone who runs a marketplace, an app store, a booking site or a brand's review page now has to ask how much of what they publish was written by a machine.
Regulators are asking too. Since October 2024 the US Federal Trade Commission's rule on fake reviews has covered AI-generated ones, and in the UK the Digital Markets, Competition and Consumers Act has banned fake reviews since April 2025. UK law expects businesses that publish reviews to take reasonable steps to prevent and remove them.
Plenty of tools claim to detect AI text. We wanted to know three things a buyer of those tools should ask: how accurate can a detector be on short reviews, what gives AI reviews away, and, most importantly, does a detector keep working when a new model comes out?
02The data
- Human reviews: the original Amazon reviews in the open dataset of Salminen and colleagues (2022), covering ten product categories from books to pet supplies. They were written before 2019, so before any modern chatbot existed.
- Modern AI reviews: the CRSD dataset (Infinitode, 2026): about 10,100 reviews from nine chat models, including GPT‑4o mini, GPT‑5 mini, GPT‑5.2 Instant, Gemini 1.5, 2.0 and 3 Flash, Grok 4.1 Fast, Llama 3 and Mixtral.
- Older AI reviews: the 20,216 GPT‑2 reviews from the Salminen dataset, the kind of fake that detectors were built for in 2019–2022.
We kept reviews of 3 to 50 words, the length of most real reviews. After cleaning and removing duplicates that left 11,380 human, 7,475 modern AI and 12,698 GPT‑2 reviews.
03The approach
The easy way to build an impressive detector is to let it cheat. We closed off the shortcuts first.
Remove typographic fingerprints
Some models put two spaces after a full stop or use curly quotes. We normalised spacing and quotation marks so a model has to learn the language, not the typing.
Match like with like
AI reviews in the data are more often negative and shorter. We paired human and AI reviews cell by cell on sentiment (from star ratings) and length, giving 4,018 of each. Length and tone carry no signal.
Build three detectors
A full model on word and character patterns; a style-only model that sees 24 features such as punctuation, sentence length and informal spelling but no vocabulary at all; and a compact 6,000-term model small enough to run in a web browser.
Stress-test them like an attacker would
Five-fold cross-validation; leave-one-generator-out (train on eight chat models, test on the ninth); a 2019-style detector trained on GPT‑2 and tested on today's models; and every result read at a 1% false-flag rate, because accusing real customers is expensive.
Explain and ship
We translated the model's signals into plain-English tells and ported the compact model to JavaScript. Its scores match Python's to within 0.00002 on 200 test reviews.
04What we found
When it has seen the model, detection is very accurate
| Detector | ROC AUC | Accuracy | Caught at 1% false flags | Caught at 5% false flags |
|---|---|---|---|---|
| Word and character patterns (full) | 0.990 | 95.3% | 86% | 95% |
| Compact model (runs in the browser) | 0.986 | 94.2% | 81% | 93% |
| Style only, no vocabulary | 0.960 | 88.9% | 60% | 80% |
Five-fold cross-validation on the 8,036 matched reviews. Even the style-only model, which never sees a single word, separates the two groups well: the difference is in how AI writes, not only what it writes about.
A detector built for yesterday's fakes is blind to today's
Detectors learn the quirks of the generator they were trained on. A tool can score 98% on its own benchmark and catch almost nothing in production.
The newest models are the hardest to catch
Every new model release is a new attack. A detector needs fresh examples, retraining and monitoring, not a one-off purchase.
What gives AI away
05Try the detector
AI-written review detector LIVE
This is the compact model from the table above, running entirely in your browser. Nothing you type is sent anywhere.
Start typing to see the score update.
A demonstration model trained on short English product reviews. It will be wrong on some reviews and is not evidence that any particular person used AI. Please do not use it to accuse anyone.
06What it means for a business
Triage, not verdicts
At a 1% false-flag rate the model sends most AI reviews to a moderation queue and leaves 99% of genuine customers alone. People make the final call.
Set the threshold by cost
The right cut-off depends on what a wrongly removed review costs you against a fake that stays up. We read every result at 1% and 5% for that reason.
Budget for retraining
The share caught fell from 90% to 35% when GPT‑5 mini was new to the detector. Plan quarterly retraining on fresh labelled examples and watch the score distribution for drift.
Text is one signal of several
Combine it with account age, purchase verification and posting bursts. A fraudster can edit the text; it is much harder to fake the behaviour.
07Limits
Read the numbers as a best case for simple fakes
- The modern AI reviews came from generic prompts ("write a positive review for a product, be descriptive and human-like"). A fraudster who prompts for a specific product, adds typos or edits the output will be harder to catch.
- The AI reviews cover products, films and venues, while the human reviews are all Amazon products, so some words such as "movie" or "event" help the full model for the wrong reason. The style-only model, which uses no vocabulary, still reaches 0.96 AUC, so topic is not the main signal.
- English only, reviews of 50 words or fewer, and human reviews from one platform written before 2019.
- Some models have few reviews after matching (110 for Llama 3, 134 for GPT‑5.2 Instant). Figure 2 shows 95% intervals.
08How we would do this for you
Measure the problem
Label a sample of your reviews or user content, estimate how much is machine-written, and agree what a false flag costs.
Build and stress-test
Train on your data plus the newest public models, add behavioural signals, and test on generators held out from training.
Deploy and monitor
Batch scoring or an API, a drift dashboard, and a retraining playbook your team can run.
09Reproduce it
The analysis script downloads both public datasets, rebuilds the matched set and reruns every test. A full run takes about a minute on a laptop.
Data: Salminen, J. et al. (2022), “Creating and detecting fake reviews of online products”, Journal of Retailing and Consumer Services 64; CRSD, Customer Review Sentiment Dataset (Infinitode, 2026), MIT-style licence.
This is an independent project built on public data to show how we work. It is not client work, and no client data was used. Figures are reproducible from the published code.