> Enrich.chat gives AI agents verified work emails and mobiles. To use it from an agent, read https://enrich.chat/agents.md . This is the Markdown version of https://enrich.chat/features/ai-lead-search/

# AI lead search: type who you want, then see how it was read

Write a sentence such as VPs of Operations at US logistics companies with 200 to 1,000 employees. Enrich.chat turns it into filters, shows you which ones, and counts the matches for free.

By Enrich.chat Editorial. Updated October 19, 2026.

**Short answer:** AI lead search lets you describe the people you want in a sentence instead of filling in a filter grid. In Enrich.chat you send that sentence as `q` to `/v1/search`, or type it in the [dashboard](https://enrich.chat/app/). The answer includes `interpreted_as`, the exact filters it used, so you can check and edit them. Counting matches is free.

## Key takeaways

- Send a sentence as `q` to `GET /v1/search` or the free `GET /v1/search/count`. The answer shows how it was read in `interpreted_as`.
- A filter replaces what your sentence says about the same thing, so you can pin any detail exactly. A wrong value returns `unknown_filter_value` with `did_you_mean`.
- Counting is free. A search uses one free lookup on the free tier, or 5 credits per person shown on a plan. Revealing a work email costs 10 credits and a mobile 250.
- It works best with a role plus an industry, a place or a company. One search returns at most 1,000 people.
- Write several sentences, strictest first, as match tiers. Each person comes back once with a score, and exclusion filters leave out what you do not want.

## Plain-English search you can check

- **A sentence in.** Describe who you want in up to 300 characters. There is no query language to learn.
- **See how it was read.** Every answer includes `interpreted_as`, with the exact filter names and values it used.
- **Edit as filters.** In the dashboard, one click turns the reading into filter fields. In the API, a filter replaces what the sentence says about it, and exclusions leave out what you do not want.
- **Counting is free.** `/v1/search/count` and the live count in the dashboard cost 0 credits. Size a list before you read it.
- **Fixed value lists.** A wrong value returns `unknown_filter_value` with `did_you_mean`. `/v1/facets` lists every value, and `/v1/filters` lists every filter, for free.
- **Works from your agent.** Say "Use www.enrich.chat to find ..." or add the MCP server, whose `search_people` tool can count first and takes extra filters in `more_filters`.

## From a sentence to a checked shortlist

1. **Describe who you want.** Type a sentence in the dashboard, or send it as `q` to `/v1/search/count`. Name a role plus an industry, a place or a company.
2. **Read it and fix it.** Check `interpreted_as`. Add or correct filters, and watch the free count change.
3. **Run it and reveal.** Search, read the people best first, then reveal the work email or mobile for the ones you keep.

## What is AI lead search?

AI lead search means you describe the people you want in a sentence, and the software turns that sentence into search filters. You skip the filter grid and the query language. Enrich.chat does this for people and companies, in the [dashboard](https://enrich.chat/app/) and through the API.

Tools in this space work in different ways. [Valley's buyer guide](https://www.joinvalley.co/blog/natural-language-lead-search-describe-icp) sorts them into three groups: semantic web-search tools, database front ends that turn a sentence into filters, and signal-based platforms. Enrich.chat's search works like the second group, and it shows you the filters it chose. Some search APIs go the other way and expect you to write the query. [People Data Labs' Person Search](https://docs.peopledatalabs.com/docs/reference-person-search-api) takes an Elasticsearch or SQL query, for example.

The point of a sentence is speed with control. You type who you want, you read how it was understood, and you fix anything that is off before you spend a credit.

## How does Enrich.chat read your sentence?

Enrich.chat reads your sentence, matches it to filters, and tells you which filters it used. In the API, send the sentence as `q` (up to 300 characters) to `GET /v1/search` or to the free `GET /v1/search/count`. The answer includes `interpreted_as`, a list of the exact filter names and values it applied.

In the dashboard, the People search screen has a box called "Describe it in plain English". As you type, a live count of matching people updates, and counting is free. Press Enter to search, and a "Read as" bar shows the filters. Click "Edit as filters" to turn them into fields you can change.

**Figure 1: The People search screen in the Enrich.chat dashboard.** A drawing of the People search screen. On the left is a box where you describe who you want in plain English, with filter groups below it. On the right are a free live count, a Search button, a Read as bar that lists the filters the sentence became with an Edit as filters button, and a list of people with buttons to reveal an email or a mobile number.

*The People search screen, drawn from the dashboard's structure (illustrative; some columns are left out). Names and companies are made up. Source: [Enrich.chat dashboard](https://enrich.chat/app/).*

Filters win over words. If a filter and your sentence both speak about the same thing, the filter replaces what the sentence says. That lets you start with a sentence and pin one detail exactly. An agent can do the same through the [MCP server](https://enrich.chat/features/mcp-server/): its `search_people` tool has a `count_only` option, so it can count before it reads any rows.

## What do real sentences become?

Each sentence below turns into a set of filters. These readings are illustrative: your own answer lists the exact filters it used.

| You type | It is read as (illustrative) |
| --- | --- |
| VPs of Operations at US logistics companies with 200 to 1,000 employees | level: vp. title_words: operat. country: United States. industry: Logistics and Supply Chain. company_size: 201-500, 501-1000. |
| Owners of dental clinics in Florida | persona: CEO / Founder. country: United States. state: Florida. industry: Hospitals and Health Care, Medical Practices. |
| Marketing directors at software companies using HubSpot | level: director. persona: Marketing Leadership. title_words: market. industry: Software Development. uses: HubSpot. |

Three things to notice. Job words can appear as word stems: "Operations" becomes `operat`. Industry and role values come from fixed lists, so a narrow trade such as dental clinics can map to a wider category. And if part of your sentence is missing from the reading, add it as a filter. To limit the third example to Series A companies, add `funding_stage=Series A`.

Try one from your own agent. Paste this prompt into ChatGPT, Claude, Cursor or Codex.

```text
Use www.enrich.chat to count marketing directors at software companies using HubSpot, show me how you read the request, then list 10 of them with name, title and company
```

## How do you write a sentence that works?

Name a role and one anchor: an industry, a place or a company. "VPs of Operations at US logistics companies" does that. A request that names nobody in particular returns `search_too_broad`.

- **Keep the sentence short.** [ListKit's guide to its AI Company Search](https://docs.listkit.io/en/articles/16109363-how-do-i-use-ai-search-to-find-leads-in-plain-english) suggests about six to nine words and says to keep place, size and titles in separate filters. The same habit works here: use the sentence for the idea and filters for the details.
- **Use exact values for fixed lists.** `GET /v1/facets/industry` lists every industry value, and the other lists work the same way. They are free.
- **Say what to leave out with a filter.** A sentence is better at what you want than at what you do not. Exclusion filters such as `exclude_title=intern,assistant` or `exclude_industry` drop those people, and `GET /v1/filters` lists every filter for free.
- **Count before you search.** If the count is zero or huge, change the filters first.

| Answer | What it means | What to do |
| --- | --- | --- |
| `unknown_filter_value` (400) | A filter value is not one Enrich.chat knows. | Use a value from `did_you_mean`, or list the values. |
| `search_too_broad` (400) | The request names nobody in particular. | Add a role, an industry, a place or a company. |
| `bad_cursor` or `result_limit` (400) | The cursor belongs to another search, or the search was paged 40 times. | Narrow the filters to go deeper. |

## Can several sentences give you a ranked list?

Yes. Match tiers take up to five sentences or filter sets, strictest first, and return each person once under the first tier that matched them. The first tier scores 100, and later tiers score 75, 50, 25 and 10. Each person also carries `matched`, the filters that tier used, so you can say why they are on the list.

```
POST /v1/search/cascade
{"limit": 25, "tiers": [
  {"name": "Exact", "q": "VPs of Sales at US software companies"},
  {"name": "Close", "q": "directors of sales at US software companies"}
]}
```

A tier search is billed like a search: 5 credits for each person shown on a plan, or one lookup on the free tier. The counts per tier are free with `"count_only": true`. The dashboard has a Match tiers mode on People search, and [match tiers](https://enrich.chat/features/match-tiers/) covers it in full.

## What does an AI lead search cost?

Counting costs nothing. A search uses one free lookup on the free tier, however many people it shows, or 5 credits per person shown on a plan. Revealing a work email costs 10 credits and a mobile 250. A reveal that finds nothing costs 0.

**Figure 2: The six steps of a plain-English search and what each costs.** Six steps. Describe, read, edit and count are free. Search uses one free lookup on the free tier or 5 credits per person on a plan. Reveal costs 10 credits for a work email and 250 credits for a mobile, and nothing when nothing is found.

*The search loop and its cost. Only steps five and six spend credits. Source: [Enrich.chat OpenAPI spec](https://enrich.chat/openapi.json).*

Here is a worked example. You read 1,000 people, the most one search returns, and reveal up to 200 work emails. Reading uses 5,000 credits and the emails use up to 2,000. The month totals up to 7,000 credits, which fits the Growth plan at $29 a month. The [pricing page](https://enrich.chat/pricing/) lists every plan, and each answer shows `credits_used`.

Without a plan, 10 free lookups a day need no signup. A search with 25 rows uses one of them.

## What can AI lead search not do yet?

It finds and exports people. It does not run your outreach, and a few edges are worth knowing before you rely on it.

- It works best with a role plus an industry, a place or a company.
- One search returns at most 1,000 people: 25 per page, 40 pages. Narrow the filters to go deeper.
- It can miss part of a sentence, so read `interpreted_as` every time.
- It does not send email, run sequences, track changes or send alerts, and there is no Chrome extension.
- There is no CRM sync. Export a CSV or Excel file and import it where you work.

Lists, saved searches and revealed contacts are shared by your whole [team](https://enrich.chat/features/team-workspaces/), and the owner's plan pays for everyone. There is no SSO and no credit limit per person. For a long list of lookups, a [background job](https://enrich.chat/features/background-jobs/) keeps running after you close the tab. Opt-outs from [enrich.chat/opt-out/](https://enrich.chat/opt-out/) are applied to every result, and a [do-not-contact list](https://enrich.chat/features/do-not-contact/) keeps chosen people out of your list exports. You stay responsible for the rules that apply to your outreach, such as CAN-SPAM, GDPR and TCPA. For more filters, see [people search](https://enrich.chat/features/people-search/), [company search](https://enrich.chat/features/company-search/) and the [people search API](https://enrich.chat/api/people-search/). To build one list without signing up, try the free [AI lead list builder](https://enrich.chat/tools/lead-list-builder/).

## Frequently asked questions

### What is AI lead search?

AI lead search is a way to find prospects by describing them in a sentence instead of filling in filters. In Enrich.chat the sentence is read into filters such as job level, country, industry and company size. The answer lists them in `interpreted_as`, so you can check and change them. A free count tells you how many people match before you spend any credits.

### Is counting matches really free?

Yes. `GET /v1/search/count` and the live count in the dashboard use no lookup and no credits. A count takes the same `q` and filters as a search and returns `interpreted_as` too. Use it to see whether a search is empty or too large before you read any rows. Only returning people uses a free lookup or credits.

### What if Enrich.chat reads my sentence wrong?

Check `interpreted_as` in the answer. Anything missing or wrong can be set as a filter, and a filter replaces what the sentence says about the same thing. In the dashboard, click Edit as filters. If a value is not one Enrich.chat knows, the API returns `unknown_filter_value` with `did_you_mean` suggestions, and `GET /v1/facets/industry` lists the valid values for free.

### How many people can one search return?

A search returns up to 25 people per page, and you can page it 40 times, so 1,000 people at most. Send `next_cursor` back as `cursor` to get the next page. To go deeper than 1,000, narrow the filters, for example with a state, a company size or a technology, or leave out what you do not need with the exclusion filters. On a plan, each person shown uses 5 credits.

### Can I run plain-English search from ChatGPT or Claude?

Yes. Paste a prompt that starts with "Use www.enrich.chat" and the agent calls the API. You can also add the MCP server: `https://enrich.chat/mcp` needs no sign-in and gives 10 free lookups a day, and `https://enrich.chat/mcp/oauth` signs in with your account and uses your plan. Its `search_people` tool has a `count_only` option and a `more_filters` argument for the extra filters. See the [install page](https://enrich.chat/install/).

### Does the search return emails and mobile numbers?

Search results show name, title, company, level and country, plus whether Enrich.chat holds an email and a mobile. You reveal them per person: a work email costs 10 credits and a mobile 250, and a reveal that finds nothing costs 0. Each email comes back marked verified, catch_all or unknown, and each mobile with a line type of mobile or unknown.

## Sources

1. [Natural-Language Lead Search: Describe Your Ideal Customer, AI Finds Them](https://www.joinvalley.co/blog/natural-language-lead-search-describe-icp)
2. [How do I use AI search to find leads in plain English?](https://docs.listkit.io/en/articles/16109363-how-do-i-use-ai-search-to-find-leads-in-plain-english)
3. [Person Search API reference](https://docs.peopledatalabs.com/docs/reference-person-search-api)
4. [Enrich.chat OpenAPI specification](https://enrich.chat/openapi.json)
5. [Enrich.chat agent docs](https://enrich.chat/agents.md)

## Examples

**cURL**

```bash
# 1. Free: how many people match, and how was the sentence read?
curl -G "https://enrich.chat/v1/search/count" \
  --data-urlencode "q=VPs of Operations at US logistics companies with 200 to 1000 employees"

# 2. Run it: 10 people, best first
curl -G "https://enrich.chat/v1/search" \
  --data-urlencode "q=VPs of Operations at US logistics companies with 200 to 1000 employees" \
  --data-urlencode "limit=10"

# No key is needed for the free tier. With a paid key from
# enrich.chat/account/, add this line to either call:
#   -H "Authorization: Bearer $ENRICH_KEY"
```

**Count response**

```json
{
  "count": 18420,
  "interpreted_as": {
    "level": ["vp"],
    "title_words": ["operat"],
    "country": ["United States"],
    "industry": ["Logistics and Supply Chain"],
    "company_size": ["201-500", "501-1000"]
  },
  "credits_used": 0,
  "free_lookups_remaining": 9
}

# Illustrative values. Your answer lists the filters it used.
```

**Search response**

```json
{
  "found": true,
  "count": 2,
  "people": [
    {"id": "per_4Hk2x9QmVb7LrTzE", "name": "Jane Doe",
     "title": "VP Operations", "company": "Acme Logistics",
     "company_domain": "acme.example.com", "level": "vp",
     "has_email": true, "has_mobile": true,
     "linkedin_url": "https://www.linkedin.com/in/jane-doe-ops"},
    {"id": "per_9Zt3cWn8KpD2yUaB", "name": "John Roe",
     "title": "VP Logistics", "company": "Hale Freight",
     "company_domain": "hale.example.com", "level": "vp",
     "has_email": true, "has_mobile": false,
     "linkedin_url": "https://www.linkedin.com/in/john-roe-log"}
  ],
  "total_matches": 18420,
  "next_cursor": "eyJyIjoyMn0",
  "interpreted_as": {"level": ["vp"], "country": ["United States"], ...},
  "credits_used": 10,
  "free_lookups_remaining": 9
}

# Illustrative people and values.
```

**Match tiers**

```text
# Several sentences, strictest first. Each person comes back once.
curl -X POST "https://enrich.chat/v1/search/cascade" \
  -H "content-type: application/json" \
  -d '{"limit": 25, "tiers": [
    {"name": "Exact", "q": "VPs of Sales at US software companies"},
    {"name": "Close", "q": "directors of sales at US software companies"}
  ]}'

# Each person in the answer carries tier, tier_name, score and matched.
# Add "count_only": true to get each tier's count for free.
```

**A typo**

```text
# A filter value we do not know
curl "https://enrich.chat/v1/search/count?title=director&industry=softwre"

{
  "error": "unknown_filter_value",
  "message": "industry \"softwre\" is not a value this API knows. Did you mean: Software Development?",
  "did_you_mean": ["Software Development"],
  "fix": "List the valid values with GET /v1/facets/industry?q=softwre",
  "example": "Software Development"
}
```

**Agent prompt**

```text
# Paste into ChatGPT, Claude, Cursor or Codex
Use www.enrich.chat to count VPs of Operations
at US logistics companies with 200 to 1000
employees, show me how you read the request,
then list 10 of them with name, title and
company.
```

## Prices

| What you get | Credits |
| --- | --- |
| Work email found | 10 |
| Mobile number found | 250 |
| Company tech stack or profile found | 5 |

10 free lookups a day for every IP address, no signup. Nothing is charged when nothing is found. Monthly plans start at $29 for 100,000 credits.

## Try this prompt

Search in plain English from your agent

```text
Use www.enrich.chat to count VPs of Operations at US logistics companies with 200 to 1000 employees, show me how you read the request, then list 10 of them with name, title and company
```

## Related

- [People search](https://enrich.chat/features/people-search/)
- [MCP server with OAuth](https://enrich.chat/features/mcp-server/)
- [Sales prospecting](https://enrich.chat/use-cases/sales-prospecting/)
