You get a Clay table where a company domain becomes a sourced fact sheet, then an ICP and a competitor brief. LeadOcean supplies the facts: industry, headcount, revenue, headquarters, funding and website technologies. Clay's own template does the same in two steps: it enriches firmographics, then runs two ChatGPT prompts on that data (Clay template, September 2026). This recipe swaps the enrichment step for one LeadOcean call. Clay's HTTP API column needs Growth or higher (Clay pricing, September 2026).
How it works
- Add your domains. One text column named
Domain, bare domains likeacme.com. Striphttps://andwww.. - Add an HTTP API column. Method POST, URL
https://api.leadocean.io/v1/companies/enrich, body{ "domain": "/Domain" }, headerx-api-key. - Return the company block. Set the field path to
data.company_data. Clay documents dot notation for field paths (Clay docs, September 2026). - Split out the fields you need. Add formula columns for industry, headcount, revenue, country and funding. See the mapping below.
- Add an ICP column. An AI column whose prompt names the account's industry, headcount, revenue and technologies and asks for the buyer, the pain and the trigger. Write the prompt yourself, or start from Enrich customer profiles.
- Add a competitive brief column. A second AI column that reads the same fields and the ICP, and writes positioning, likely rivals and one angle for outreach.
- Test on five rows, then run the table. Use an "Only run if" formula so finished rows are skipped.
For the logic behind step 5, read What is an ICP. For the same brief built in Claude, see competitive intelligence with Claude.
Configuration
The HTTP column in Clay:
Method: POST
URL: https://api.leadocean.io/v1/companies/enrich
Headers: x-api-key: <your LeadOcean key>
content-type: application/json
Body: { "domain": "/Domain" }
Field paths to return:
data.company_dataTest the same call from a terminal with a placeholder domain.
curl -s -X POST "https://api.leadocean.io/v1/companies/enrich" \
-H "x-api-key: $LEADOCEAN_API_KEY" \
-H "content-type: application/json" \
-d '{"domain":"acme.com","slim":true}'A company LeadOcean holds returns 200. One it does not hold returns 404, which costs nothing (LeadOcean docs, September 2026). Pass slim: true to drop the long technology list and keep the prompt short.
Field mapping
| LeadOcean field | Clay column | Note |
|---|---|---|
company_data.company_name | Company | Use it as the subject of both prompts. |
company_data.company_industries[] | Industry | A list. Take the priority 1 entry. |
company_data.company_employees.number_of_employees | Headcount | Banded code sits beside it. |
company_data.company_revenue_in_usd | Revenue (USD) | Thinly held. Treat it as a bonus. |
company_data.company_primary_address.country_code | HQ country | Two-letter code. |
company_data.company_funding.last_round_type | Last round | Absent for most companies. |
company_data.company_number_of_detected_technologies | Tech count | Full list needs slim: false. |
Cost at 10,000 rows
10,000 domains cost LeadOcean up to 10,000 records, with no per-record price on a paid plan.
LeadOcean. A company found is one record. Free holds 1,000 records for life, so it covers a test of one tenth of the list. Solo is $97 a month and Agency is $497 a month (LeadOcean pricing).
Clay. Each HTTP API call uses one Action, so enrichment uses 10,000 Actions. Growth includes 40,000 Actions a month and costs $495 a month billed monthly, or $446 billed yearly (Clay pricing, September 2026). The two AI columns add 1 Action per AI run, so 20,000 more, and use Data Credits unless you connect your own AI key (Clay docs, October 2026). That is 30,000 Actions, inside Growth's 40,000.
Troubleshooting
| Symptom | Cause | Fix |
|---|---|---|
| No HTTP API column | Clay Free or Launch plan | The column starts on Growth. Or run the calls from a script. |
| 401 on every row | Wrong header | Use x-api-key, not Authorization. |
| 404 on some rows | No record for that domain | Expected and free. Drop www. or leave the row empty. |
| Brief reads generic | Empty revenue or funding | Tell the prompt to skip fields that are null. |
| 402 mid-run | The 1,000 free records are spent | Move to Solo or Agency, or stop the run. |
| 429 errors | Over 5 requests a second on Free | Lower Clay's per-column rate limit and honor Retry-After. |
FAQ
Does every company come back with revenue and funding?
No. Both are thinly held and null is normal. The prompts should say so, or they invent figures.
Can I find lookalike accounts instead of enriching a list?
Yes. Company search filters by industry, headcount and country, and GET /v1/companies/count sizes the list for free before you spend a record.
Can I run this without Clay?
Yes. It is one HTTP call per domain. Any script or the LeadOcean MCP server can pass the same fields to a model.
Do I need a card to try it?
No. The free plan needs no card and gives 1,000 records for life.
Back to all integrations. See pricing.
Build ICPs and briefs from real company data. Start free.
Free to start. No credit card. 1,000 records to spend whenever you like.
Get your free API key →