You get a list of buyers at companies whose website shows a competitor's tool, ready for a sequencer. Clay's template follows the same three steps: find companies that use your competitors, find contacts there, then write messages and push them to your sequencer (Clay template, September 2026). Here LeadOcean does the first two with one technologies filter.
The signal comes from site crawls, so it covers about 7.8M of the 67M companies in the database. A company we have not crawled never matches.
How it works
- Name the competitor. Pick one tool your product replaces, for example
HubSpot. - Size the list for free. Send the search with
count=trueandlimit1. It returns a total and spends no records. - Add the buyer filters. Narrow by
jobFunction,jobLevel,hqCountryandemployeeRange. Enum values are exact strings, so look them up withGET /v1/enums. - Pull the people. Run
POST /v1/people/searchand page withcursor, 100 rows a page. One search pages to 10,000 rows, so split bigger lists by country or size. - Get the addresses. Search rows carry
email_statusbut never the address. For each row you keep, callPOST /v1/people/enrichwithmeta.source_ids.person_idandreveal_email: true. - Load them into Clay. Save the rows as CSV and import them as a table. Keep
email_statusas a column. - Send. Only sequence rows with
verifiedorcatch_all_validstatus, and hand the table to your sequencer.
Configuration
Size the list first. This call is free.
curl -s -X POST "https://api.leadocean.io/v1/people/search?count=true" \
-H "x-api-key: $LEADOCEAN_API_KEY" \
-H "content-type: application/json" \
-d '{
"limit": 1,
"technologies": ["HubSpot"],
"hqCountry": ["US"],
"employeeRange": ["51-200", "201-500"],
"jobFunction": ["Sales & Business Development"],
"jobLevel": ["C-Team", "VP"]
}'Then drop count=true and set limit to 100 to get the rows. Use the account-first route if you want companies before people: POST /v1/companies/search with the same technologies filter, then GET /v1/companies/{domain}/people.
Run the same sizing step for each rival you target. Keep one list per competitor, so each opener names the right tool. Free counts let you rank rivals by list size before you write a single email.
Field mapping
| LeadOcean field | Target field | Note |
|---|---|---|
contact_data.contact_current_experiences[].company_domain | Company domain | Your join key to the CRM. |
contact_data.contact_current_experiences[].job_title | Title | Use it in the first line. |
contact_data.email_status | Send filter | Sequence verified and catch_all_valid only. |
contact_data.contact_emails[].email | From the enrich call in step 5. | |
company_detected_technologies | Competitor tool | Returned on company search. Quote it in the opener. |
Cost at 10,000 rows
A 10,000-person list costs 10,000 search records plus 10,000 enrichments for the addresses, so 20,000 records. An enrichment that finds nothing is free. The Free plan covers 1,000 records, one-off. Solo is $97 a month: 100k search records and 10k enrichments every 5 hours. Agency is $497 a month: 25M search records a month and 1M enrichments a day. The count in step 2 is free, so you see the size before you spend.
Clay's HTTP API column needs Growth, at $495 a month billed monthly or $446 billed yearly (Clay pricing, September 2026). This recipe avoids it by importing a CSV. You only need the HTTP column if you enrich rows later, at one Action per call.
Troubleshooting
| Symptom | Cause | Fix |
|---|---|---|
| Total is 0 | Competitor name misspelled, or company never crawled | Try the vendor's exact product name. Count with a wider size band. |
| 400 on the search | An enum value is not an exact string | Look it up with GET /v1/enums. |
Total comes back null with meta.totalWithheld | Too many companies match technologies for the filter to apply | Add hqCountry, industry or a tighter employeeRange, then count again. |
| List stops at 10,000 | One search hit the depth cap (meta.depthCapped) | Split by country or employeeRange. |
| 402 mid-pull | The 1,000 free records are spent | Move to Solo or Agency. |
| 429 errors | Over 5 requests a second on Free | Honor Retry-After. |
FAQ
Does the tech signal show who bought recently?
No. It shows what the site runs today, from the latest crawl. A switch last week may not show yet.
Can I check one account instead of a list?
Yes. The tech stack checker and the Tech Stack Qualifier skill check a single domain.
Which lookup tool suits this?
See best tech stack lookup tools. LeadOcean fits when you want the buyers in the same call.
Do I need a card to test it?
No. The free plan needs no card. See pricing.
Back to all integrations.
Find the buyers at companies running your competitor. Start free.
Free to start. No credit card. 1,000 records to spend whenever you like.
Get your free API key →