open source · community powered · free forever

The web is full of traps.
We map them all.

darkpatternscan is a volunteer-run platform that audits websites for manipulation tactics and fraud signals — and turns every review into training data for open detection models.

Volunteer your time See how it works
https://checkout.shadystore.com/confirm
74 / 100
MANIPULATION SCORE — HIGH RISK

Fake urgency countdown URGENCY
Pre-checked insurance add-on HIDDEN COST
False scarcity: "2 left in stock" SCARCITY
Confirmshaming on opt-out SHAME
Unverifiable social proof SOCIAL PROOF
12,847
sites reviewed
341
active volunteers
89,400
labeled data points
process

Human + AI, in a loop

AI scans fast. Humans catch what AI misses. Every confirmed finding trains the next model. The dataset compounds with every volunteer hour.

01
Submit a site
Paste any URL. Our crawler extracts text, UI patterns, and behavioral signals from the page.
02
AI pre-scan
Claude classifies manipulation tactics across 8 categories and generates a preliminary risk score.
03
👁
Human review
Volunteers confirm, reject, or add findings. Expert reviewers handle complex fraud patterns.
04
🗄
Published to dataset
Verified findings become public trust profiles and labeled training data — freely downloadable.
05
🔁
Models improve
New labels retrain classifiers monthly. Accuracy compounds. The community gets smarter together.

8 categories of manipulation

Every finding maps to a category, severity, and extracted evidence quote — usable in court, shareable with regulators.

Fake urgency
Artificial deadlines and countdown timers designed to prevent rational decision-making.
📦
False scarcity
"Only 2 left!" and live viewer counts that cannot be verified or are demonstrably fabricated.
👁‍🗨
Misdirection
Visual tricks: color contrast, button size, and layout designed to push users toward the expensive option.
🧾
Hidden costs
Fees revealed at final checkout. Pre-checked add-ons. Drip pricing that inflates the total by up to 3×.
😔
Confirmshaming
Opt-out labels designed to make users feel foolish: "No thanks, I don't want to save money."
🔒
Roach motel
Easy to subscribe, designed to make cancellation exhausting — buried links, phone-only flows, forced retention calls.
👥
Fake social proof
Unverifiable "47 people viewing" and inflated review counts used to manufacture FOMO.
🚧
Obstruction
Friction designed to block opt-out: broken links, grey-on-grey text, 7-click cancellation flows.


A growing dataset for researchers

Every volunteer review produces structured, labeled training data. Download the full dataset or hit our API — it's open, always.

Fraud classifiers — binary and multi-class labels per pattern category, ready for sklearn pipelines.
NLP features — extracted urgency language, named entity counts, sentiment deltas per page section.
Anomaly detection — isolation forest baselines trained on known-clean sites for zero-shot scoring.
Cross-site clustering — t-SNE embeddings showing which manipulation tactics co-occur across industries.
# download latest dataset snapshot
$ curl -O https://api.darkpatternscan.org/v1/dataset/latest.csv

# 89,400 labeled rows, 34 features
$ python train_classifier.py

→ loading dataset... 89400 rows
→ training fraud classifier (XGBoost)
→ cross-validation: 5-fold

✓ accuracy: 0.924
✓ f1-score (weighted): 0.918
✓ model saved → fraud_v3.pkl

# top features by importance:
urgency_word_count 0.241
hidden_fee_signal 0.198
countdown_present 0.171
manipulation_score 0.934 ← composite
community

Donate time, not money

No funding required. Volunteer an hour a week and help build the most comprehensive dark pattern database in the world.

Tier 1
Contributor
  • Submit sites for review
  • Confirm or reject AI findings
  • Earn reputation points
  • Access contributor dashboard
Tier 3
Expert
  • Everything in Reviewer
  • Data model contributions
  • Regulatory submission support
  • Named in dataset credits
  • Vote on platform roadmap
get started

The web won't fix itself.

Pick a site you've been suspicious of. Spend 20 minutes. Help us build the dataset that proves manipulation is systematic, not accidental.

Start volunteering Read the docs