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

Role playbook

How to Sell to a Sales Director (and Size the List First)

What a Sales Director buys, who else is in the room, how many are mailable by country, 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 Sales Director owns a quota and a team's pipeline. Sell them time back for reps and a faster path to pipeline, not "better data".
  • Count first, send second. On 2026-10-21 LeadOcean showed 126,687 mailable people with the title "Sales Director" worldwide, 55,550 of them in the US.
  • The whole 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 Sales Director actually cares about

A Sales Director is judged on a number: team quota attainment this quarter. Everything they read is filtered through that.

They care about four things, in this order.

  1. Pipeline coverage. Do their reps have enough qualified accounts to hit quota? A Sales Director with thin pipeline will take a meeting.
  2. Rep productivity. Hours reps spend researching and typing instead of selling. Cutting that is a hard saving they can defend.
  3. Ramp time. New hires who reach quota in months, not quarters.
  4. Forecast accuracy. They answer to a VP of Sales or a CRO. Surprises cost them.

They do not care about your feature list. They care about what changes in a rep's week.

What kills the deal

Sales Directors say no for predictable reasons. Answer them in the first email, not the third.

  • "My reps already have a tool." Do not argue. Ask what the tool does when a rep needs a new account list on a Tuesday.
  • "I have no budget." Budget is a quarter away, but quota is this quarter. Offer a pilot that fits inside the free plan.
  • "Talk to Sales Ops." Good. Send Sales Ops a one-paragraph note with the count, the filters and the endpoint. They will read it.
  • "Not now." Ask for a date. Directors plan by quarter, so a named month is a real answer.

Where a Sales Director sits in the buying committee

A Sales Director is usually a champion or an evaluator, not the final signer. In our title counts, 110,856 of the 126,687 mailable "Sales Director" profiles carry the director seniority band (count of 2026-10-21).

Three roles show up around them:

  • The VP of Sales or CRO signs budget above a threshold. See how to sell to a VP of Sales.
  • Sales Ops or RevOps vets tooling, integrations and security.
  • Finance appears when annual spend gets large.

Write to the Sales Director as the person who will say "this helps my team" to their boss. Give them a sentence they can forward.

Step 1: Count Sales Directors by country (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). Run it from any MCP client:

json
{
  "tool": "leadocean_count_leads",
  "arguments": {
    "title": ["Sales Director"],
    "country": ["US"]
  }
}

Repeat with GB, DE and IN, or omit country for the worldwide figure. Search by title matches the profile title, so "Sales Director" will not include every "Director of Sales" or "Head of Sales" phrasing. Run those as separate counts if you want them.

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, filtered by title "Sales Director" and the default mailable email statuses.

RegionMailableEmployers covered
Worldwide126,687about 51,744
US55,55022,694
GB9,2476,408
DE3,3732,187
IN2,2901,345

Two things to read from this. The US is 44% of the worldwide mailable list (55,550 of 126,687). And the worldwide employer figure is not exact, so treat it as approximate.

Without the email filter the US alone matches 156,432 people. The gap is people we hold but would not recommend mailing.

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": ["Sales Director"],
    "country": ["GB"],
    "emailStatus": ["verified"],
    "limit": 25
  }' | jq '(.data | length), [.data[].meta.source_ids.person_id]'

Each row carries its person_id at meta.source_ids.person_id; the jq above prints them. Add a company-size filter next if you sell to one segment. 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 from step 3.

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 for a rep-to-director path. A Sales Director who was an AE two roles ago will respond to rep-level pain. One who came from a big-company enterprise team will respond to process.

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.

text
1. Pipeline: "Your team of {N} reps needs roughly {X} fresh accounts a month. Where do those come from today?"
2. Time: "How many hours a week do your reps spend building lists instead of selling?"
3. Ramp: "New reps at {Acme} take a quarter to build a list. Could it take a day?"
4. Territory: "I counted {N} mailable buyers in your territory. 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 market, and let the industry facets in the counts guide you. In the US count, Software Development (6,106) and IT Services and IT Consulting (3,068) lead. In Germany, Machinery Manufacturing (202) ranks third, which is a different conversation from SaaS.

Do not claim a reply rate or a result 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 includes it, and Agency 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 '{
    "name": "Sales Directors GB, verified",
    "limit": 5000,
    "filters": {
      "title": ["Sales Director"],
      "country": ["GB"],
      "emailStatus": ["verified"]
    }
  }'

Filters go inside filters, and limit is required. Poll GET /v1/exports/{id} until it is done, then fetch GET /v1/exports/{id}/download.

You can also 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: ["Sales Director"] and country: ["GB"], returned:

json
{
  "total": 9247,
  "totalIsExact": true,
  "totalAll": 41989,
  "distinctCompanies": 6408,
  "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 are thin: no contact points until you enrich.

json
{
  "success": true,
  "data": [
    {
      "profile_data": {
        "profile_full_name": "Jane Doe",
        "profile_headline": "Sales Director at Acme"
      },
      "contact_data": {
        "has_email": true,
        "email_status": "verified",
        "email_type": "work",
        "contact_current_experiences": [
          { "job_title": "Sales Director", "company_name": "Acme", "company_domain": "acme.com" }
        ]
      },
      "meta": { "source_ids": { "person_id": "1234567" }, "fetched_at": "2026-10-01" }
    }
  ],
  "meta": { "count": 1, "limit": 25, "credits": 1, "nextCursor": null }
}

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. Case matters.
Export refusedOver 50,000 rows a request or 500,000 a daySplit the export by country 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 Sales Director the same as a VP of Sales?

No. A Sales Director usually manages managers or a regional team and reports to a VP of Sales. The VP owns budget. Sell to the director for the pilot and give them the case to take upward.

Should I search for "Director of Sales" too?

Yes. Title search matches the profile text, so phrasings differ. Count "Sales Director", "Director of Sales" and "Head of Sales" separately, then merge the lists on person_id.

How many Sales Directors can I actually email?

On 2026-10-21 the mailable count worldwide was 126,687 for the title "Sales Director". 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 an IT or HR director?

The method is the same: size, sample, read one profile, write one angle. Only the pain changes. See how to sell to an IT Director and how to sell to an HR Director.

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 Sales Director 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 →