You paste one LinkedIn URL and get back a list of people who hold the same kind of job: same job level, same function, same country. LeadOcean has no one-click lookalike button. You build it from two calls: enrich the seed, then search with the seed's attributes as filters.
How it works
- Trigger. Take the seed profile URL, for example
https://www.linkedin.com/in/jane-doe-example. Run it from a script, a webhook handler or a CSV row.
- Enrich the seed. Call
POST /v1/people/enrichwithlinkedin_url. You get the current title, job level, job function and country. It costs one record, and a miss is a 404 that costs nothing.
- Turn attributes into filters. Map the seed's values to the search filters
title,jobLevel,jobFunctionandcountry. Enum values are exact strings, so check them withlist_enum_valuesfirst (free). - Size the list. Send
count=truewithlimit=1as a query parameter on the search. It is free.meta.totalis capped at 100,000. - Pull the lookalikes. Call
/v1/people/searchand page withcursor. One search pages to 10,000 rows. Whenmeta.depthCappedis true, add a filter instead of walking further.
- Send the result on. Write rows to a sheet, your CRM or a file. For more than a page or two, use
POST /v1/exportsor the Exports page in app.leadocean.io (bulk CSV is not on Free).
Configuration
Step 2, enrich the seed:
curl -X POST https://api.leadocean.io/v1/people/enrich \
-H "x-api-key: $LEADOCEAN_API_KEY" \
-H "Content-Type: application/json" \
-d '{"linkedin_url": "https://www.linkedin.com/in/jane-doe-example"}'Steps 4 and 5, size then search. Values below are placeholders for what step 2 returned:
curl -X POST "https://api.leadocean.io/v1/people/search?count=true" \
-H "x-api-key: $LEADOCEAN_API_KEY" \
-H "Content-Type: application/json" \
-d '{"title": ["Head of Growth"], "jobLevel": ["Director"],
"jobFunction": ["Sales & Business Development"],
"country": ["US"], "limit": 1}'The seed fields sit under data in the enrich response (LeadOcean docs). Lookalike quality depends on how tight the filters are, so start narrow and widen only if the count is too small. Drop count=true and set limit up to 100 to fetch rows. In an MCP client such as Claude, the same flow uses leadocean_get_lead for the seed, then leadocean_count_leads and leadocean_search_leads.
Field mapping
| LeadOcean field | Target field | Note |
|---|---|---|
contact_current_experiences[0].job_title | title filter | Wrap in [brackets] for an exact match. |
contact_current_experiences[0].job_seniority.job_level | jobLevel filter | Exact strings: C-Team, VP, Director, Manager, Staff, Other. |
contact_current_experiences[0].job_functions[] | jobFunction filter | For example Sales & Business Development. |
profile_data.profile_address.country_code | country filter | Two-letter code, as the enum expects. |
Result profile_data.profile_url | Your sheet or CRM profile column | The LinkedIn URL of each lookalike. |
contact_data.email_status | Your send-ready flag | Read it before sending. Bounces are not refunded. |
Cost at 10,000 rows
On LeadOcean, 10,000 lookalikes plus the seed is 10,001 records. Free holds 1,000 records for life, so it proves the recipe but not the volume. Solo at $97 a month covers it: 100k search records every 5 hours, bulk CSV included. See pricing.
FullEnrich charges 0.25 credits per person returned by search, so 10,000 rows is 2,500 credits before any enrichment (credit costs, September 2026). The 5,000-credit tier is $255 a month at list, or the 60,000-credit-a-year tier at $232 a month billed yearly (pricing, September 2026).
Troubleshooting
| Symptom | Cause | Fix |
|---|---|---|
| Enrich returns 404 | No record for that URL | Free. Try another URL form, or search by company domain and enrich by person_id. |
| Search returns zero rows | An enum value is misspelled | Check list_enum_values, they are exact strings. |
| Search returns 402 | The 1,000 Free records are spent | Move to Solo or Agency. |
| 429 with Retry-After | Over the plan's rate | Free is 5 requests a second, Solo 50. Back off. |
| List is too broad | Only level and country matched | Add jobFunction and title, then size again. |
FAQ
Can I find lookalikes from a company instead of a person?
Yes. Use /v1/companies/search, and size the list first with the free GET /v1/companies/count.
Does the seed person appear in the results?
It can. Filter the seed's person_id out of your rows before you load them.
Can I get emails for the lookalikes?
Yes. Use reveal_email on enrich, or GET /v2/people/email/work. To start from a profile URL, see find an email from a LinkedIn profile and getting an email from a LinkedIn URL.
What if I only have a company website?
Find the LinkedIn URL first: 5 methods to find a LinkedIn URL from a website.
Find your first 1,000 lookalikes free
Free to start. No credit card. 1,000 records to spend whenever you like.
Get your free API key →