Blog/Sales & enrichment
11 min read

Extracting Leadership Contact Information Without Paying to Look

Hunter's multi-domain search returned 404,695 matching executives for free, names masked and titles visible. You pay only for the addresses you choose.

Extracting Leadership Contact Information Without Paying to Look

Copy this line to your agent to survey decision makers before spending anything.

set up https://monid.ai/SKILL.md and use hunterio /multi-domain-search to survey executives before revealing any address

Most tools for finding executive contacts charge you at the moment you search, which means you pay to discover that a company has no VP of Engineering, that the CFO left, or that the address on file bounces. On 2026-09-01 a single free call returned 404,695 matching executives with their job titles, seniority, decision-maker flag and verification status visible, and only the email addresses hidden. That inversion is the whole subject of this guide, and it runs through Monid, the OpenRouter for agent tools.

What counts as leadership contact information?

Four separate things get bundled under this phrase, and they have very different costs and very different failure modes.

The identity

Who holds the role. A name and a title. This is the part that goes stale fastest, because a VP changing jobs invalidates it instantly and nothing tells you.

The address

An email that reaches them. This is the part vendors charge for, and the part that is worthless without the first.

The qualification

Whether this person can actually say yes. A Director of Content and a VP of Content at a 40-person company may be the same authority; at a 4,000-person company they are three levels apart. Titles alone do not encode this, which is why a decision-maker flag is worth more than it looks.

The confidence

Whether the address is currently valid. A list of 500 unverified executive addresses is not a better asset than 200 verified ones. It is a worse one, because it carries a deliverability penalty that damages the addresses that would have worked.

The useful move is separating these. Three of the four can be established without paying, and once you accept that, the shape of the pipeline changes.

📖 See also The Best Email Verification API in 2026

Why do you keep paying to find out a list is wrong?

Because most prospecting tools bill on the search rather than on the result, so the cost lands before the information does.

The usual sequence

You filter, you export, you pay per row, and then you find out what you bought. Some rows have no leadership contact at all. Some have a title that turns out to be irrelevant. Some bounce. The waste is not in the bad rows, it is in the fact that badness was knowable before purchase and you had no way to check.

What that does to filter design

It makes people over-filter. If every row costs, you narrow aggressively to control spend, and narrow filters on a database with imperfect coverage produce small, brittle lists. The alternative, casting wide and paying for volume, is how prospecting budgets disappear.

The measured inversion

Hunter's /multi-domain-search on 2026-09-01 is free per call on Monid, and it returns rows in this shape. The identity below is a placeholder; every other value is verbatim from the live response.

{
  "name": "Alex M.",
  "position": "Vice President of Content",
  "department": "executive",
  "seniority": "executive",
  "type": "personal",
  "decision_maker": true,
  "domain": "example.com",
  "company_name": "example",
  "full_name_exists": true,
  "phone_number_exists": false,
  "linkedin_exists": true,
  "verification": { "date": null, "status": "valid" },
  "reveal_handle": "oNa-Z5mchnnH0ukwMJvwY3QQi7sXQHHs..."
}

Look at what is visible before payment. The full job title. Whether they are flagged a decision maker. Whether the address verifies. Whether a phone number and a LinkedIn profile also exist. What is hidden is the surname and the address itself, behind that reveal_handle.

Every qualification decision you would make about this row can be made for free. You pay only to write to them.

The volume that came back

That query, headcount 51-200 plus department executive plus seniority executive, reported meta.results: 404695 with a next_search_after cursor for paging. Four hundred thousand qualified rows, surveyable at no cost, with a paid step you invoke deliberately on a subset you chose.

How do you build a leadership list without paying to look?

Four steps. The first three are free, and the fourth is the only one that bills.

For agents

Grab an API key at app.monid.ai, then paste this to your agent and hand it the key:

set up https://monid.ai/SKILL.md

It learns the whole discover, inspect, run workflow itself. More in the agent quickstart.

For humans

npm install -g @monid-ai/cli
monid keys add -k <your-api-key> -l main

Step 1. Resolve company names to the domain that actually has people

What it does. Turns a company name into the right domain, which matters more than it sounds because brands own several.

The endpoints. hunterio/domain-finder, free.

The call.

monid run -p hunterio -e /domain-finder --query '{"company": "Vercel"}'

What comes back. On 2026-09-01, four candidate domains for one company, each with an email_count. One had 363. The other three had zero. Without that count you would have had a one-in-four chance of prospecting a parked domain.

What it costs. Nothing.

Step 2. Size the account before you commit to it

What it does. Tells you whether a company is worth working at all, and where its people sit.

The endpoints. hunterio/email-count, free.

The call.

monid run -p hunterio -e /email-count --query '{"domain": "stripe.com"}'

What comes back. For that domain on 2026-09-01: 2,198 addresses, 2,081 personal and 117 generic, broken across nineteen departments and three seniority levels. it held 803, management 318, sales 243, marketing 38. Seniority split junior 5, senior 644, executive 248.

That is a map of an organisation, free, before any outreach decision. A domain returning a total of 3 is one you skip.

What it costs. Nothing.

Step 3. Survey the people, masked

What it does. Produces the candidate rows with everything except the address.

The endpoints. hunterio/multi-domain-search, free.

The call.

monid run -p hunterio -e /multi-domain-search --query '{"headcount": "51-200", "seniority": "executive", "decision_maker": true, "verification_status": "valid", "limit": 25}'

The parameters are industry, headcount, seniority, department, decision_maker, verification_status, min_confidence, limit, search_after and per_domain. Getting these names wrong returns a 400 rather than silent nonsense, which is a mercy this category does not always offer, as the Amazon ASIN guide documents at length.

What comes back. Masked rows plus meta.results and a paging cursor. Filter these locally as hard as you like. Filtering is free, so filter properly rather than approximately.

What it costs. Nothing.

Step 4. Reveal only what survived

What it does. The paid step, on rows you already decided you want.

The endpoints. hunterio/multi-domain-search/reveal, billed per result.

The call.

monid run -p hunterio -e /multi-domain-search/reveal -w -i '{"handles": ["oNa-Z5mchnnH0ukwMJvwY3QQi7sXQHHs..."]}'

Up to 100 handles per request. It returns the address plus the full name, job title, phone number, LinkedIn URL and domain, with a per-handle outcome of revealed, already_revealed, not_found or insufficient_credits.

Two billing details worth knowing before you batch. Generic addresses unlock per domain rather than per person, so all the generic rows on one company cost one unit together. And rows already revealed in the current billing period are free, so re-pulling a list you already own does not charge you twice.

What it costs. Per revealed result. Current figures at monid.ai/tools.

Give this to your agent

$Set up https://monid.ai/SKILL.md, and then use Monid to survey executives at fintech companies with 51-200 staff, filter to verified decision makers with a LinkedIn profile, show me the shortlist, then reveal only the ones I approve.

📖 See also Prompt Instead of Filters: People Search That Reads a Sentence

Department or seniority: which filter finds decision makers?

They are different axes, and confusing them is the most expensive mistake available in this workflow.

The measurement

On one domain, on the same free call: department.executive returned 27 and seniority.executive returned 248. Nine times the count, from two filters that share a word.

What each one means

department is the function a person works in. department: executive means the C-suite and the offices around it, people whose job is running the company.

seniority is their level within whatever function they sit in. seniority: executive includes the VP of Engineering, the Head of Finance and the Chief Design Officer, none of whom sit in the executive department.

Which one you want

Almost always seniority, and almost everybody reaches for department because the word matches their mental model of leadership. If you are selling an engineering tool, the 27 people in the executive department are the wrong 27. The buyer sits in department: it with seniority: executive, and that combination is the one that finds them.

The combination that works in practice

Set seniority to the level with authority, set department to the function that owns the problem, and add decision_maker: true and verification_status: valid on top. All four filters are free to apply, so there is no reason to approximate. That is the practical difference this billing model makes: your filters can be as precise as your ICP actually is, rather than as coarse as your budget forces.

Which endpoint should I use for which job?

EndpointWhat it doesInputOutputBest forBilling
hunterio/domain-finderCompany name to domainA company nameCandidate domains with email countsCleaning a company listFree per call
hunterio/email-countSizes one accountA domainTotals by department and seniorityDeciding whether to work an accountFree per call
hunterio/multi-domain-searchCross-company people searchFiltersMasked rows plus reveal handlesBuilding and qualifying a shortlistFree per call
hunterio/multi-domain-search/revealUnmasks chosen rowsReveal handlesAddress, name, title, phone, LinkedInThe rows you decided to contactPer result
hunterio/email-finderOne known personName and domainMost likely address with confidenceYou already know exactly whoPer result

Every row was verified with monid inspect on 2026-09-01. The table gives billing shape rather than figures; shape drives design and current numbers live on monid.ai/tools.

The last row covers a different job. When you already know the person, searching is wasted motion and email-finder is one call. The four rows above it are for when you know the shape of who you want but not their names, which is what most leadership prospecting actually is.

When is this the wrong approach?

Three cases.

You need people who are not in any index. Coverage is real but not universal, and it skews towards companies with a web presence and employees who publish. If your ICP is 8-person manufacturers in a regional market, the counts will tell you that quickly and the honest answer is a different sourcing method.

Your outreach volume is the problem, not your list. Better targeting does not fix a message nobody wants. Free qualification makes it cheap to build a bigger bad list, and that is a genuine risk of this workflow. The upside only materialises if you use the free filtering to send less, not more.

You need firmographic depth alongside contacts. Funding rounds, tech stack, headcount trajectory: those come from company data sources rather than contact ones, and stitching them together is the waterfall enrichment problem rather than this one.

And the disclosure: this is Monid's blog and the reveal step is the one we bill for. The three free endpoints are genuinely free through us, which is worth stating plainly, because a model where surveying is free and acting is paid only works if you can trust the free part.

Conclusion

Extracting leadership contact information is usually described as a search problem, and the search is not the hard part. The hard part is that most tools make you buy the answer before you can evaluate it, which forces coarse filters and produces lists nobody trusts.

The measured alternative on 2026-09-01: resolve domains free, size accounts free, survey 404,695 qualified executives free with titles, decision-maker flags and verification status all visible, then pay only for the addresses you chose to write to. And when you set the filters, use seniority rather than department unless you specifically want the C-suite, because on one live domain those two words returned 248 people and 27 people.

Free next step: run monid run -p hunterio -e /email-count --query '{"domain": "yourtarget.com"}' against three accounts you are already working. It costs nothing and tells you whether the list you are about to buy exists. Start at monid.ai.

FAQ

Is extracting leadership contact information legal?

Business contact data is treated differently from consumer personal data in most jurisdictions, and B2B prospecting is broadly lawful in the US and, under legitimate interest, in much of Europe. That is not the same as unconditional. Under GDPR you still owe a lawful basis, a clear identification of who you are, and a working opt-out on first contact. The practical posture is to keep records of where each address came from and honour removal requests immediately, which is easier when your pipeline reveals a small deliberate set rather than dumping a bulk export.

What can you actually decide from a masked row?

More than the masking suggests. The full job title is visible, so you can judge relevance. The decision_maker flag and seniority tell you about authority. verification.status tells you whether the address is currently valid, which is the single biggest predictor of whether the contact is worth anything. And phone_number_exists and linkedin_exists tell you whether other channels are available. What is hidden is the surname and the address, which are precisely the fields you do not need in order to decide.

How fast does executive contact data go stale?

Faster than any other tier, because senior people move more visibly and their addresses are constructed from a name that stops applying. Treat a leadership list as valid for roughly a quarter and re-check before a campaign rather than after a bounce. The cheap version of this is re-running the free masked search with verification_status: valid and comparing it against what you hold, which costs nothing and catches the rows that have gone invalid. There is more on the verification side in enriching a list from email addresses.

Should you use generic addresses like info@ for leadership outreach?

Generally not for a first touch, and the billing makes the temptation obvious: generic addresses unlock per domain rather than per person, so they look cheap. They are cheap because they land in a shared inbox that a senior person does not read. The one case they earn their place is as a fallback when a company has genuinely no personal addresses indexed, where a well-written note to a small company's shared inbox does sometimes reach the owner. At a 2,000-person company it will not. The buy versus build breakdown walks through when that fallback is worth automating.

Last updated September 2026.

leadership contact informationexecutive contact datadecision maker searchhunter iob2b prospecting