Website Technology Lookup – CMS, Hosting & Tech Stack Data
Pricing
$1.00 / 1,000 technology lookup results
Website Technology Lookup – CMS, Hosting & Tech Stack Data
Look up published CMS, hosting and tech-stack data for any domain. Get categorized technologies in bulk for SEO research, competitor analysis and lead enrichment.
Pricing
$1.00 / 1,000 technology lookup results
Rating
0.0
(0)
Developer
DataScraperES
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
8 hours ago
Last modified
Categories
Share
Website Technology Lookup
Look up published CMS, hosting, web server, analytics, frontend, and other website technology data for one or many domains. The Actor returns one Dataset item per unique domain, with technologies grouped by category and an explicit status for every lookup.
This is an independent Actor that reads publicly available website technology information. It is not affiliated with, endorsed by, or sponsored by W3Techs.
At a glance
- Look up up to 10,000 domains in one run.
- Accept plain domains and website URLs; the hostname is normalized automatically.
- Receive published CMS, hosting, web server, analytics, frontend, security, and other technologies when available.
- Keep current detections separate from technologies marked as recently used.
- Get one Dataset row per unique submitted domain, including unavailable and error outcomes.
- Export results from Apify as JSON, CSV, Excel, JSONL, and other available formats.
- Pay only for domains whose lookup completes successfully.
No source account, key, or technical settings are required. The Actor manages pacing, retries, and large batches automatically.
Common use cases
- Build categorized technology profiles for competitor domains.
- Research CMS, hosting, web server, or frontend adoption.
- Enrich domain lists for SEO, sales, market research, or lead qualification.
- Separate currently detected technologies from recent historical signals.
- Save recurring technology snapshots with an Apify Task and Schedule.
How to use the Actor
- Open the Input tab.
- Add one or more values under Domains.
- Click Start.
- Open the Dataset tab when the run finishes.
- Filter by
statusor export the Dataset in the format you need.
For a first check, submit one public domain such as example.com.
Input
The public input has one field.
| Field | Type | Required | Description |
|---|---|---|---|
domains | string[] | Yes | One or more domains or website URLs. Up to 10,000 values per run. |
Accepted values
example.comhttps://www.example.org/https://shop.example.net/products/chair
Website URLs are accepted and reduced to their hostname. Whitespace, letter case, a trailing dot, and repeated equivalent domains are normalized before processing. For example, https://WWW.Example.com/ and example.com are treated as the same domain and processed once.
Input example
{"domains": ["example.com","https://www.example.org/","shop.example.net"]}
Understanding the Dataset
The default Dataset contains one item for every unique valid domain. A result is kept even when technology data is not available, so you can see what happened to every submitted domain.
Successful result example
The following is an abbreviated real result from a successful lookup of github.com. The run returned more technologies; two are shown here to keep the example readable.
{"domain": "github.com","status": "ok","title": "Github.com","websiteBackground": null,"technologies": [{"category": "Content Management System","name": "GitHub Pages","version": null,"description": "GitHub Pages is a web page creation and hosting service by GitHub.","hints": [],"detectionStatus": "current","isCurrentlyDetected": true},{"category": "Server-side Programming Language","name": "JavaScript","version": null,"description": "JavaScript is a lightweight, object-oriented, cross-platform scripting language. This includes TypeScript.","hints": ["used on a subdomain"],"detectionStatus": "current","isCurrentlyDetected": true}],"httpStatusCode": 200,"attempts": 1,"error": null}
Technology availability, versions, descriptions, hints, and site metadata are snapshots. A later run can return different public information for the same domain.
Top-level fields
| Field | Description |
|---|---|
domain | Normalized hostname that was looked up. |
status | Final lookup outcome. See Result statuses. |
title | Published site title when available. Otherwise null. |
websiteBackground | Published site background details when available. Otherwise null. |
technologies | Technology records grouped by category. It can be empty. |
httpStatusCode | Response status when one was received. |
attempts | Number of lookup attempts used for the domain. |
error | Explanation for a non-ok result. Otherwise null. |
Technology fields
| Field | Description |
|---|---|
category | Technology category, such as CMS, web server, analytics, or frontend framework. |
name | Published technology name. |
version | Published version when available. Otherwise null. |
description | Published technology description when available. Otherwise null. |
hints | Additional published notes related to the technology. |
detectionStatus | current or recently_used. |
isCurrentlyDetected | true for a current detection and false for a recently used technology. |
Current versus recently used technologies
Some technology records are shown as no longer current by the public source. The Actor preserves that distinction instead of treating historical evidence as an active detection.
detectionStatus | isCurrentlyDetected | Meaning |
|---|---|---|
current | true | The technology is currently listed as detected. |
recently_used | false | The technology is shown as used until recently. Treat it as recent historical evidence, not a current confirmed detection. |
Result statuses
| Status | Meaning | Recommended action |
|---|---|---|
ok | The domain lookup completed and its published technology data was returned. | Use the technology and site fields. |
not_found | No Site Info page was returned for the domain. | Check the domain spelling and try again later if appropriate. |
not_crawled | Public technology data is not yet available for the domain. | Try again after the public source has had time to crawl the site. |
error | A temporary access, network, or response-validation problem prevented completion. | Review error and retry later when appropriate. |
Pricing
The price is $1 per 1,000 successfully completed domain lookups.
| Completed lookups | Price |
|---|---|
| 1 | $0.001 |
| 100 | $0.10 |
| 1,000 | $1.00 |
- One domain with
status: "ok"is one billable result. not_found,not_crawled, anderrorrows are not charged.- Duplicate normalized domains are processed once and cannot create duplicate result charges.
- There is no separate start charge and no platform-usage charge passed to the user.
- For a large run, set a maximum cost in Apify before starting if you want an additional spending boundary.
The price shown on the Actor page is authoritative.
Try it with Apify's free plan
Apify's Free plan includes $5 in monthly prepaid usage for the Apify Store or your own Actors, and no credit card is required to start. Use one or two domains first to test this Actor while the monthly credit is available. It is not unlimited free usage, and unused credits expire at the end of the billing cycle. See the current Apify pricing before a larger run.
Limits and expected behavior
- Submit up to 10,000 domain values in one run.
- Equivalent domains are normalized and processed once.
- A large run is processed progressively; you do not need to choose technical runtime settings.
- Results are snapshots of publicly available technology information. A later run may differ as websites and the public source change.
- A domain can have no listed technologies even when the lookup itself completes.
- The Actor does not request a crawl or change the target website.
- The Dataset intentionally contains no links back to the source pages.
Frequently asked questions
Can I submit website URLs instead of domains?
Yes. Add a website URL and the Actor uses its hostname. For example, https://www.example.org/products is processed as example.org.
Are duplicate domains processed twice?
No. Equivalent input values are normalized before processing. Only one Dataset item and, when successful, one result charge are created for that domain.
Why is a technology marked as recently used?
The public source indicates that it was used until recently. It may still be useful for historical research, but it should not be interpreted as a current confirmed detection.
Why does a domain have no technologies or return not_crawled?
Technology availability depends on the public data available for that domain. The source may not have crawled the site yet, may have no listed technologies, or may update its coverage over time.
Can I process 100, 1,000, 5,000, or 10,000 domains?
Yes. The Actor accepts up to 10,000 values per run and manages the batch size automatically. Large runs take longer because each domain is handled at a responsible pace.
Can I run recurring lookups?
Yes. Save your domain list as an Apify Task and attach an Apify Schedule to create periodic public technology snapshots.
How do I export the results?
Open the run's Dataset and use Apify's export options to download JSON, CSV, Excel, JSONL, or another available format.
Responsible use
Use the Actor only for lawful purposes and in accordance with the public source's terms, applicable laws, privacy obligations, and third-party rights. Do not use results for unauthorized access, deception, harassment, discrimination, or other unlawful activity.