Website Tech Stack Detector (Bulk) · SiteVerdict
Pricing
Pay per event
Website Tech Stack Detector (Bulk) · SiteVerdict
Find the tech stack of thousands of websites: CMS, ecommerce, analytics, ad pixels, cookie banners, CRM, chat, payments, CDN, hosting, frameworks, JS library versions and email provider (MX/SPF). Evidence for every detection, filters and change monitoring.
Pricing
Pay per event
Rating
0.0
(0)
Developer
Aman Thakran
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
SiteVerdict — Tech Stack Detector & Sales Lead Signals
Quick start: keep the three prefilled sites and press Start (HTTP mode, the default). You get each site's technologies with the evidence for each match.
What it costs: $0.003 per site in HTTP mode (default), $0.008 per site in browser mode. The prefilled 3-site run costs $0.009 plus any optional extras that apply: hiring signals $0.005, AI outreach angle $0.005 (your own AI key), and company enrichment $0.004 per site, which runs only when you add your own Companies House API key.
Works well with: Agency Lead Finder · Domain & Email Health Checker · Local Business Leads.
Paste a list of company websites. Get back a ranked prospect list for your offer. For each site you get:
- what it runs, with evidence and versions (1,112 technologies);
- how much it likely spends on tools;
- whether it is hiring, and which tools its job ads name;
- what changed since your last run;
- for UK firms, the Companies House record;
- one plain-English line on why to contact them now.
In our own hand-verified test of 30 public sites on 11 Oct 2026, we found no false detections in either mode; browser mode found 99.8% of the technologies we verified by hand and fast HTTP mode 86.5%. Thirty sites is a small sample: expect some missed and some wrong detections on other sites, especially custom or heavily cached ones. See the benchmark.
Three ways teams use it
-
SaaS sales and RevOps. Upload your target-account CSV and choose your offer. You get a 0-100 score per account with the reasons. Example: "Uses Shopify; displacement: uses competitor Mailchimp; hiring 3 marketing roles; 8 paid tools ≈ $1.4k-9k/mo list price."
Import
HUBSPOT_COMPANIES.csvstraight into HubSpot. -
Agencies prospecting. Look for gaps you can sell into, for example:
- Shopify stores with no SMS tool;
- sites running ad pixels with no cookie banner;
- WordPress sites with no caching layer.
Each lead says why, so your first message is specific.
-
Investors and competitive intelligence. Schedule monitor mode on a portfolio or competitor list. You get alerts like "Switched Email marketing: Mailchimp → Klaviyo" or "Started using Greenhouse (Recruiting & ATS)". These are buying signals, sent to Slack or a webhook.
Before → after
Before: a column of domains from your CRM.
After: one row per company. This example is trimmed.
{"domain": "northwind.example","lead": {"offer": "Email/SMS marketing for online stores","score": 76, "tier": "A", "tierLabel": "Hot prospect","summary": "Uses Shopify (Ecommerce); Displacement: uses competitor Mailchimp; Hiring: 3 open marketing role(s)","breakdown": { "fit": 30, "need": 25, "budget": 11, "intent": 10 },"reasons": [{ "kind": "fit", "points": 30, "reason": "Uses Shopify" },{ "kind": "need", "points": 13, "reason": "No SMS marketing tool detected" },{ "kind": "need", "points": 15, "reason": "Displacement: uses competitor Mailchimp" },{ "kind": "budget", "points": 11, "reason": "4 paid tool(s) ≈ $230-1,300/mo list price" },{ "kind": "intent", "points": 10, "reason": "Hiring: 3 open marketing role(s)" }]},"outreachAngle": "Northwind runs Shopify with Mailchimp and is hiring three marketers, so moving email and SMS onto one platform now would land before the new team builds flows.","spend": { "paidToolCount": 4, "spendTier": "medium", "estimatedMonthlyUsd": { "low": 230, "high": 1300 } },"hiring": { "ats": "Greenhouse", "openRoles": 12, "rolesByFunction": { "marketing": 3, "engineering": 5, "sales": 2, "other": 2 },"toolsMentioned": [ { "tool": "Klaviyo", "roles": 2, "sampleRoles": ["CRM Marketing Manager"] } ] },"buyingSignals": ["Started using Meta Pixel (Advertising) since 2026-10-04", "12 open role(s) on Greenhouse"],"company": {"onSite": { "ukCompanyNumber": "01234567", "vatNumber": "GB123456789", "socialProfiles": { "linkedin": "https://www.linkedin.com/company/northwind" } },"companiesHouse": { "companyName": "NORTHWIND TRADING LIMITED", "status": "active", "incorporatedOn": "2014-03-02","sicCodes": [{ "code": "47910", "description": "Retail sale via mail order houses or via Internet" }], "lastAccountsType": "small" }},"ecommerce": ["Shopify"], "emailProviders": ["Google Workspace"],"technologies": [{ "name": "Shopify", "category": "Ecommerce", "confidence": 100, "version": null,"evidence": ["header x-shopid: 1234", "resource: https://cdn.shopify.com/..."] },{ "name": "jQuery", "category": "JavaScript library", "confidence": 100, "version": "3.7.1","evidence": ["resource: https://northwind.example/…/jquery.min.js?ver=3.7.1"] }]}
What it detects
The signature set covers 1,112 technologies in 77 categories. Every signature is written by SiteVerdict from vendors' public documentation. None is copied from Wappalyzer or its GPL forks.
| Area | Examples |
|---|---|
| CMS, builders, ecommerce | WordPress (with version, theme and plugins), Drupal, Joomla, Webflow, Wix, Squarespace, Statamic, Payload, Shopify (with theme and apps), WooCommerce, Magento, BigCommerce, Salesforce Commerce Cloud |
| Marketing stack | GA4 vs UA, GTM, Adobe, Segment, RudderStack, Hotjar, Clarity, Mixpanel, Amplitude, PostHog; Meta, Google Ads, LinkedIn, TikTok, Reddit, The Trade Desk and StackAdapt pixels |
| CRM, marketing automation, email/SMS | HubSpot, Marketo, Pardot, Salesforce, Klaviyo, Mailchimp, Braze, Customer.io, Attentive, Postscript, Kit, Campaign Monitor |
| Consent (CMP) | OneTrust, Cookiebot, Usercentrics, Didomi, Sourcepoint, TrustArc, Transcend, the HubSpot and Shopify banners, Google Consent Mode |
| Chat, support, reviews, search, testing | Intercom, Zendesk, Drift, Gorgias, Qualified; Trustpilot, Yotpo, Bazaarvoice; Algolia; Optimizely, VWO, LaunchDarkly |
| Payments | Stripe, PayPal, Adyen, Checkout.com, Klarna, Clearpay, Affirm, Recharge, Ordergroove |
| B2B intent and visitor identification | Leadfeeder, Clearbit, 6sense, Demandbase, ZoomInfo WebSights, RB2B, Warmly, Apollo, Bizible |
| Recruiting / ATS (new) | Greenhouse, Lever, Ashby, Workable, Teamtailor, Personio, SmartRecruiters, Workday, iCIMS, BambooHR and more |
| Infrastructure | Cloudflare, Fastly, Akamai, CloudFront, Vercel, Netlify, WP Engine, Kinsta, Laravel Cloud, AWS WAF, DataDome |
| DNS-based | Email provider (MX), email security (Mimecast, Proofpoint, MessageLabs, Cloudflare), SPF senders (SendGrid, SES, HubSpot, Greenhouse, NetSuite), DMARC vendor, DNS host, 40+ SaaS domain-verification tokens (Atlassian, DocuSign, Anthropic, OpenAI, HackerOne…) |
Every detection carries a category, a confidence (0-100), a version when the site shows one, and evidence.
Lead scoring: explainable, for your offer
Pick a preset, or describe your own offer. Each site gets a score out of 100:
| Component | Points | What counts |
|---|---|---|
| Fit | 0-30 | The site uses your target platform or category |
| Need | 0-25 | A category gap (e.g. "no SMS tool") or a competitor to displace |
| Budget | 0-20 | Number and tier of paid tools |
| Intent | 0-25 | Relevant open roles, tools named in job ads, tech added or removed since the last run |
Every point comes with a sentence. Sites that are not a fit are capped and say so.
Presets:
- general B2B quality;
- email/SMS for online stores;
- cookie consent / CMP;
- CRO / A/B testing;
- live chat / support;
- Shopify apps or agency;
- WordPress agency;
- email security / DMARC;
- B2B intent data;
- analytics / CDP.
Custom offer (JSON):
{ "name": "Klaviyo agency", "targetTechs": ["Shopify"], "competitorTechs": ["Mailchimp", "Omnisend"],"gapCategories": ["SMS marketing"], "excludeTechs": ["Attentive"], "hiringFunctions": ["marketing", "ecommerce"] }
Input examples
Score a CRM export for your offer, with hiring signals and a HubSpot file
{ "csvUrl": "https://docs.google.com/spreadsheets/d/e/.../pub?output=csv", "offerPreset": "ecommerce-email-sms","hiringSignals": true, "minLeadScore": 50 }
UK accounts with Companies House data and an AI outreach line (your keys)
{ "urls": ["northwind.example", "acme-widgets.example"], "offerPreset": "general-b2b","companiesHouseApiKey": "…", "aiProvider": "anthropic", "aiApiKey": "…" }
Weekly buying-signal watch with Slack alerts
{ "datasetId": "<your accounts dataset>", "mode": "browser", "monitor": true, "monitorKey": "target-accounts","onlyChanges": true, "slackWebhookUrl": "https://hooks.slack.com/services/…" }
Shopify stores not using Klaviyo yet
{ "urls": ["…"], "onlySitesUsing": ["Shopify"], "excludeSitesUsing": ["Klaviyo"] }
Output
- Dataset views:
- Prospects: score, tier, why, angle, spend, hiring and company.
- Sites: the stack overview.
- Technologies: flat, one row per technology.
- Monitor changes.
- Errors.
- Key-value store:
LEADS.csv: ranked, one row per company, with the stack by category.HUBSPOT_COMPANIES.csv: HubSpot Companies import. Default columns map automatically; choose "Create new property" for theSiteVerdict …columns. Company Domain Name de-duplicates.REPORT: a shareable HTML report.AGENT_SUMMARY: compact JSON for AI agents.SITES_BY_TECH.TECHS_FLAT.csv.RUN_SUMMARY.
All CSVs are protected against spreadsheet formula injection.
Pricing
Pay per event. You only pay when something is delivered.
| Event | When | Price |
|---|---|---|
site-detected | Fast HTTP mode: site analysed, technologies found, passed your filters and min score | $0.003 |
site-detected-browser | Same, in real-browser mode | $0.008 |
hiring-signals | Open roles or tool mentions found (careers page or public job board) | $0.005 |
company-enriched | A Companies House record was attached (needs your free CH key) | $0.004 |
ai-outreach-angle | An outreach line was written with your own LLM key | $0.005 |
Lead scoring, spend tier, on-site company details, buying signals, exports, the HTML report and alerts are included.
Examples:
| Job | Approximate cost |
|---|---|
| 100 sites, HTTP mode, scored | $0.30 |
| 100 sites + hiring signals (about 40 with roles) + Companies House (about 30 UK matches) | ≈ $0.62 |
| 1,000 sites in browser mode | $8 |
Weekly monitor of 200 competitors, onlyChanges | only the sites that changed are charged |
Never charged:
- errors, bot-protection blocks and robots.txt skips;
- empty results and sites removed by your filters or minimum score;
- unchanged sites skipped by
onlyChanges; - failed AI calls or Companies House misses.
The run stops cleanly at your maximum total charge.
Benchmark (honest numbers)
We hand-verified 30 public sites across WordPress, Shopify, Drupal, Joomla, Webflow, Squarespace, Next.js, Rails, Laravel, publishers and SaaS homepages, on 11 Oct 2026. Full method and caveats are in BENCHMARK.md.
| Precision | Recall | Versions correct | Speed | |
|---|---|---|---|---|
| Fast HTTP mode | no false detections found | 86.5% | 21/21 | ~1 s/site |
| Real browser mode | no false detections found | 99.8% | 21/21 | ~10 s/site |
Limits: 30 sites checked by hand on one day; "precision" here means we found no wrong detections among them, not that the detector cannot be wrong.
Compared with the most-used Store alternatives (from their public docs, not by running them):
- We are the only one with per-detection evidence and versions, the DNS email/SaaS stack, hiring signals, explainable lead scores for your offer, Companies House enrichment, built-in buying-signal monitoring and a HubSpot export.
- BuiltWith's own database is larger and has years of history. If you need "first seen in 2019", use BuiltWith.
FAQ
Can it find "all sites using X"? No. It analyses the sites you give it. Feed it a list from your CRM, a directory or another Actor, then filter and score.
Why did HTTP mode miss a pixel? Many tags are injected by Google Tag Manager after the page loads. Use browser mode for the complete marketing stack.
Tools that wait for cookie consent are never seen. We do not click banners on your behalf.
How is "spend" estimated? We sum public list-price bands of the paid tools we detect: SMB < $100/mo, mid-market $100-1,000/mo, enterprise > $1,000/mo. It is a signal of tool budget, not a quote and not actual spend.
Where do hiring signals come from? From the company's own careers page (robots.txt respected), plus the documented public job-board APIs of Greenhouse, Lever and Ashby. We output job titles, departments, counts and tool names only, never recruiter or applicant data.
Does the AI see or send anything personal?
No. It only sees company-level facts we detected, and it only writes a sentence. Nothing is emailed. It uses your own Anthropic or OpenAI key, which is never logged or stored. Default model: claude-sonnet-5-5.
Do I need a Companies House key? Only for the registry fields. Without a key you still get the company number, VAT number and organisation details the website itself publishes, plus a link to the public Companies House page. Keys are free at developer.company-information.service.gov.uk.
Limits
- Pages per site. The homepage plus up to 10 extra pages, and the careers page when hiring signals are on.
- Page size. HTML is capped at 3 MB per page.
- Versions. Shown only when the site exposes them.
- Hidden tools. Tools without a public trace, such as a back-office ERP, cannot be seen unless DNS reveals them, for example through SPF or verification tokens.
- Job boards. Only Greenhouse, Lever and Ashby are read through an API. Other ATSs are recognised, and their counts are estimated from the careers page.
- Companies House. The API allows 600 requests per 5 minutes per key. We stay under that limit, so large UK lists run at about 2 companies per second.
Compliance & data sources
Public, official sources only:
- page HTML, response headers and cookie names;
- public DNS (MX, TXT/SPF,
_dmarc, NS, CNAME) and the TLS certificate; - robots.txt;
- the documented public job-board APIs of Greenhouse, Lever and Ashby;
- the Companies House public data API, with your own key.
Companies House data: Contains public sector information licensed under the Open Government Licence v3.0. SIC descriptions are from Companies House api-enumerations (MIT).
robots.txt is respected by default. Bot protection, CAPTCHAs and logins are never bypassed. We use an honest User-Agent (SiteVerdict/tech-stack-detector), with no proxy rotation.
Personal data is OFF. No names, emails or phone numbers of individuals are collected or output. That includes Companies House officers and PSCs, schema.org telephone and email, and LinkedIn /in/ profiles. Company social pages only.
UK GDPR / PECR. This tool identifies companies and technologies, not people. If you use the results for outreach:
- B2B email to corporate subscribers is allowed under PECR with an opt-out.
- Sole traders and partnerships count as individual subscribers and need prior consent for electronic marketing.
- Keep a legitimate-interests assessment, and honour objections.
This is not legal or financial advice.
Where data is stored. Results go to the run's default dataset and key-value store in your own Apify account. If you read input from another dataset, it is only read. Default storages are unnamed; how long Apify keeps them is set by Apify and your plan, not by SiteVerdict (Apify data retention). With monitoring on, each site's last detected technologies are kept in a named key-value store, siteverdict-tech-monitor, which Apify keeps until you delete it.
Third parties you choose. Companies House enrichment uses your own key. The optional AI outreach angle sends your offer description and the company facts found (public website, DNS and register data; no personal data) to Anthropic or OpenAI under your own key and their terms. SiteVerdict receives no copy of any data.
Technology names are trademarks of their owners and are used only to identify them. SiteVerdict is not affiliated with any vendor.
Built by SiteVerdict (BharatFare Travel and Technologies Ltd, UK). Contact: aman.thakran@bharatfare.com.