# B2B Lead Qualifier & Prospect Scoring API (`tomandre/prospect-intelligence-scorer`) Actor

Score and rank B2B company leads 0–100 from public website signals. Get contact paths, evidence, sales angle and next action for lead qualification.

- **URL**: https://apify.com/tomandre/prospect-intelligence-scorer.md
- **Developed by:** [Tom Andre Holen](https://apify.com/tomandre) (community)
- **Categories:** Lead generation
- **Stats:** 1 total users, 0 monthly users, 0.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

Pay per usage

This Actor is paid per platform usage. The Actor is free to use, and you only pay for the Apify platform usage, which gets cheaper the higher subscription plan you have.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-usage

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

- **AI agents and MCP clients** — the [Apify MCP server](https://docs.apify.com/integrations/mcp.md) at `https://mcp.apify.com` (remote, streamable HTTP, OAuth on first use).
- **Agentic workflows and local Actor development** — [Agent Skills](https://apify.com/.well-known/agent-skills/index.json) with the [Apify CLI](https://docs.apify.com/cli/docs.md): `npm install -g apify-cli`, then `apify login`.
- **JavaScript/TypeScript projects** — the official [JS/TS client](https://docs.apify.com/api/client/js/docs.md): `npm install apify-client`.
- **Python projects** — the official [Python client](https://docs.apify.com/api/client/python/docs.md): `pip install apify-client`.
- **Any other language** — the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).

# README

## B2B Lead Qualifier & Prospect Scoring API

Score and rank company domains 0–100, then return public contact paths, evidence and the next best sales action.

This Actor is built for **lead qualification, lead scoring, sales prospecting, CRM enrichment, agency prospecting, sales automation and AI agents**. It analyzes public company websites and turns them into structured, prioritized sales decisions.

### The buyer job

You already have company names or domains. The problem is deciding:

- which accounts deserve attention first
- which leads are actually contactable
- what evidence supports the score
- what angle to use
- what the next action should be

This Actor converts domains into ranked, evidence-backed lead qualification instead of leaving you with another raw contact list or generic website audit.

### What you get

For each prospect, the Actor can return:

- `opportunityScore` from 0–100
- `salesReadiness` level
- `contactabilityScore`
- public emails and phones discovered on checked pages
- public social profiles and contact/quote/booking paths
- `bestContact`
- evidence explaining the score
- conversion and sales-readiness signals
- `salesAngle`
- `outreachOpener`
- `recommendedAction`

The core question is: **which lead should I work first, why, how can I reach them, and what should I do next?**

### Common use cases

- Score and rank B2B lead lists
- Qualify company domains before outreach
- Prioritize agency, web-design, CRO or local-SEO prospects
- Enrich CRM records with live website and contactability signals
- Prioritize accounts from Google Maps, directories or exported lead lists
- Add deterministic lead qualification to sales-automation workflows
- Give AI agents structured prospect intelligence before they take the next action

### Three-step workflow

1. Send one or more company domains.
2. The Actor checks public website signals, contactability and conversion gaps.
3. Receive structured scores, evidence, contact paths and a recommended next action.

### Example input

```json
{
  "prospects": [
    {
      "name": "Example Company",
      "domain": "example.com"
    }
  ],
  "maxPagesPerProspect": 3
}
```

### Example output fields

```json
{
  "opportunityScore": 82,
  "salesReadiness": "HIGH",
  "contactabilityScore": 75,
  "bestContact": "sales@example.com",
  "salesAngle": "Evidence-backed sales angle",
  "outreachOpener": "First outreach line",
  "recommendedAction": "Next best action"
}
```

### What this is — and is not

| Tool type | Typical output | What this Actor adds |
| --- | --- | --- |
| Contact finder | Emails / phones | Priority, evidence, sales-readiness and next action |
| Generic lead scorer | Score from supplied fields | Live public website evidence from the company domain |
| Website audit | Technical or conversion issues | Sales-oriented prioritization and contactability |
| B2B Lead Qualifier | Domain → ranked sales decision | Score + contact path + evidence + angle + next action |

This Actor does **not** claim a verified decision-maker identity unless one is explicitly available from the public source. It does not rely on private people databases.

### Best fit

Works best when you already have domains and need to decide which companies to work first. Good fits include agencies, B2B SaaS, consultants, web-design/CRO teams, local-SEO providers, CRM enrichment pipelines and AI-agent workflows.

### Data and cost model

The Actor uses public web data only. It does not require a paid data provider or paid proxy by default. Pricing is usage-based so spend scales with actual runs rather than an idle subscription.

### API and automation

The Actor can be called through the Apify API and is designed for machine-readable workflows. The same engine is packaged for API marketplaces, MCP/agent workflows and other low-maintenance distribution channels where relevant.

No email sending is built in. The output is intended to feed your existing CRM, sequencer, agent or sales workflow.

# Actor input Schema

## `prospects` (type: `array`):

Businesses to score. Each item needs domain or url; name is optional.

## `maxPagesPerProspect` (type: `integer`):

Maximum public pages checked per prospect.

## Actor input object example

```json
{
  "maxPagesPerProspect": 3
}
```

# Actor output Schema

## `results` (type: `string`):

Structured prospect intelligence results.

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {};

// Run the Actor and wait for it to finish
const run = await client.actor("tomandre/prospect-intelligence-scorer").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {}

# Run the Actor and wait for it to finish
run = client.actor("tomandre/prospect-intelligence-scorer").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{}' |
apify call tomandre/prospect-intelligence-scorer --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,tomandre/prospect-intelligence-scorer"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/BCk3laMJiyDiyP9ah/builds/wmIpVLdoyqpl3ZbVD/openapi.json
