Company Enrichment + ICP Fit Scorer (AI Company Profiler)
Pricing
Pay per event
Company Enrichment + ICP Fit Scorer (AI Company Profiler)
AI company enrichment and lead qualification from any domain list: structured company profiles (industry, products, customers, size, contacts, tech stack, hiring) plus a 0 to 100 ICP fit score with cited reasons and a personalized opener. Pay per company, failed sites free.
Pricing
Pay per event
Rating
0.0
(0)
Developer
Landon Odom
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
18 hours ago
Last modified
Categories
Security
Limited permissionsShare
AI company enrichment and lead qualification from a plain list of domains. Turn company websites into clean, structured company profiles, then score every company against your ideal customer profile (ICP) with cited reasons, a personalized opening line and talking points. Built for lead qualification, account research, list enrichment, TAM analysis and CRM cleanup. Powered by Claude.
Paste domains in, get rows out. No API keys, no setup, no per-seat subscription: you pay $0.015 per company profiled, $0.010 more for an ICP score, and nothing for sites that fail.
Typical jobs it replaces: enriching a scraped lead list before outreach, qualifying inbound signups by company, researching 500 target accounts for a territory plan, checking which companies in a list use HubSpot or Salesforce, building a company research tool for an AI agent.
What you get for each company
Company profile
- Company name, tagline, 2 to 4 sentence description (factual, no marketing fluff)
- Industry, business model (B2B, B2C, marketplace...), company type (software, services, agency, manufacturer...)
- Products and services, target customers, notable customers named on the site
- Headquarters, other locations, estimated employee range, founding year
- Pricing model (tiers, quote-based, free plan), hiring signal from careers pages, recent news on the site
- Key people with titles (executives and founders named on the site)
- Likely buyer roles for this company (labeled as an estimate)
inferredFields: which values are estimates rather than facts stated on the site, so you always know what is sourced and what is judged- Business emails and phone numbers published on the site (role-based mailboxes only, never personal addresses)
- LinkedIn, X, Facebook, Instagram, YouTube, GitHub and Crunchbase links
- Tech signals detected in the site code (HubSpot, Salesforce, Intercom, Shopify, Webflow, Greenhouse and 40+ more)
- Any extra fields you ask for, in plain English
- Confidence score and the list of pages analyzed, so every claim can be checked
ICP fit (when you describe your ideal customer)
- Fit score from 0 to 100
- One-sentence verdict
- Up to three reasons for and three reasons against, each tied to evidence from the site
- Deal breaker flag
- A personalized opening line that references something real about the company
- Up to three talking points grounded in what the site says (a launch, a hiring push, a tool they use) that connect to what you sell
Why this instead of a generic enrichment API
- Reads the actual website. Enrichment databases go stale. This Actor fetches the homepage and the most informative internal pages (about, product, pricing, customers, careers, contact) every time you run it. When a homepage is JavaScript-rendered or has no usable navigation, it falls back to the sitemap and the standard company pages so you still get a full profile.
- Tells you what is stated and what is estimated. Every row carries
inferredFieldsand a confidence score. Nothing is invented; unknowns come back asUnknown,nullor empty. - Scores against your criteria, not a fixed taxonomy. Describe your ICP in a paragraph. Must-haves, nice-to-haves and deal breakers are applied strictly and every reason cites what was found.
- Custom fields. Add a line like
integrations: third-party tools the product integrates withand it comes back as a column. - Honest failures. Sites that are down, parked, blocked or JavaScript-only are returned with
status: failedand a reason. You are never charged for them. - Works with any language website. Output is in the language you choose.
Input
| Field | Description |
|---|---|
domains | One company website per line. Full URLs, bare domains and even email addresses are normalized to the site root. Duplicates are removed. Up to 10,000 per run. |
icp | Optional. Describe who you sell to. When present, every company gets a fit score. |
customFields | Optional. One per line as fieldName: what to look for. |
maxPagesPerDomain | Homepage plus the best internal pages. Default 5, max 12. |
model | fast (Claude Haiku) for volume, precise (Claude Sonnet) for nuanced ICPs or messy sites. |
language | Output language for free-text fields. Default English. |
maxConcurrency | Websites crawled in parallel. Default 10. |
proxyConfiguration | Rarely needed. Turn on Apify Proxy only if some sites block datacenter traffic. |
Example input:
{"domains": ["stripe.com", "notion.so", "basecamp.com"],"icp": "B2B SaaS companies with 20 to 500 employees in the US or Europe that sell to sales or marketing teams. Good signals: hiring in sales, using HubSpot or Salesforce, public pricing. Deal breakers: agencies, consultancies, no product.","customFields": "integrations: third-party tools the product integrates with\nfreeTrial: whether a free trial or free plan is offered","maxPagesPerDomain": 5,"model": "fast"}
Output
One dataset item per company. Example (shortened):
{"domain": "acme-robotics.com","status": "ok","companyName": "Acme Robotics","tagline": "Autonomous forklifts that pay for themselves in 9 months","description": "Acme Robotics builds self-driving forklifts and the fleet software that dispatches them. It sells robots-as-a-service to third-party logistics providers and manufacturers in North America, integrating with Manhattan and SAP warehouse systems.","industry": "Warehouse robotics","businessModel": "B2B","companyType": "Manufacturer","productsServices": ["AutoLift 2 autonomous forklift", "FleetOS dispatch software", "Safety analytics dashboard"],"targetCustomers": "Operations leaders at 3PLs and manufacturers running mid-size warehouses","notableCustomers": ["Zippy Logistics", "Norther Foods"],"headquarters": "Austin, Texas, United States","employeeRange": "51-200","foundedYear": 2016,"pricingModel": "Robots-as-a-service from $2,900 per forklift per month; enterprise quote-based","hiringSignal": "Hiring a mid-market Account Executive, a Field Service Engineer and a Senior Robotics Engineer","keyPeople": [{ "name": "Jane Doe", "role": "CEO" }, { "name": "Raj Patel", "role": "CTO" }],"buyerRoles": ["VP Operations", "Director of Warehouse Operations", "CFO"],"inferredFields": ["employeeRange", "buyerRoles"],"emails": ["sales@acme-robotics.com", "support@acme-robotics.com"],"phones": ["+1 (512) 555-0142"],"linkedin": "https://www.linkedin.com/company/acme-robotics","techSignals": ["HubSpot", "Intercom", "Webflow"],"custom": { "integrations": "Manhattan WMS, SAP EWM", "freeTrial": "No; demo request only" },"confidence": 0.86,"fitScore": 78,"fitSummary": "Strong fit: B2B product company in the target size band, hiring in sales and running HubSpot; outside the stated geography focus on software.","reasonsFor": ["Sells a product, not services, with public pricing", "Hiring an Account Executive now", "HubSpot detected on the site"],"reasonsAgainst": ["Hardware-led rather than pure SaaS"],"dealBreakerHit": false,"openingLine": "Your careers page shows a mid-market AE role opening in Austin alongside the FleetOS launch, which usually means pipeline is outgrowing the team.","talkingPoints": ["The FleetOS launch and the new AE role suggest outbound volume is about to rise", "HubSpot is already in place, so a native integration removes the usual objection", "Robots-as-a-service pricing means they sell on ROI, which matches a payback-period pitch"],"sourcePages": ["https://acme-robotics.com/", "https://acme-robotics.com/about", "https://acme-robotics.com/product", "https://acme-robotics.com/pricing", "https://acme-robotics.com/careers"],"pagesAnalyzed": 5}
Failed companies look like this and are free:
{ "domain": "example-parked.com", "status": "failed", "error": "Site returned no readable text (blocked, parked, or requires JavaScript)" }
Export to CSV, Excel, JSON or feed the dataset into Clay, HubSpot, Salesforce, Google Sheets, Airtable or n8n with the Apify integrations.
Pricing
Pay per event. You only pay for companies that produced a usable profile.
| Event | Price |
|---|---|
| Company profile | $0.015 per company |
| ICP fit score (only when an ICP is provided) | $0.010 per company |
| Failed or unreachable site | Free |
1,000 companies profiled and scored costs $25. Set a maximum charge on the run to cap spend; the Actor stops cleanly when it is reached and tells you how many companies were left.
How it compares
| Database enrichment APIs | Keyword-based website scorers | This Actor | |
|---|---|---|---|
| Data source | Stored records, refreshed on the vendor's schedule | Live page text | Live pages, up to 12 per company, with sitemap and page-probing fallbacks |
| Company description, products, customers | Sometimes | No | Yes, written from the site itself |
| ICP scoring | Fixed firmographic filters | Keyword matches | Plain-English ICP with must-haves and deal breakers, strict scoring, cited reasons |
| Personalization | No | No | Opening line and talking points grounded in the site |
| Custom fields | No | No | Yes, in plain English |
| Stated vs estimated labeling | No | No | inferredFields plus confidence on every row |
| Failed lookups | Often billed | Varies | Free |
| Typical price per company | $0.02 to $0.20 | under $0.01 | $0.015, plus $0.01 with ICP scoring |
Use cases
- Qualify scraped lead lists from Google Maps, LinkedIn, directories or trade-show exports before anyone touches them.
- Enrich a CRM with industry, size, location, contacts and tech stack straight from each company's own site.
- Account research at scale for outbound teams: one personalized opener per account, grounded in what the company actually says.
- Territory and TAM analysis: score a whole market segment against an ICP and sort by fit.
- Competitor and partner mapping: ask for custom fields like
partners,integrationsorcertifications. - AI agent tool: expose this Actor through Apify's MCP server so your agent can look up any company on demand.
Use from code or an AI agent
Run it from the Apify API, the JavaScript or Python client, or as an MCP tool:
curl -X POST "https://api.apify.com/v2/acts/<username>~ai-company-profiler/run-sync-get-dataset-items?token=<YOUR_TOKEN>" \-H "Content-Type: application/json" \-d '{ "domains": ["stripe.com"], "icp": "Fintech companies with public APIs" }'
As an MCP tool in Claude Desktop, Cursor, Windsurf or any MCP client. Apify's MCP server exposes this Actor as a tool. Add this to your client's MCP config (get a token at console.apify.com/settings/integrations):
{"mcpServers": {"apify": {"url": "https://mcp.apify.com/?tools=signalforgedata/ai-company-profiler","headers": { "Authorization": "Bearer <YOUR_APIFY_TOKEN>" }}}}
Then ask your agent: "Profile acme.com and tell me whether it fits an ICP of mid-market logistics companies in Texas." The agent gets back the full structured profile and fit assessment.
From n8n, Make or Zapier. Use the Apify node or module, pick this Actor, pass domains as an array, and map the dataset items to Google Sheets, HubSpot, Salesforce, Airtable or Clay.
Limits and notes
- Only public pages are read, and
robots.txtis respected. Sites that require JavaScript to render text may come back as failed; tryprecisemode or enable Apify Proxy if a site blocks datacenter traffic. - Employee range and founding year are estimates from site evidence;
Unknownornullmeans the site gave no evidence. Nothing is invented. - Contact details are business contacts published on the site (sales@, support@, main phone). The Actor does not look up individuals or scrape social networks.
- Typical speed: 100 companies in about 2 to 4 minutes at default settings.
FAQ
Does it work for non-software companies? Yes. Contractors, clinics, manufacturers, agencies, nonprofits and local businesses all produce profiles; the company type and industry fields adapt.
Can I bring my own Anthropic key? Yes, set anthropicApiKey in the input. Pricing per company stays the same.
How accurate is the ICP score? It is strict by design: unmet must-haves cap the score at 40 and deal breakers at 20, and every reason cites evidence. Write your ICP the way you would brief a new SDR, with explicit must-haves and deal breakers, for the best results.
What if a site is in another language? Source pages can be in any language. Set language to control the output.
How does it compare with company enrichment APIs like Clearbit, Apollo or ZoomInfo? Those return records from a database that may be months old and charge per credit whether or not the record is useful. This Actor reads each company's live website at run time, writes the profile from what it finds, labels estimates, and never charges for a site it could not read. It is a complement, not a replacement, when you need verified emails for individuals.
Questions or feature requests: open an issue on this Actor's page. Fields people ask for get added.
If it saved you time, a short review on this page helps other sales and RevOps teams find it. Honest feedback, good or bad, shapes what gets built next.