← Catalog · Actor

How to get the tech stack and email provider of any website

30 Oct 2026 · benthepythondev

Say you have a list of company domains and want to know what each one runs: which CMS or frontend framework, which payment provider, which support widget, which email provider. You could open view-source on every site, but that stops being practical after about ten domains. The Tech Stack Detector takes a list of URLs and returns one structured record per site.

It works over plain HTTP with no headless browser. It reads the response headers, HTML, scripts, stylesheets, meta tags and cookies and matches them against 100+ technology signatures in 15+ categories. With DNS turned on, it also reads the domain's MX, SPF and TXT records to find the email provider and the SaaS tools that have verified the domain.

What you get

Each row describes one website:

Real example output

Below is part of a real row for stripe.com, cut down to a few technologies:

{
  "url": "https://stripe.com",
  "domain": "stripe.com",
  "success": true,
  "technologies": [
    {"name": "React", "category": "Frontend Framework", "confidence": "high", "version": null},
    {"name": "Next.js", "category": "Frontend Framework", "confidence": "high", "version": null},
    {"name": "Intercom", "category": "Customer Support", "confidence": "high", "version": null},
    {"name": "Stripe", "category": "Payment", "confidence": "high", "version": null}
  ],
  "technology_count": 7,
  "categories": {
    "Frontend Framework": ["React", "Next.js"],
    "Customer Support": ["Intercom"],
    "Payment": ["Stripe", "PayPal"]
  },
  "server": "nginx",
  "title": "Stripe | Financial Infrastructure to Grow Your Revenue",
  "status_code": 200,
  "ssl": true,
  "analysis_time_ms": 167
}

That site took 167 ms to analyze, which is what you'd expect from a check that skips the browser.

What people use it for

The README lists these uses:

  1. Lead qualification. The email provider and connected SaaS tools come from DNS, and you won't see them on the page itself. A sales team can use them to tell whether a company runs Google Workspace or Microsoft 365, or uses tools like Atlassian or DocuSign, before reaching out.
  2. Prospect research in bulk. Give it a list of domains and get the CMS, frameworks, analytics, payment provider and CDN for each one, so nobody has to inspect every site by hand.
  3. Competitor tracking. Run the same list on a schedule and compare the rows over time to see when a competitor adds or drops a tool.

How to run it on Apify

Open the actor at apify.com/benthepythondev/tech-stack-detector and pass your input:

{
  "urls": ["https://stripe.com", "vercel.com", "shopify.com", "notion.so"],
  "maxUrls": 0,
  "includeDns": true
}

You can export results as JSON, CSV or Excel, run the actor on a schedule, call it through the Apify API, or connect it to Make, Zapier or n8n.

Pricing is per website row: $0.0025 on the Free plan and less on paid Apify plans, plus a $0.00005 start fee per run. From November 12, 2026 a row costs $0.002875 on the Free plan, with the same plan discounts. You aren't charged for a site that can't be reached. It gets no dataset row and is listed with its error and error_type in the run's FAILED_SITES key-value store record.

How to call it as an API on RapidAPI

If you'd rather call a plain REST endpoint with a RapidAPI key, the same detector is listed at rapidapi.com/benthepythondev0/api/tech-stack-detector3.

Honest limits

Affiliate if you still need an Apify account: apify.com/?fpr=qolupv. I may earn a commission; the price you pay does not change.