Tech Stack Detector: Wappalyzer & BuiltWith Alternative
Pricing
from $1.26 / 1,000 domain analyzeds
Tech Stack Detector: Wappalyzer & BuiltWith Alternative
Find the CMS, ecommerce platform, analytics, frameworks, CDN and hosting of any website. A Wappalyzer alternative and BuiltWith alternative with 7,600+ technologies. Bulk domain lists, $1.80 per 1,000 domains.
Pricing
from $1.26 / 1,000 domain analyzeds
Rating
0.0
(0)
Developer
Rod Services
Maintained by CommunityActor stats
0
Bookmarked
1
Total users
0
Monthly active users
13 days ago
Last modified
Categories
Share
Tech Stack Detector is a low-cost Wappalyzer alternative and BuiltWith alternative: paste a list of domains and see which CMS, ecommerce platform, analytics, JavaScript frameworks, CDN and hosting each website uses. It checks 7,600+ technologies live, returns one clean JSON or CSV row per domain, and costs $1.80 per 1,000 domains. No browser, no API key, no account with any other service.
What you get
- One row per website with every detected technology, its category, its version when the site exposes it, and a confidence score.
- 7,600+ technologies in 100+ categories: WordPress, Shopify, WooCommerce, Magento, Wix, Webflow, HubSpot, Google Analytics, Google Tag Manager, Meta Pixel, Hotjar, React, Next.js, Vue, Cloudflare, Vercel, AWS, Nginx, Stripe, Intercom and many more.
- Bulk lists. Thousands of domains in one run, 10 to 50 in parallel.
- A spreadsheet view with one row per technology, ready for CSV, Excel or Google Sheets.
- Free failures. Dead domains, timeouts and invalid URLs are listed with the reason and are not charged.
Typical uses:
- Lead generation. Find the Shopify, WooCommerce or HubSpot sites in a list of companies.
- Lead enrichment. Add CMS, ecommerce platform and hosting to CRM records.
- Competitor research. See which analytics, A/B testing, chat and CDN tools competitors use.
- Market research. Count platform share across thousands of domains.
- IT and security checks. Spot exposed server, CMS or library versions.
Quick start
- Press Try for free or Start. The prefilled example checks wordpress.org, shopify.com and github.com in a few seconds.
- Replace the list in Websites or domains with your own domains, one per line.
example.comis fine. - Optional: set Only these categories, for example
CMS,Ecommerce,Analytics. - Open the Output tab. Download JSON, CSV, Excel or HTML, or read the results by API.
How to find out what technology a website uses
You have three options:
- Look at the page source by hand. Open the site, press
Ctrl+Uand search for hints such aswp-content(WordPress),cdn.shopify.com(Shopify),gtag((Google Analytics) or__NEXT_DATA__(Next.js). Check the response headers in the browser developer tools forserver,x-powered-byand CDN headers. This works for one site and takes a few minutes. - Use a browser extension. Good for the site you are looking at, but not for a list of 500 domains.
- Run this Actor on a list. It downloads each page once and matches headers, cookies, meta tags, script and link URLs, inline HTML and known JavaScript global names against an open fingerprint database. It also applies rules such as "WooCommerce implies WordPress". You get the answer for every domain in one table.
Input example
Only urls is needed. Everything else has a sensible default.
{"urls": ["wordpress.org", "https://www.shopify.com", "github.com"],"includeCategories": ["CMS", "Ecommerce", "Analytics", "CDN"],"maxConcurrency": 10,"timeoutSecs": 15}
| Field | Default | What it does |
|---|---|---|
urls | Domains or URLs, one per line. Duplicates are removed. Redirects are followed. | |
includeCategories | [] | Keep only these categories, for example CMS or Ecommerce. Case-insensitive. |
includeRawSignals | false | Add headers, cookie names, meta tags, script and link URLs, and the evidence for each match. |
detectJsGlobals | true | Match known JavaScript global names in inline scripts. These hits get 50% confidence. |
maxConcurrency | 10 | Websites fetched in parallel, 1 to 50. |
timeoutSecs | 15 | Timeout per website, 3 to 60 seconds. |
proxyConfiguration | off | Optional. Apify datacenter proxy or your own proxy URLs. Residential proxies are not supported. |
Output sample
One item per domain. The Tech stack per domain view shows technologyDetails. The One row per technology view flattens the list for spreadsheets.
{"url": "wordpress.org","finalUrl": "https://wordpress.org/","statusCode": 200,"title": "Blog Tool, Publishing Platform, and CMS – WordPress.org","technologies": [{"name": "WordPress","categories": ["CMS", "Blogs"],"version": "7.2","confidence": 100,"website": "https://wordpress.org"},{"name": "Gutenberg","categories": ["WordPress plugins", "Editors"],"version": "24.1.0","confidence": 100,"website": "https://github.com/WordPress/gutenberg"},{"name": "Nginx","categories": ["Web servers", "Reverse proxies"],"version": null,"confidence": 100,"website": "http://nginx.org/en"}],"technologyNames": ["WordPress", "Gutenberg", "Nginx"],"technologyDetails": ["WordPress 7.2", "Gutenberg 24.1.0", "Nginx"],"technologyCount": 3,"categoriesSummary": {"CMS": ["WordPress"],"Blogs": ["WordPress"],"WordPress plugins": ["Gutenberg"],"Editors": ["Gutenberg"],"Web servers": ["Nginx"],"Reverse proxies": ["Nginx"]},"detectedAt": "2026-10-05T10:11:46.836Z","error": null}
The sample is shortened. A real wordpress.org result lists about 13 technologies.
| Field | Meaning |
|---|---|
url | Domain or URL as you entered it |
finalUrl | URL after redirects |
statusCode | HTTP status of the final response |
title | Page title |
technologies[] | Name, categories, version (or null), confidence 1 to 100, vendor website |
technologyNames | Names only, handy for filters |
technologyDetails | Name version (confidence%), the version and confidence only when they help |
categoriesSummary | Category to technology names |
error | Why the site could not be checked, or null |
errorCode, howToFix | Only on help rows for input problems, such as an invalid URL |
rawSignals | Only with includeRawSignals |
Example: filter Shopify stores from a domain list
- Paste your company domains into
urls, for example 2,000 domains from a CRM export. - Set
includeCategoriesto["Ecommerce"]. Each row then lists only the shop platform. - Run it. In the Output tab, export CSV and filter
technologyNamesforShopify, or read only the fields you need by API:
https://api.apify.com/v2/datasets/<datasetId>/items?format=csv&fields=url,finalUrl,technologyNames
The same works for WordPress (CMS), HubSpot (Marketing automation), Stripe (Payment processors) or any other technology. 2,000 domains cost about $3.60.
Wappalyzer vs BuiltWith vs this Actor
An honest comparison. Each tool is good at something different.
| Wappalyzer | BuiltWith | This Actor | |
|---|---|---|---|
| How it detects | Live check, browser extension | Large historical crawl index | Live check of the page you give it |
| Bulk lists | Paid plans and API | Paid plans and API | Yes, pay per domain |
| "All sites using X" lists | Paid feature | Its main strength | No. You bring the domain list |
| Technology history | Not its focus | Yes, years of history | No, only today's state |
| JavaScript execution | Yes in the browser extension | Not relevant, index based | No. Inline scripts are scanned instead |
| Fingerprint data | Proprietary since 2023 | Proprietary | Open, community maintained (GPL-3.0) |
| Price model | Subscription or credits | Subscription | $1.80 per 1,000 domains, no subscription |
Choose BuiltWith when you need lists of every site using a technology or years of history. Choose this Actor when you already have the domains and want today's tech stack cheaply, in bulk, inside Apify with its API, schedules and integrations.
"Wappalyzer" and "BuiltWith" are trademarks of their owners. This Actor is not affiliated with, endorsed by or connected to either of them.
Pricing
Pay per result. A domain is charged only when its page was fetched and analysed. Failed domains are free.
| Apify plan | Price per domain | Per 1,000 domains |
|---|---|---|
| Free | $0.0018 | $1.80 |
| Bronze | $0.00162 | $1.62 |
| Silver | $0.00144 | $1.44 |
| Gold | $0.00126 | $1.26 |
Plus $0.001 per run for the start. Apify's $5 free monthly credit covers about 2,700 domains. You can cap the cost of any run with Maximum cost per run. The run then stops cleanly when the cap is reached.
FAQ
How do I find out what CMS a website uses?
Put the domain in urls and set includeCategories to ["CMS"]. The row shows the CMS, for example WordPress, Drupal, Joomla, Wix, Webflow or HubSpot CMS Hub, and the version when the site shows it.
How do I check many websites at once?
Paste the whole list into urls, one domain per line. Thousands are fine. Raise maxConcurrency to 20 or 30 for big lists.
How accurate is it?
100% confidence means a clear fingerprint, such as a generator meta tag or a cdn.shopify.com script. Weaker evidence gets less:
- 50%: a JavaScript global name seen in an inline script, because no browser runs the code.
- 50%: a domain seen only in the
Content-Security-Policyheader. A CSP allows a service, it does not prove the page uses it. - 50%: a single generic hint, such as a link to
/cart. Two hints give 100%. - Implied technologies, for example PHP from WordPress, take the confidence of the technology that implies them.
Filter on confidence >= 100 if you only want strong matches.
What can it not detect?
Technologies that only appear after JavaScript runs in a browser, on other pages than the one you give it, or only in DNS and TLS records. Versions show only when the site exposes them. Sites behind a bot challenge (Cloudflare, DataDome) still show their CDN and WAF, but not the CMS.
Can I use it from an AI agent or my own app?
Yes. Call it through the Apify MCP server or the Apify API. For a few domains, the run-sync-get-dataset-items API endpoint returns the rows in one HTTP call.
Which proxies can I use?
No proxy is needed for most sites. You can use Apify datacenter proxy or your own proxy URLs. Residential and SERP proxies are not supported, and a run that asks for them stops at once with a free help row.
Is it legal?
It fetches one public page per domain, like a browser, and reads only public technical signals. It collects no personal data. Check a site's terms if you plan heavy use.
Is the source code open?
Yes. The Actor and its fingerprint data are licensed under GPL-3.0 and the full source is public on the Source code tab. The fingerprints are a filtered snapshot of the community database enthec/webappanalyzer, with a few local false-positive fixes listed in src/overrides.ts.
Something is missing or wrong
Open an issue on the Issues tab with the domain and what you expected. Missing technologies and false positives get fixed.
Related Actors
More tools from the same developer, built with the same pricing and output style.
| Actor | What it does |
|---|---|
| Website Content Crawler to Markdown for RAG & LLMs | Crawl whole websites into clean Markdown, RAG chunks and llms.txt |
| PDF to Markdown & Text Extractor with OCR | PDF, Word, Excel and PowerPoint files to Markdown and text, with OCR |
| SEO Audit Tool: Site Crawler, Broken Links & Score | Crawl a site and find broken links and on-page SEO issues |
| PageSpeed Insights & Lighthouse Bulk Checker | Lighthouse scores and Core Web Vitals for many URLs at once |
| Bulk Domain Lookup: DNS, WHOIS, SPF, DMARC & SSL | DNS, email security and SSL checks for a list of domains |
| Speech to Text: Audio, Video & Podcast Transcriber | Whisper transcripts, SRT and VTT subtitles from audio, video and podcast feeds |
| Email Validator & Verifier: Bulk MX & Disposable Check | Check email lists for syntax, MX records and disposable domains |
| Website Contact Scraper: Emails, Phones & Social Links | Find emails, phone numbers and social profiles on company websites |
| VIES VAT Checker & EU Company Registry Lookup | Validate EU VAT numbers and look up company registry data |
| Companies House Scraper: UK Company Search & Officers | Search UK companies and get profiles and officers |
| EU TED Tenders Scraper & Alerts: Public Procurement | EU public tenders and contract awards from TED, with daily alerts |
| Greenhouse, Lever & Ashby Job Scraper: 7 ATS in One Feed | Job postings from 7 applicant tracking systems in one schema |
| GitHub Scraper: Repo Stats, Stars, Trending & Search | Repository stats, stars, trending repos and search results |