Synthetic Content & Fake Review Detection
Campaign Firewall shows how relationship evidence can support a human review route when wording alone misses the pattern. All reviews and account histories shown here are synthetic.
4 of 15
Flagged by the local text-only baseline
Modeled all-human campaign, same fixture
15 of 15
Routed for human review by the ensemble
Synthetic records, no platform action
105 account pairs
Linked through shared product history
Relationship evidence in the same cluster
These fixture observations explain a design choice. Both methods use corpus-derived text percentiles, and the ensemble review threshold was fitted on the same labels; this is not performance on unseen data.
A brand-protection team needs to know why reviews appear related before deciding what to escalate. Fluent wording alone cannot establish that accounts acted independently, and a negative opinion alone does not establish fraud.
Our synthetic example models a 15-review campaign on a competitor listing. Eleven records have little stylometric anomaly, yet their overlapping product histories connect the accounts. The local text-only baseline flags four of the 15; the ensemble routes all 15 for review.
That route preserves uncertainty. The modeled all-human label is fixture ground truth, not evidence that real people wrote these reviews or that anyone was paid.
Writing patterns, account behavior, peak timing and account relationships contribute to a capped heuristic score. The fixture models 90 days of history; the temporal detector examines peak 72-hour windows. The score is not a calibrated probability.
Shared devices or sufficiently overlapping product histories create graph edges. Product overlap requires at least 0.5 Jaccard similarity within the same listing and no more than 72 hours between records. Timing alone creates no link.
Connected components become campaign clusters when size and cohesion meet configured rules. Deterministic scoring assigns CLEAR, REVIEW or modeled AUTO eligibility before a narrative is written. REVIEW remains a route for human judgment, not a completed investigation.
The recorded investigation replays a cached Codex response after scoring. A deterministic filter checks numbers, token overlap and verdict reversals; it does not establish every retained sentence as true. JSON retains campaign membership, numeric component scores and an unfiled dispute draft. Printable HTML shows the campaign profile, per-review signal names and the draft; it does not display numeric component breakdowns.
The graph uses interpretable connected-components clustering. No trained graph neural network or production platform integration is implemented in this demonstration.
All reviews, account histories, devices and platform feeds in these actual application captures are synthetic. The primary example follows 15 modeled competitor reviews from a campaign finding through a human review route to the exported record.
The fixture labels this case as an all-human paid campaign, but neither authorship nor payment is established by the detector. Eleven of its 15 reviews have a stylometric component at most 4: little writing-pattern anomaly in this implementation. Their account histories provide the reason to examine them together.

The 15 reviews share sufficiently overlapping product histories on the same listing within the configured 72-hour limit. This creates 105 product-overlap pair edges, linking every pair in the cluster, with cohesion 1.0. There are no shared-device edges in this case; the finding does not depend on device reuse. Timing alone would not create an edge.

The local text-only baseline flags four of the 15 records. It therefore misses campaign-level detection under this harness's rule that at least 60% of a planted label must be flagged. The ensemble combines writing, behavior, timing and network components and routes all 15 to REVIEW, rather than AUTO.
| Evidence or decision | Observed result | Interpretation |
|---|---|---|
| Writing-pattern signal | 11 of 15 have stylometric component at most 4 | Low anomaly is not a human-authorship certificate. |
| Account relationship | 105 product-overlap pair edges; no shared-device edges | A shared history pattern supports examining the accounts together. |
| Local text-only baseline | 4 of 15 flagged | This implemented comparator misses the campaign under the 60% rule. |
| Ensemble route | 15 REVIEW; 0 AUTO | All 15 are routed for human judgment. No review is removed. |

Deterministic scoring sets the tiers before the optional model describes the finding. The recorded investigation replays a cached response from the real Codex bridge. Its grounding filter checks numbers, token overlap and verdict reversals; retained prose still needs analyst review and cannot change the score or tier.

The actual JSON export retains campaign membership, tier breakdown, contributing signals and each record's component scores. The printable HTML renders a campaign profile, the cached narrative, indicative rule mapping, an unfiled dispute draft and all 15 flagged rows. An analyst can check why a record was routed instead of relying only on the narrative. The native dispute draft overstates timestamp coverage: the JSON and printable report include a record-generation timestamp, but no per-review timestamps. Those would need to be added and verified before external use.

A separate synthetic cluster links 67 records: 47 five-star reviews on the modeled Amazon competitor listing, plus 12 Google and eight Yelp reviews targeting the modeled brand. Across 71.8 hours, the cluster has 90 shared-device pair edges and 1,175 product-overlap pair edges. It contains 24 AUTO and 43 REVIEW records; AUTO is eligibility under a modeled policy, not automatic removal.
This case shows why a reviewer may need relationships across modeled feeds rather than a count of negative messages alone. Thirty-one of the 67 records have little stylometric anomaly. Even with a connected pattern, the detector does not establish real payment, customer status or guilt.

The modeled Amazon competitor listing peaks at 69 reviews in a 72-hour window against an expected 7.8, about 8.85 times the configured baseline. That listing-window count is not the 67-record cross-platform cluster size. A burst contributes a temporal signal; account relationships supply the graph links.

The broader fixture contains 1,530 synthetic records across a modeled 90-day history. The following results reproduce the current loaded thresholds on that same labeled corpus. Both methods derive text percentiles from it, and the ensemble REVIEW threshold was fitted on its labels. These are not held-out or production accuracy results.
| Measurement | Campaign Firewall ensemble | Local text-only baseline |
|---|---|---|
| Planted review records flagged | 82 of 82 | 40 of 82 |
| Genuine-labeled records wrongly flagged | 0 of 1,448 | 306 of 1,448 |
| Planted campaign labels detected | 3 of 3 | 0 of 3 |
Flagging includes REVIEW and AUTO, not removals. The three planted labels form two graph clusters because the boost and mirror labels connect into the same cross-platform cluster. The false-positive contrast applies only to this implemented baseline and fitted fixture, not commercial detectors or new reviews.
| Layer | Useful evidence | Boundary |
|---|---|---|
| Local text-only baseline | Writing-pattern anomalies in individual records | Flags four of 15 in the modeled campaign; no commercial-detector claim |
| Campaign Firewall ensemble | Writing, behavior, timing and account relationships | Routes all 15 for review in this fitted synthetic fixture |
| Investigation documentation | Membership, component scores, narrative and dispute draft | Supports inspection; neither files a dispute nor proves a violation |
All review records, account histories, device fingerprints and platform connections are synthetic. The feeds are modeled, with no live connectors or scraped reviews. The demonstration does not authenticate real authors, remove reviews, complete human investigations or file disputes.
No held-out evaluation, production false-positive rate, analyst-hours saving, ROI or dispute success rate has been measured. The same-fixture results show reproducible configured behavior; they do not establish generalization.
Campaign Firewall combines writing patterns with account behavior, timing and relationship evidence. In one synthetic 15-review campaign, the local text-only baseline flags four records while the ensemble routes all 15 for human review. This modeled case demonstrates coordination detection; it does not establish real human authorship or performance on new reviews.
Shared device fingerprints and overlapping product histories create account relationships in the modeled data. Product-history links require a shared listing, at least 0.5 Jaccard similarity and timestamps no more than 72 hours apart; timing alone creates no edge. Campaign membership, component scores and contributing signals remain available in the evidence export.
The demonstration uses synthetic records and modeled histories labeled for Amazon, Google and Yelp. It has no live platform connectors, scraped reviews or access to real account, device or purchase histories. Production data access, permissions and integrations would need separate implementation and validation.
Campaign Firewall exports descriptive JSON and printable HTML evidence with an unfiled dispute draft. REVIEW means a human review route, and AUTO means eligibility under the modeled policy. Neither state removes a review, submits a dispute or completes an investigation.
The current ensemble clears all 1,448 genuine-labeled synthetic records in this fixture. Its review threshold was fitted on the same labels, and both methods derive text percentiles from this corpus, so that result cannot establish a false-positive rate for unseen data. An evaluation on independent data is still needed before using these routes operationally.
Coordination signals do not establish payment, required sentiment, customer status or a legal violation. The FTC distinguishes fake or false reviews from incentives conditioned on positive or negative sentiment and from review suppression. The demo provides indicative rule mapping and an unfiled draft for substantive review; it does not certify compliance.
Legal context: Federal Trade Commission, Consumer Reviews and Testimonials Rule Q&A (checked 2026). The mapping is descriptive and requires substantive legal review before external use.
Explore related research for broader context on this demonstration.
Discuss your evidence and escalation requirements with Veriprajna.
We can scope the data access, independent evaluation and review workflow needed for your use case. The demonstration provides a concrete basis for that conversation.