Most website audit and B2B lead enrichment tools rely on heavy Headless Chrome queues that take 30–45 seconds per domain and cost hundreds of dollars a month in server overhead.
I wanted to build an instant B2B prospecting and technical audit engine for web design, SEO, and PPC agencies that executes in under 2 seconds at the edge for £0 server cost.
Here is the live platform running on Cloudflare Workers:
👉 https://leakradar.leakradar.workers.dev
(If you want to test the locked Pro features—including the 250-domain Bulk CSV Scraper, Contact Vault, and White-Label Client Reports—click *"Unlock Pro"** in the top right and enter the 4-day developer key: VIP-4DAY)*
What It Does in ~1.8 Seconds
When you enter any domain (or hit the JSON API), the Worker fires parallel asynchronous fetch() streams from the nearest Cloudflare PoP across /, /contact, /contact-us, and /about:
-
18-Signal DOM & HTTP Telemetry Inspection:
- Ad Pixels: Meta/Facebook Pixel (
fbevents.js), TikTok Pixel, LinkedIn Insight Tag, Google Ads Conversion tags. - Analytics & Enterprise Stack: GA4, Google Tag Manager, Segment, Tealium, Hotjar, Microsoft Clarity, OneTrust.
- Conversion Architecture: Live Chat widgets (Intercom, Crisp, Tidio, Drift, Zendesk), CRM/Booking embeds (HubSpot, Calendly, Klaviyo), Lead forms, and JSON-LD
application/ld+jsonschema. - Edge & Security: Measures live Time-To-First-Byte (TTFB ms), inspects
strict-transport-security(HSTS), and detects CDN edge headers.
- Ad Pixels: Meta/Facebook Pixel (
-
Cloudflare
data-cfemailHex Decryption + Contact Scraping:- Extracts verified corporate
@domainemails,tel:phone lines, and social profiles across subpages. - Includes a bitwise XOR hex decoder that automatically decrypts Cloudflare's
data-cfemailemail obfuscation on the fly:
- Extracts verified corporate
javascript function decCf(html) { let out = [], r = /data-cfemail="([0-9a-fA-F]+)"/g, m; while ((m = r.exec(html)) !== null) { let s = m[1], k = parseInt(s.substr(0, 2), 16), e = ""; for (let i = 2; i < s.length; i += 2) e += String.fromCharCode(parseInt(s.substr(i, 2), 16) ^ k); if (e.includes("@")) out.push(e.toLowerCase()); } return out; } 

