Pre-Black Friday: 20% off, for as long as you stayEARLYBFon Solo and AgencyEnds Nov 28Start free

Role playbook

How to Sell to a Hiring Manager (and Count the List by Region)

What a hiring manager buys, who else is in the room, how many are mailable by region, and four first lines you can send today.

Get your free API key →Free to start. No credit card. 1,000 records to spend whenever you like.

TL;DR

  • A hiring manager owns one open role and the team it joins. Sell them a faster, cheaper way to fill that role, not a platform.
  • Count first, send second. On 2026-10-21 LeadOcean showed 2,129 mailable people titled Hiring Manager worldwide, 1,605 of them in North America.
  • The recipe takes about 25 minutes and spends about 26 LeadOcean records. Every count is free.

Prerequisites

  • A free LeadOcean account and an API key from app.leadocean.io. Free gives you 1,000 records for life, no card, 5 requests a second.
  • The key in your shell as $LEADOCEAN_API_KEY.
  • curl and jq.
  • Optional: Claude or any MCP client connected to https://api.leadocean.io/mcp, which has 13 tools including free counts.

What a hiring manager actually cares about

A hiring manager is judged on whether the team ships with the people it needs. The role is open because work is waiting.

They care about four things, in this order.

  1. Time to fill. Every empty week is work the team does not do. They want qualified candidates this month.
  2. Quality of the shortlist. A weak slate wastes their interview hours. They hate reading sixty resumes to find three.
  3. Their own time. Hiring sits on top of a full job. Anything that adds scheduling or screening work loses.
  4. Budget they do not control. Headcount is approved above them, and tool spend usually goes through recruiting or finance.

They do not read feature lists. They read a sentence about the one role they are trying to fill.

What kills the deal

Hiring managers say no for practical reasons. Answer them in the first email.

  • "Talk to recruiting." Fair. Ask who in recruiting owns tools, and offer one paragraph they can forward.
  • "I have no budget." Say what the tool costs against the cost of the open seat. Do not guess their salary figures.
  • "We have an ATS and an agency." Do not argue. Ask how long the current role has been open.
  • "I do not have time to look at tools." Offer a result they can judge in a week, not a demo.

Where a hiring manager sits in the buying committee

"Hiring manager" is a role, not a rank. It can be a team lead, a director or a VP, depending on the company. On most deals they are the user and the influencer, rarely the economic buyer.

Win the hiring manager, then give them the sentence to forward to recruiting.

Step 1: Count hiring managers by region (free)

Start with a count. It spends zero records and tells you whether the segment is worth a campaign.

leadocean_count_leads counts mailable people by default: verified, catch_all_valid and catch_all addresses. This filters on the title phrase, so it also catches titles that contain it.

json
{
  "tool": "leadocean_count_leads",
  "arguments": {
    "title": ["Hiring Manager"],
    "salesRegion": ["NORAM"],
    "facets": false
  }
}

Repeat with EMEA, APAC and LATAM, or leave out salesRegion for the worldwide figure. Enum values are exact strings, so check them with leadocean_list_enum_values if a count comes back empty.

Step 2: Read the count for each region

Put the counts in one table before you pick a market. These ran on 2026-10-21 with title: ["Hiring Manager"] and the default mailable email statuses.

RegionMailableEmployers coveredAll matches (any email status)
Worldwide2,1291,40612,240
NORAM1,6051,0678,336
EMEA12091858
APAC2201772,111
LATAM1111125

Read three things from this. North America is 75% of the worldwide mailable list (1,605 of 2,129). EMEA, APAC and LATAM are small, so treat them as tests, not campaigns. And the last column shows how much you would mail blind: worldwide, 12,240 match but only 2,129 are mailable.

The four regions add up to 1,956, not 2,129. The remaining 173 mailable people have no region on file, so they appear only in the worldwide row.

The employer column counts one company once. It shows how many separate buying committees you can reach, not how many people.

Step 3: Pull a sample from your best region

Pull 25 rows from the region you picked. This spends 25 records. Search is a flat JSON body, filters are arrays, and limit runs from 1 to 100.

bash
curl -s -X POST https://api.leadocean.io/v1/people/search \
  -H "x-api-key: $LEADOCEAN_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "title": ["Hiring Manager"],
    "salesRegion": ["NORAM"],
    "emailStatus": ["verified"],
    "limit": 25
  }' | jq '.data | length'

Add employeeRange next if you sell to one segment, for example ["201-500"]. Page with the cursor value from meta. One search pages to 10,000 rows, so narrow the filters instead of walking the whole index.

Step 4: Enrich one record to read the career history

Before you write, read one profile. Person enrich returns career history: past roles, education, certifications and awards. Past employers carry no company_id yet.

Enrich takes exactly one of linkedin_url, email, phone or person_id. Use the meta.source_ids.person_id from a step 3 row.

bash
curl -s -X POST https://api.leadocean.io/v1/people/enrich \
  -H "x-api-key: $LEADOCEAN_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"person_id": "PERSON_ID_FROM_STEP_3", "reveal_email": true}' \
  | jq '.data.resume_data.experiences[0:3]'

This costs one record. A person we hold nothing for returns a 404 and costs nothing.

Look at the path. Someone promoted from an individual contributor role knows the team's pain first hand. Someone who joined in the last six months is building a team and is open to new tools.

Step 5: Write the first line

The first line must show you know the job. Pick one angle and keep the email under 90 words.

text
1. Time: "Every week a role stays open, your team carries the work. How long has yours been open?"
2. Shortlist: "Three strong candidates beat sixty resumes. What does your slate look like today?"
3. Effort: "I can cut the screening you do yourself. Who in recruiting should I send the details to?"
4. Territory: "I counted {N} mailable hiring managers in your region on {date}. Want the list?"

The territory line works because it is checkable. You ran a free count, so the number is real. Send it with the count and the date.

Match the angle to the region. In North America the pool is large, so lead on time and shortlist. In smaller regions the count is tiny, so write each email by hand.

These are starting points, not measured results. Do not claim a reply rate you have not measured. Test two angles on 100 contacts each and keep the winner.

Step 6: Save the list as a CSV

When the sample converts, export the list. Bulk CSV export is not on the Free plan. Solo ($97 a month) includes it, and Agency ($497 a month) exports 50k rows a file. The ceiling is 50,000 rows a request and 500,000 rows a day.

bash
curl -s -X POST https://api.leadocean.io/v1/exports \
  -H "x-api-key: $LEADOCEAN_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "filters": {
      "title": ["Hiring Manager"],
      "salesRegion": ["NORAM"],
      "emailStatus": ["verified"]
    },
    "limit": 1000
  }'

You can build the same export in the app at app.leadocean.io. The Exports page has a filter builder, a column picker and a price preview before you download.

What you get

The count in step 1, run on 2026-10-21 with title: ["Hiring Manager"] and salesRegion: ["NORAM"], returned:

json
{
  "total": 1605,
  "totalIsExact": true,
  "totalAll": 8336,
  "distinctCompanies": 1067,
  "credits": 0
}

total is the mailable count. totalAll is everyone matching without the email filter. The call cost no records.

A search row follows the response shape from the API reference, shown here with placeholder values.

json
{
  "success": true,
  "data": [
    {
      "profile_data": { "profile_full_name": "Jane Doe" },
      "contact_data": {
        "has_email": true,
        "email_status": "verified",
        "email_type": "work"
      },
      "meta": { "source_ids": { "person_id": "1234567890" } }
    }
  ],
  "meta": { "count": 1, "limit": 25, "nextCursor": "CURSOR" }
}

Search rows carry identity, current role, company and the email flags, but no addresses. The person_id for enrich sits at meta.source_ids.person_id.

Troubleshooting

ErrorCauseFix
401Missing or wrong x-api-key headerCheck $LEADOCEAN_API_KEY is set in this shell and sent as x-api-key.
429Above the plan's rate limit (5 a second on Free, 200 on Agency)Honor Retry-After, or pace the loop.
402Out of recordsThe Free plan's 1,000 records are one-off. Move to Solo ($97 a month) or Agency ($497 a month).
Empty dataA filter value does not match an exact enum stringCheck values with leadocean_list_enum_values. salesRegion takes NORAM, EMEA, APAC or LATAM.
Export refusedOver 50,000 rows a request or 500,000 a daySplit the export by region or company size.
Export refused on FreeBulk CSV export is not on FreeUse search with limit up to 100, or move to Solo.

FAQ

Is a hiring manager a job level?

No. It is a role in a hiring process, so the same person can be a team lead, a director or a VP. Add jobLevel or jobFunction filters to narrow the list by seniority or department.

Does the count include only people titled "Hiring Manager"?

It counts people whose title matches that phrase. People who hire but carry another title, such as an engineering director, are not in it. Run the count again with the titles you care about and compare totals.

How many hiring managers can I actually email?

On 2026-10-21 the mailable count worldwide was 2,129 for the title phrase "Hiring Manager". The default count includes verified, catch_all_valid and catch_all addresses. Bounces are not refunded, so read email_status before you send.

How is this different from selling to a recruiter?

The method is the same: size, sample, read one profile, write one angle. The recruiter owns the process and the tools. The hiring manager owns the role and the outcome. See how to sell to a recruiter.

How do I find hiring managers who use a different title?

Search by department and level instead of the title. Set jobFunction to the department you sell into, such as ["Engineering"], and jobLevel to ["Manager", "Director"]. Run it as a free count first, then pull a sample of 25 and read the titles that come back.

When should I contact a hiring manager?

When a role is open. A public job post for their team, a new team lead in the last six months or a headcount jump at the company all point to active hiring. Without a trigger, the email is about a problem they do not have this week.

What does this cost?

The counts are free. The recipe spends about 26 records, well inside the 1,000 on the Free plan. See pricing for Solo and Agency.

More role playbooks are in the blog.

Count your hiring manager list before you write a word

Free to start. No credit card. 1,000 records to spend whenever you like.

Get your free API key →