Tech Stack Detector — Frameworks, CMS, Analytics, JSON Out avatar

Tech Stack Detector — Frameworks, CMS, Analytics, JSON Out

Pricing

Pay per usage

Go to Apify Store
Tech Stack Detector — Frameworks, CMS, Analytics, JSON Out

Tech Stack Detector — Frameworks, CMS, Analytics, JSON Out

Competitor tech stack as CSV/JSON in 2 min — frameworks, CMS, analytics, CDN, servers, trackers. No Wappalyzer seat fee, no BuiltWith cap, no manual inspection. Built for BDR prospecting + sales intel. Custom pipeline — spinov001@gmail.com · blog.spinov.online · t.me/scraping_ai

Pricing

Pay per usage

Rating

0.0

(0)

Developer

Alex

Alex

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

an hour ago

Last modified

Share

Website Tech-Stack Detector — Frameworks, CMS, Analytics, CDN, Hosting for Any URL

Detect the full technology stack of any website in one request — JS frameworks, CMS, analytics pixels, CDN, hosting provider, payment processors, chat widgets, A/B-testing tools, marketing-automation platforms — structured per-category JSON. Wappalyzer-class detection without the browser-extension juggling.

Built for teams that need tech-stack data as a dataset: B2B sales enrichment, competitive-intel audits, partner-ecosystem mapping, or security-attack-surface audits of a vendor list.

Who uses this

  • Sales teams filtering B2B lead lists — "show me all prospects using Shopify and Segment" — to pitch compatible tools.
  • Competitive-intel teams auditing competitor tech choices across their target market.
  • Partner / BD teams at SaaS companies finding every site using a specific integration they support.
  • Security teams inventorying vendor/3rd-party scripts loaded on partner sites.
  • Market researchers quantifying adoption of a technology category across a sector.

What you get per URL

FieldTypeExample
urlstringhttps://stripe.com
final_urlstring(after redirects)
status_codenumber200
server_headerstringcloudflare
cmsarray[{name:"WordPress", version:"6.4", confidence:1.0}]
js_frameworksarray[{name:"React", version:"18.2", confidence:1.0}]
css_frameworksarray[{name:"Tailwind CSS", version:"3.4"}]
analyticsarray[{name:"Google Analytics", tag:"GA4", id:"G-XXXX"}]
tag_managersarray[{name:"Google Tag Manager", id:"GTM-XXXX"}]
cdnarray[{name:"Cloudflare"}]
hostingarray[{name:"Vercel"}] or [{name:"AWS EC2"}]
payment_processorsarray[{name:"Stripe"}]
ecommerce_platformarray[{name:"Shopify"}]
marketing_automationarray[{name:"HubSpot"}, {name:"Klaviyo"}]
chat_widgetsarray[{name:"Intercom"}]
ab_testingarray[{name:"Optimizely"}]
cookie_consentarray[{name:"OneTrust"}]
ssl_issuerstring"Amazon RSA 2048 M03"
tech_total_detectednumber18
page_size_kbnumber187
third_party_scriptsarraylist of external script domains
scanned_atstringISO timestamp

Input

{
"urls": [
"https://stripe.com",
"https://shopify.com",
"https://notion.so"
],
"includeCategories": ["cms","js_frameworks","analytics","payment_processors","marketing_automation"],
"followRedirects": true,
"renderJs": false,
"timeoutMs": 15000
}
  • urls — list to scan. Bulk tested up to 500 URLs.
  • includeCategories — subset to return. Omit for all.
  • renderJs — set true for SPA-heavy sites where detection requires post-JS rendering (slower, ~3x cost).
  • followRedirects — resolve through to final URL.

Python usage example

from apify_client import ApifyClient
from collections import Counter
client = ApifyClient("YOUR_APIFY_TOKEN")
run = client.actor("knotless_cadence/website-tech-stack-detector").call(
run_input={
"urls": [
"https://stripe.com",
"https://shopify.com",
"https://notion.so",
# ... 500 B2B prospect URLs
],
"includeCategories": ["cms","js_frameworks","analytics","payment_processors"],
}
)
records = list(client.dataset(run["defaultDatasetId"]).iterate_items())
# Which analytics platforms dominate in this prospect list?
analytics = Counter()
for r in records:
for a in r.get("analytics", []):
analytics[a["name"]] += 1
print("Analytics platforms across prospects:")
for name, count in analytics.most_common():
pct = count / len(records) * 100
print(f" {count:4d} ({pct:5.1f}%) {name}")
# Find prospects using competitor's tech
target_prospects = [
r for r in records
if any(cms["name"] == "Shopify" for cms in r.get("ecommerce_platform", []))
]
print(f"\n{len(target_prospects)} prospects on Shopify — pitch relevant tools to them")

B2B-sales-enrichment pattern

Typical workflow: (1) pull prospect list from CRM → (2) scan via this actor → (3) filter by tech they use → (4) personalize outbound by tech context.

Example: If you sell a Shopify-integrated email tool, filter the dataset for ecommerce_platform: Shopify AND absence of competing marketing_automation: Klaviyo.

Common questions

Q: How does this compare to Wappalyzer / BuiltWith? Wappalyzer is browser-extension (one-site-at-a-time). BuiltWith has a paid API — powerful, but $295+/month for meaningful volume. This actor uses Wappalyzer-class fingerprints at dataset scale, priced per-run via Apify compute.

Q: Does it detect things behind JS rendering? By default, no (fast static analysis). Set renderJs: true to execute JS — catches SPAs, React/Vue/Angular apps more reliably. ~3x cost, ~5x slower per URL.

Q: How current are the fingerprint rules? Fingerprint database updated weekly. New tools added regularly (AI-tool adoption is tracked aggressively — LLM chat widgets, RAG-provider scripts, AI SDKs).

Q: False-positive rate? Detection comes with confidence scores (0-1). Confidence ≥ 0.8 typically indicates reliable match. Scores below 0.5 indicate a weak pattern match (e.g. a generic CSS class name) — filter them out client-side if precision matters.

Q: Can I detect competitors' own internal tools? Sometimes — internal tools that embed public SDK snippets (Segment, Amplitude, Datadog RUM) are detectable. Fully custom in-house stacks aren't.

Q: Cost per run? Apify compute-unit pricing. A 100-URL scan (static) typically costs $0.02. With renderJs: true, $0.05-$0.10.

Export integrations

  • CSV / JSON / Excel / HTML (native Apify dataset download)
  • Google Sheets (via Apify integration)
  • Webhooks on each run
  • S3 / GCS direct sync
  • Zapier / Make.com / n8n
SourceActorData
Tech-Stack Detector (this)Tech fingerprintsSite tech stack
PageSpeed InsightsCore Web VitalsPerformance
Website UptimeHTTP status, latencyAvailability
SSL Certificate CheckerTLS postureSecurity
IP GeolocationIP → locationGeo context

All free on Apify Store.

About the maintainer

Maintained by an active Apify developer (78 public actors covering scraping, MCP servers, and B2B-sales enrichment tooling). Articles on Hashnode, Telegraph, Write.as, and Mataroa covering tech-stack fingerprinting, B2B enrichment pipelines, and competitive-intelligence data architecture.

Need a custom B2B-enrichment / competitive-intel pipeline (tech-stack-based prospect segmentation, competitor rollout tracking, ecosystem-partner discovery)? Email spinov001@gmail.com or message t.me/scraping_ai.

Disclaimer

Detects technologies via publicly visible page signals (HTML, HTTP headers, JS). Respects standard rate limits. Not affiliated with Wappalyzer or BuiltWith.