Company Enrichment API – Domain to Tech & Contacts avatar

Company Enrichment API – Domain to Tech & Contacts

Pricing

Pay per usage

Go to Apify Store
Company Enrichment API – Domain to Tech & Contacts

Company Enrichment API – Domain to Tech & Contacts

Turn a domain into a full company profile: tech stack, industry, size, social links & decision-maker emails — each with a confidence score and live MX verification. Read from the company's real site, not a stale database. Pay-per-result, no API key. A Clearbit/Apollo/Clay alternative.

Pricing

Pay per usage

Rating

0.0

(0)

Developer

Renzo Madueno

Renzo Madueno

Maintained by Community

Actor stats

0

Bookmarked

7

Total users

6

Monthly active users

17 hours ago

Last modified

Share

Company Enrichment API — Domain to Tech Stack, Firmographics & Verified Emails

Turn any company domain into a complete, structured company profile — tech stack, industry, size, decision-maker emails, and more — with a confidence score and live MX verification on every email. No API key, pay only for results.

Unlike database tools (Clearbit, Apollo, ZoomInfo) that serve cached, decaying records, this Actor enriches in real time from the company's own website — so the data is as fresh as the site itself.

Using it and it works? Leave a 30-second review — and tell us what field to add next via the Issues tab. It's the single biggest thing that helps other teams find this.

What you get

One clean JSON/CSV row per domain:

FieldExampleWhere it comes from
companyName, description"Stripe", "Online payment infrastructure…"Schema.org / OpenGraph / page
industry + naicsCode + sicCode"Financial Services & Fintech" · 522320 · 6199Classified from site content
companyTypePrivate / Nonprofit / Government / EducationLegal suffix, TLD, page copy
employeesEstimate{ band: "11-50", source: "site-copy" }JSON-LD → "team of N" copy → named team count
revenueBand{ estimate: "$1M-$10M", confidence: "low" }Employees × industry (estimated, labeled)
foundedYear"2014"Schema → "founded in YYYY" → © range
country, address"United States", "354 Oyster Point Blvd…"Schema PostalAddress / TLD
logohttps://…Schema logo → og:image → favicon
technographics{ analytics:[GA4], crm:[HubSpot], ecommerce:[Shopify] }Detected & categorized
linkedinUrl, crunchbaseUrl, socialLinkscompany LinkedIn/Crunchbase pagesProfile links + JSON-LD sameAs
emails[]{ email, type, onDomain, freeProvider, confidence }mailto + page, with confidence
emailPattern"first.last"Inferred from ≥2 verified emails
decisionMakers[]{ name, title, email, emailInferred, confidence }Team/about pages
confidenceScore0–1Overall signal coverage
domainHasMx + mxProvidertrue · "Google Workspace"Live DNS MX lookup

Why you can trust the data

The B2B-data market is rated down on one thing: accuracy. This Actor is built to win on exactly that.

  • Live crawl, not a stale database. Every field is read from the company's own site at run time — no cached records decaying ~2% per month.
  • A confidence score on every email and decision-maker (0–1). You see how sure we are, per record — not a flat "verified" badge.
  • Live MX verification. Each domain's mail server is resolved and classified (mxProvider), so you know the email infrastructure is real and deliverable.
  • Transparent email-pattern inference. A company email format (e.g. first.last@) is only inferred when ≥2 real emails confirm it — never from a single coincidence — and inferred emails are explicitly flagged emailInferred: true.
  • Honest provenance. Estimated fields (employees, revenue) ship with their source/basis and confidence, and return null instead of a guess when the signal isn't there.
  • You only pay for real results. Records are charged only above your minConfidence threshold and only when they carry substantive data — we don't bill you for guesses.

How do I enrich a domain?

  1. Add domains (or full URLs) — one company per line.
  2. Optionally set maxPagesPerDomain (how deep to crawl) and minConfidence (the bar to charge).
  3. Run it — one structured row per company, exportable to JSON, CSV, Excel, or your CRM.
{ "domains": ["stripe.com", "notion.so"], "maxPagesPerDomain": 5, "minConfidence": 0.5 }

Output example

{
"domain": "stripe.com",
"companyName": "Stripe",
"industry": "Financial Services & Fintech",
"naicsCode": "522320",
"technographics": { "Frontend": ["Next.js"], "Payments": ["Stripe"] },
"linkedinUrl": "https://www.linkedin.com/company/stripe/",
"emailPattern": "first.last",
"emails": [{ "email": "press@stripe.com", "type": "role", "onDomain": true, "confidence": 0.7 }],
"decisionMakers": [{ "name": "Jane Smith", "title": "VP Sales", "email": "jane.smith@stripe.com", "emailInferred": false, "confidence": 0.82 }],
"domainHasMx": true,
"mxProvider": "Google Workspace",
"confidenceScore": 0.85
}

Use cases

  • Outbound / SDR prospecting — turn a domain into the decision-maker and their email.
  • CRM & lead-list enrichment — append tech stack, firmographics, and NAICS to your records.
  • ICP / TAM building — filter prospects by size, industry, country, or technographics ("companies on Shopify + Klaviyo").
  • Competitive & technographic intel — see exactly what tools a company runs.
  • Investor / recruiter research — company size, founding year, and contacts at a glance.

Pricing

Pay-per-result — no subscription, no seat license:

EventPrice
Actor start$0.01
Enriched company (above your confidence threshold)$0.02

You only pay for substantive records above minConfidence. A run of 1,000 domains that resolves 700 substantive profiles costs about $0.01 + 700 × $0.02 ≈ $14 — versus a per-seat platform license.

Company Enrichment vs the alternatives

This ActorClearbit / ApolloGeneric contact scraper
Live crawl (not stale DB)❌ cached
Confidence score per emailpartial
Live MX verificationpartial
Tech stack + categorized
NAICS / SIC codes
No API key / no seat
Pay per result❌ subscriptionvaries

FAQ

How accurate are the emails? Every email carries a 0–1 confidence score and an onDomain flag, and the domain's MX is verified live. Inferred emails (from the company pattern) are flagged emailInferred: true so you always know what's confirmed vs. constructed.

Do I need an API key? No. It runs entirely on Apify and exports anywhere.

Why is a field null? Because the signal wasn't on the site. We return null rather than guess — that's the point.

Is this GDPR-compliant to use? It reads only publicly published business information from a company's own website. You are responsible for lawful use under your jurisdiction.

Other Actors by this author

Need finance, app, or research data too? See my other Actors — Yahoo Finance, SEC EDGAR, App Store & Google Play, and Deep Research MCP.


Built by Renzo Madueño. Found a bug or want a field added? Open an Issue — I read and respond to every one.