WSC Search & Health (`wsc_analytics`) is the official 100% cookieless, Zero-PII web analytics, autonomous AI crawler detection, and search governance suite for Drupal — standardized by the World Search Council (WSC). It eliminates GDPR/ePrivacy/TDDDG cookie banners while closing the blind spot left by traditional analytics: monitoring and attributing traffic from Generative AI search engines (ChatGPT, OAI-SearchBot, Perplexity, Claude, Gemini) alongside human visitors.
Whether you run an enterprise platform on Drupal 10 / 11 or maintain a mission-critical Drupal 7 LTS installation, WSC Search & Health provides non-blocking SQLite Write-Ahead Logging (WAL) edge telemetry, native Drupal Views integration, a 7-Card Bento Command Center, SpeedSentinel 2.0, Port-25-Free Domain Sentinel, AI Coverage Inspector, Dynamic Industry Benchmarks, dynamic /llms.txt, and opt-in IndexNow instant URL push.
🚀 Dual-Track Release Architecture (Drupal 8–11 & Drupal 7 LTS)
- Branch
2.2.x/ Release2.2.4(Modern Drupal): Compatible with Drupal 8.8, 9, 10, and 11 (PHP 7.4 – 8.4) using StackPHP pre-PageCache middleware (WscBotShieldMiddleware), Symfony Kernel Event Subscribers, and Dependency Injection. - Branch
7.x-2.2.x/ Release7.x-2.2.4(Drupal 7 LTS): Native Drupal 7 procedural implementation with earlyhook_boot()AI crawler sensing and Views 3 integration.
Key Features in v2.2.4
-
100% Cookieless & Strict Zero-PII Privacy by Design:
- Computes daily rotating salted session hashes (
SHA256(IP + UA + DailySalt)) — sets zero tracking cookies and stores zero raw IP addresses in SQLite or outbound payloads. - Strict Opt-In Cloud Sync & IndexNow: Works 100% standalone locally out of the box (
hybrid_enabled = false,indexnow_enabled = falseby default). Zero outbound requests are made unless explicitly enabled by an administrator.
- Computes daily rotating salted session hashes (
-
Pre-PageCache AI Crawler & Bot Shield:
- Drupal 8–11: Priority-250 StackPHP middleware (
WscBotShieldMiddleware) + Kernel Subscriber (WscRequestSubscriber) capture AI bots even when Drupal's Internal Page Cache serves warm cached HTML. - Drupal 7: Ultra-early
hook_boot()sensor intercepts crawlers before theme rendering. - Separates Live AI RAG Citation Bots (
ChatGPT-User,OAI-SearchBot,PerplexityBot,Claude-SearchBot) from AI Pre-Training Scrapers (GPTBot,ClaudeBot,CCBot,Bytespider) and classic search indexers (Googlebot,Bingbot).
- Drupal 8–11: Priority-250 StackPHP middleware (
-
Zero-Lock Dual SQLite WAL Storage: Buffers incoming telemetry and reporting rollups in isolated SQLite databases with
PRAGMA journal_mode = WALoutside the webroot whenever possible, ensuring zero lock contention on your primary MariaDB/MySQL/PostgreSQL database. -
Canonical 7-Card Bento Command Center (
1d,7d,30d,90d,365d):- Traffic & Channels (
card1_traffic): Human Visitors, Pageviews, Engaged Time & AI / Search / Social / Direct attribution. - AI Actionable Insights (
card2_insights): Plain-language growth opportunities and anomaly detection. - Bot Shield & AI Crawler Split (
card3_bots): Real-time Human vs. Bot ratio, Live RAG hits, Training scrapes & Search crawls. - Content Engagement Depth (
card_engagement): Active reading time, Time-to-First-Interaction (TTFI) & scroll milestones (25/50/75/100%). - Outbound & Downloads (
card_outbound): External link routing (Partner, Social, Payment, Reference) & file downloads. - E-Commerce Funnel (
card_ecommerce): 4-stage conversion funnel (Views → Cart → Checkout → Purchase) with Drupal Commerce hook support. - Domain Sentinel & SpeedSentinel 2.0 (
domain_health+pagespeed): Port-25-free DNS/DNSSEC/SPF/DMARC/TLS security audit and SpeedSentinel 2.0 Dual-Thermometer (🤖 AI RAG Readiness Score vs. 👤 Human Core Web Vitals Score) with SSRF public-DNS validation.
- Traffic & Channels (
-
AI Coverage Inspector & Dynamic Industry Benchmarks:
- AI Coverage URL Inspector: Inspect any Drupal path or URL to see exact AI RAG citations vs. Training crawler hits over 7 or 30 days (cloud ClickHouse + local SQLite
wsc_bot_hitsfallback). - Dynamic Industry Benchmarks: Compare your site's AI RAG share, engaged time, and human traffic ratio against 10 industry verticals (p50 / p75 / p90 medians).
- AI Coverage URL Inspector: Inspect any Drupal path or URL to see exact AI RAG citations vs. Training crawler hits over 7 or 30 days (cloud ClickHouse + local SQLite
-
AI Discovery Manifest (
/llms.txt) & Opt-InIndexNow:- Dynamically serves a structured Markdown index of published Drupal nodes at
/llms.txt(coexisting gracefully if another module already provides/llms.txt). - Optional automatic & manual
IndexNowURL push on node publish/update with virtual/{32-hex-key}.txtownership verification.
- Dynamically serves a structured Markdown index of published Drupal nodes at
-
100% Unlocked Local Features & Optional WSC Authority Portal Bridge:
- All local PHP analytics, Drupal Views integration,
/llms.txt,IndexNow, and local Support / Maintainer Co-Branding settings are 100% unlocked without any license requirement. - Connecting an optional WSC Member or Agency credential adds multi-domain fleet governance on
worldsearchcouncil.org, Web Transparency Protocol (WTP) attestation, remote Co-Branding sync, and a 100% sponsor-free console.
- All local PHP analytics, Drupal Views integration,
Installation & Configuration
-
Install the module:
- Drupal 8.8 / 9 / 10 / 11 (Composer):
composer require drupal/wsc_search_health:^2.2thendrush en wsc_analytics -y - Drupal 7 LTS: Extract into
sites/all/modules/wsc_analyticsand rundrush pm-enable wsc_analytics -y
- Drupal 8.8 / 9 / 10 / 11 (Composer):
-
Configure Settings: Visit
/admin/config/services/wsc-analyticsto review Cookieless Zero-PII tracking,/llms.txt, opt-in Hybrid Cloud Gateway sync, and opt-in IndexNow. -
Open the 7-Card Bento Dashboard: Navigate to Reports → WSC Analytics & Search Health (
/admin/reports/wsc-analytics).
Requirements
- Drupal Core: Drupal 8.8+, 9.x, 10.x, or 11.x (
2.2.xbranch) — or Drupal 7.x (7.x-2.2.xbranch). - PHP: PHP 7.4 – 8.4 with
ext-pdo_sqlite,ext-openssl, andext-json.
Ask your assistant about WSC Search & Health
Check compatibility with your Drupal and PHP version, maintenance and security coverage, from current release data. How it works
Depends on
Dependencies of the latest stable release
No dependencies recorded for this project.
Required by
Tracked projects that depend on this one
No tracked projects depend on this one yet.