TL;DR
- A CTO buys to ship faster, avoid rework and keep the stack small. Sell one of those three, and name which one in the first line.
- Count first, send second. On 2026-10-21 LeadOcean showed 75,093 mailable people with "Chief Technology Officer" or "CTO" in their title in North America, 41,265 in EMEA, 16,690 in APAC and 6,406 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 CTO actually cares about
A CTO answers for what the company builds and how fast it ships. When delivery slips or the platform breaks, the CTO owns the explanation.
They care about five things, roughly in this order.
- Delivery speed. Does this help the team ship, or does it add a meeting and a migration?
- Technical debt and rework. A tool that creates cleanup work later is a cost, not a feature.
- Build versus buy. A CTO will ask whether the team can build it. You must show why buying is cheaper than a quarter of an engineer's time.
- Security and reliability. A new vendor in the request path is a new failure point. They will ask about uptime, auth and data handling.
- Hiring and focus. Every tool that saves engineers from side work frees them for the roadmap.
They do not read feature lists. They read a sentence that touches one of these five, and they check the docs before they reply.
What kills the deal
CTOs say no for predictable reasons. Answer them in the first email, not the third.
- "We can build that." Do not argue. Show the API, the rate limit and the docs link, and let them price the build against the subscription.
- "Another vendor to maintain." Show how small the integration is: the auth, the endpoints and whether an SDK is needed.
- "Not on the roadmap." Offer something that fits inside a free plan, so it needs no budget line and no roadmap slot.
- "Talk to my engineering lead." Good. Send the lead one paragraph with the endpoint, an example request and the use case.
Where a CTO sits in the buying committee
A CTO is the approver for anything that touches the product or the engineering stack, and rarely the person who runs the trial. At a larger company the CTO may sit two levels above the engineer who tests your tool.
- The CEO or CFO signs when spend crosses a threshold. At a small startup the CEO and the CTO are often the same conversation.
- The CISO or head of security reviews risk, and can block what the CTO wants.
- The VP of Engineering and engineering managers test the tool and tell the CTO whether it works. They are often the real first contact. See how to sell to a VP of Engineering.
- Product and marketing leads join when the tool feeds a campaign or a feature. See how to sell to a VP of Marketing.
- Recruiting joins when the tool touches engineering hiring. See how to sell to a recruiter.
Write to the CTO as the person who needs one sentence to forward to the engineering lead. Give them that sentence, with a link to the docs.
Step 1: Count CTOs 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 "Chief Technology Officer" or "CTO". That includes variants such as deputy and associate CTOs. Run it from any MCP client.
{
"tool": "leadocean_count_leads",
"arguments": {
"title": ["Chief Technology Officer", "CTO"],
"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: ["Chief Technology Officer", "CTO"] and the default mailable email statuses.
| Sales region | Mailable | Employers covered | All matches (any email status) |
|---|---|---|---|
| NORAM | 75,093 | 48,236 (estimate) | 181,843 |
| EMEA | 41,265 | 33,050 | 130,843 |
| APAC | 16,690 | 13,007 | 61,170 |
| LATAM | 6,406 | 5,368 | 20,595 |
Read three things from this. NORAM holds 75,093 of the 139,454 mailable CTOs across the four regions, which is 54%. LATAM is small enough to work as a named-account list. And the last column shows how much you would mail blind: in EMEA, 130,843 people match but only 41,265 are mailable.
The employers column matters as much as the people column. 75,093 CTOs across about 48,236 employers in NORAM is about 1.6 per company, so expect one or two names per account.
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": ["Chief Technology Officer", "CTO"],
"salesRegion": ["EMEA"],
"emailStatus": ["verified"],
"limit": 25
}' | jq '.data[] | {name: .profile_data.profile_full_name, person_id: .meta.source_ids.person_id}'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 person_id a step 3 row carries at meta.source_ids.person_id.
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 CTO who came up through infrastructure cares about reliability and cost. One who came from product cares about delivery speed. One who started in the last six months is reviewing the stack and is open to a short call.
Step 5: Write the first line
The first line must show you know the job. Pick one of these four angles and keep the email under 90 words.
1. Speed: "Your team ships every week. Could this save one engineer a day a sprint on data plumbing?"
2. Build vs buy: "You can build this. Here is the endpoint list and rate limit so you can price a quarter of an engineer against it."
3. Stack: "Here is the curl for {endpoint} so your lead can try it before a call."
4. Territory: "I counted {N} mailable CTOs 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.
Match the angle to the company. At a startup, lead with speed. At a larger company, lead with stack fit and security review.
These are starting points from how the segments are shaped, 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.
curl -s -X POST https://api.leadocean.io/v1/exports \
-H "x-api-key: $LEADOCEAN_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "cto-list",
"filters": {
"title": ["Chief Technology Officer", "CTO"],
"salesRegion": ["EMEA"],
"emailStatus": ["verified"]
},
"limit": 5000
}'Search filters go inside filters, and limit sets the row count. Poll GET /v1/exports/{id} until the file is ready.
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: ["Chief Technology Officer", "CTO"] and salesRegion: ["EMEA"], returned:
{
"total": 41265,
"totalIsExact": true,
"totalAll": 130843,
"distinctCompanies": 33050,
"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. Rows carry no addresses; enrich by person_id for those.
{
"success": true,
"data": [
{
"profile_data": { "profile_full_name": "Jane Doe", "profile_headline": "Chief Technology Officer at Acme" },
"contact_data": {
"has_email": true,
"email_status": "verified",
"email_type": "work",
"contact_current_experiences": [
{ "job_title": "Chief Technology Officer", "company_name": "Acme", "company_domain": "acme.com" }
]
},
"meta": { "source_ids": { "person_id": "1234567890", "person_group_id": "1234567890" } }
}
],
"meta": { "count": 1, "nextCursor": "..." }
}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 CTO the same as a CIO?
No. A CTO usually owns the product and its engineering. A CIO usually runs internal systems, security and IT operations. Sell to the CTO for product and developer tools, and to the CIO for internal tools. See how to sell to a VP of Engineering for the layer below.
Does the count include only people titled exactly "CTO"?
No. The title filter matches titles that contain the phrase, so deputy and associate CTOs are in, and so are titles that merely contain "CTO". Filter by seniority: ["c_suite"] if you want the top role only.
How many CTOs can I actually email?
On 2026-10-21 the mailable count was 75,093 in NORAM, 41,265 in EMEA, 16,690 in APAC and 6,406 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 CTO first or an engineering lead?
Test both on 100 contacts each. A CTO decides, but an engineering lead often answers first and carries the idea upward. At a startup with fewer than 50 people, start with the CTO.
What does this cost?
Count your CTO 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 →