TL;DR
- A Head of Product buys to ship the right thing sooner and to cut the work between a customer signal and a decision. Name one of those in your first line.
- Count first, send second. On 2026-10-21 LeadOcean showed 9,438 mailable people with "Head of Product" in their title in North America, 12,630 in EMEA, 4,022 in APAC and 891 in LATAM.
- 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. curlandjq.- Optional: Claude or any MCP client connected to
https://api.leadocean.io/mcp, which has 13 tools including free counts.
What a Head of Product actually cares about
A Head of Product owns what the company builds next and why. They answer to the CEO or CPO for roadmap results, and to engineering for priorities that hold still long enough to ship.
They care about five things, roughly in this order.
- Outcomes on the roadmap. Does this move a metric the roadmap already commits to, or does it add a side project?
- Customer signal. Anything that shortens the path from user feedback to a decision gets attention.
- Engineering time. A tool that costs a sprint to integrate loses to one that works from a single request.
- Prioritisation evidence. They defend trade-offs to sales, support and the board. Data they can cite helps.
- Team focus. Product managers are stretched. A tool that removes manual work earns a trial.
They do not read feature lists. They read one sentence tied to a roadmap outcome, then check whether a PM can try it alone.
What kills the deal
Heads of Product say no for predictable reasons. Answer them in the first email.
- "Not on the roadmap." Offer the smallest start you have, such as a free plan or a short pilot, so it needs no budget line and no roadmap slot.
- "Engineering is full." Show the integration cost in hours, with the one request or config a PM can run alone.
- "Talk to my PM." Good. Send the PM one paragraph with the use case and a working request.
- "We have no budget for tools." Lead with what they can try without a contract, and the price once it works.
Where a Head of Product sits in the buying committee
A Head of Product is usually an influencer or approver for anything that touches product work, and a budget holder only in smaller companies. Titles vary: some companies have a Head of Product under a CPO, others have no CPO and the Head reports to the CEO.
- The CPO or VP of Product sits above and signs when spend crosses a threshold.
- Product managers try the tool and report back. They are often the real first contact. See how to sell to a product manager.
- The CTO or VP of Engineering reviews integration cost and can block it. See how to sell to a CTO.
- Growth and RevOps leads join when the tool feeds funnel data. See how to sell to a head of growth and how to sell to a head of RevOps.
- The CFO joins at larger companies once spend needs a budget line.
Write to the Head of Product as the person who needs one sentence to forward to a PM. Give them that sentence and a link to the docs.
Step 1: Count Heads of Product by sales 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 count filters on title text, so it matches titles that contain "Head of Product", including variants such as "Head of Product Design" or "Head of Product Marketing". Run it from any MCP client.
{
"tool": "leadocean_count_leads",
"arguments": {
"title": ["Head of Product"],
"salesRegion": ["NORAM"],
"facets": false
}
}Repeat with EMEA, APAC and LATAM. Add employeeRange: ["51-200", "201-500"] to see growth-stage companies only.
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: ["Head of Product"] and the default mailable email statuses.
| Sales region | Mailable | Employers covered | All matches (any email status) |
|---|---|---|---|
| NORAM | 9,438 | 6,242 | 16,957 |
| EMEA | 12,630 | 8,103 | 33,593 |
| APAC | 4,022 | 2,954 | 10,627 |
| LATAM | 891 | 670 | 2,243 |
Read three things from this. The four regions hold 26,981 mailable people. EMEA is the largest at 12,630, which is 47%, ahead of NORAM at 9,438 (35%). LATAM is small enough to work as a named-account list.
The last column shows how much you would mail blind. In EMEA, 33,593 people match but only 12,630 are mailable. The employers column shows most companies have one mailable Head of Product, so you are writing to a company, not a committee.
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.
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": ["Head of Product"],
"salesRegion": ["EMEA"],
"emailStatus": ["verified"],
"limit": 25
}' | jq '.data | length'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.
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 for the path. A Head of Product who came up through design cares about user experience. One who came from engineering cares about delivery cost. One who started in the last six months is setting priorities and is open to a short call.
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.
1. Outcome: "Your roadmap has a metric to hit this quarter. Here is how one request saves a PM an afternoon a week on research."
2. Signal: "Customer feedback is only useful if it reaches a decision. This closes that gap in one API call."
3. Effort: "Here is the one request your PM can run to try it in two minutes. No integration project."
4. Territory: "I counted {N} mailable Heads of Product in {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.
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 a day.
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": ["Head of Product"],
"salesRegion": ["EMEA"],
"emailStatus": ["verified"]
},
"limit": 5000
}'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: ["Head of Product"] and salesRegion: ["EMEA"], returned:
{
"total": 12630,
"totalIsExact": true,
"totalAll": 33593,
"distinctCompanies": 8103,
"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.
{
"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
| Error | Cause | Fix |
|---|---|---|
| 401 | Missing or wrong x-api-key header | Check $LEADOCEAN_API_KEY is set in this shell and sent as x-api-key. |
| 429 | Above the plan's rate limit (5 a second on Free, 200 on Agency) | Honor Retry-After, or pace the loop. |
| 402 | Out of records | The Free plan's 1,000 records are one-off. Move to Solo ($97 a month) or Agency ($497 a month). |
Empty data | A filter value does not match an exact string | Check enum values with leadocean_list_enum_values. salesRegion takes NORAM, LATAM, EMEA or APAC. |
| Export refused | Over 50,000 rows a request or 500,000 a day | Split the export by region or company size. |
| Export refused on Free | Bulk CSV export is not on Free | Use search with limit up to 100, or move to Solo. |
FAQ
Is a Head of Product the same as a product manager?
No. A product manager owns one product area or feature set. A Head of Product leads the product managers and sets priorities across areas. Sell to the PM for hands-on trials and to the Head for approval. See how to sell to a product manager.
Does the count include only people titled exactly "Head of Product"?
No. The title filter matches titles that contain the phrase, so variants such as "Head of Product Design" are in. Add seniority: ["head"] to narrow the list to people at head level.
How many Heads of Product can I actually email?
On 2026-10-21 the mailable count was 9,438 in NORAM, 12,630 in EMEA, 4,022 in APAC and 891 in LATAM. The default count includes verified, catch_all_valid and catch_all addresses. Bounces are not refunded, so read email_status before you send.
Should I email the Head of Product or a product manager first?
Test both on 100 contacts each. A Head decides, but a PM often answers first and carries the idea upward. At a company with fewer than 50 people, start with the Head.
When is the best time to reach a Head of Product?
Write after a trigger. Good ones are a new Head of Product in the last six months, a public roadmap change, a funding round or a hiring post for PMs. Each one starts a review of tools. Career history from enrich shows the start date of the current role.
Which industries should I filter on?
Start with the industries where your product already has users. Add industry to the free count and compare the mailable totals. Exact industry strings come from leadocean_list_enum_values.
What does this cost?
Count your Head of Product 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 →