Website Tech Stack & Company Domain Profiler
Pricing
from $4.00 / 1,000 domain profileds
Website Tech Stack & Company Domain Profiler
Bulk-profile company domains: website tech stack (CMS, frameworks, analytics, ads, payments, hosting/CDN), email provider, SPF senders, SaaS tools from DNS records, DMARC, TLS expiry, logo, socials and key pages. Company data only, no personal data, robots.txt respected.
Pricing
from $4.00 / 1,000 domain profileds
Rating
0.0
(0)
Developer
Blackcat Forge
Maintained by CommunityActor stats
0
Bookmarked
3
Total users
2
Monthly active users
20 days ago
Last modified
Categories
Share
By Blackcat Forge
Paste a list of company domains, get back one clean row per company: what their website runs on, who hosts their email, which email/marketing tools send for them, which SaaS tools they've verified in DNS, their DMARC posture, TLS expiry, logo, official social pages and key pages (pricing, careers, docs, blog, contact).
Built for lead enrichment, sales prospecting by technology ("all Shopify stores using Klaviyo"), competitor research, M&A/VC screening, and security/email-deliverability audits.
What you get per domain
| Group | Fields |
|---|---|
| Website tech | ~130 technologies across CMS, e-commerce, JS frameworks, analytics, tag managers, ads pixels, live chat, payments, consent, A/B testing, hosting/CDN, web servers, languages. Each with category, version (when exposed), confidence, and evidence. |
| Email & DNS | Email provider (Google Workspace, Microsoft 365, Zoho, ...), SPF sending services (SendGrid, Mailchimp, HubSpot, Salesforce, ...), DMARC policy, DNS provider, CAA issuers |
| SaaS signals | Tools verified via public DNS TXT records (Atlassian, Stripe, OpenAI, Anthropic, DocuSign, Zoom, Meta Business, Apple, ...) |
| TLS | Issuer, protocol, expiry date, days until expiry |
| Company identity | Title, description, language, site name, canonical URL, logo, favicon, OG image, official company social pages, links to pricing/careers/docs/blog/contact |
Input
{ "domains": ["stripe.com", "https://www.shopify.com/pricing", "wordpress.org"], "includeDns": true, "includeTls": true, "maxConcurrency": 10 }
URLs are fine (they're normalised to the domain), and duplicates are removed for you.
Output example (trimmed)
{"domain": "vercel.com", "status": "ok", "finalUrl": "https://vercel.com/","technologyNames": ["Vercel", "Next.js", "React", "HSTS"], "hosting": "Vercel","dns": { "emailProviders": ["Google Workspace"], "spf": { "sendingServices": ["Amazon SES", "Marketo", "Postmark", "Salesforce", "SendGrid"] },"dmarc": { "policy": "quarantine" }, "saasVerifications": ["Ahrefs", "DocuSign", "OpenAI", "Stripe", "Zoom"] },"tls": { "issuer": "Let's Encrypt", "daysUntilExpiry": 81, "protocol": "TLSv1.3" },"site": { "title": "...", "socialProfiles": { "linkedin": "https://linkedin.com/company/vercel" }, "pages": { "pricing": "..." } }}
Each item gets a status: ok, robots-disallowed, unreachable, no-dns, or invalid-input.
Pricing (pay per event)
| Event | Price |
|---|---|
Domain profiled (status ok) | $0.004 ($4 per 1,000) |
| Domain unreachable / no DNS / robots-disallowed (DNS + TLS still checked) | $0.0005 |
| Invalid input (not a domain) | free |
| Actor start (Apify standard) | $0.00005 per GB of run memory ($0.00005 at the default 1 GB) |
Set Max cost per run and the Actor stops cleanly when it reaches it, so you never pay more than your limit.
Responsible by design
- Company-level public data only. No personal names, emails, or phone numbers are extracted. Personal social profiles (e.g. LinkedIn
/in/, Facebookprofile.php) are ignored, and raw DMARC records (which contain report mailboxes) aren't republished. - One page per site. Only
robots.txtand the homepage are requested, plus public DNS and a TLS handshake. No crawling, no logins, no CAPTCHAs, no proxies to dodge blocks. - robots.txt respected. If a site disallows us, we don't fetch the homepage, and you're charged only the small failure fee.
- Honest user agent:
DomainProfiler/1.0with a link back to this page, so site owners can see who we are.
Limitations
- Detection is fingerprint-based on the homepage HTML/headers. Tools loaded only on inner pages, or injected only by client-side JS after load, may be missed. Every hit includes
evidenceandconfidence. - Some sites block non-browser clients. Those come back as
unreachableorrobots-disallowed, but DNS intelligence still works.
Local development
pip install -r requirements.txtpython -m pytest testsapify run # or: python -m my_actor (reads storage/key_value_stores/default/INPUT.json)