Detection ruleset
The scanner runs on a maintained, versioned signature database — not a static prompt. This page is the public proof of that: every change to what we detect is logged here.
Current version: 1.0.0
Last updated: 2026-08-25
Active signatures: 13
v1.0.0 — 2026-08-25 (initial)
- Chat platforms: Intercom, Crisp, Tidio, Drift, Zendesk, HubSpot Conversations, Freshchat
- Dedicated AI-bot platforms: Chatbase, SiteGPT, Voiceflow, Botpress, Landbot, Chatling, Botsonic
- Voice AI: Vapi, Retell, Bland.ai, ElevenLabs, PlayHT, Cartesia
- AI media generators: HeyGen, Synthesia, D-ID, Runway, Sora/Veo/Kling references
- Generic signals: LLM API references, chat-labelled UI elements, AI generator meta tags
- Obligation taxonomy aligned to Article 50 sub-clauses: interaction disclosure (chat + voice), synthetic content marking (image/audio/video), deepfake visible labeling, and the separate public-interest AI-text clause
Every category we check — check our work
Scams hide their detection logic behind a gauge. We publish our coverage. The scanner runs on a maintained, versioned signature database — the canonical file lives on GitHub. We do not publish the exact match patterns here, because that would let vendors trivially evade detection — but the full file is open source for anyone who wants to verify it.
| Category | Obligation covered | Confidence |
|---|---|---|
| Intercom | ai_interaction_disclosure | high |
| Crisp | ai_interaction_disclosure | medium |
| Tidio | ai_interaction_disclosure | medium |
| Drift | ai_interaction_disclosure | medium |
| Zendesk | ai_interaction_disclosure | medium |
| HubSpot | ai_interaction_disclosure | medium |
| Freshchat | ai_interaction_disclosure | medium |
| AI bot platform | ai_interaction_disclosure | high |
| LLM API reference | ai_interaction_disclosure | low |
| Chat UI element | ai_interaction_disclosure | low |
| Vapi | ai_interaction_disclosure_voice | high |
| AI video generator | synthetic_content_marking | high |
| Generator meta tag | synthetic_content_marking | low |