How both tools work together — and how to get the most out of each.
Most recruiters are on one of these tools, or both. Here's how they actually fit together for outbound — what to run in Claude Code, what to run in Clay, and how to get the most out of each without burning your credit budget.
No Clay spreadsheets. No 14-column builds. One prompt, run from your terminal.
The old way: open Clay, add a source, wire 14 columns, map enrichments, debug formulas. The new way: tell Claude Code what you want and it builds the table for you — sourcing, enrichment, scoring, and all. The work that used to take an afternoon in the Clay UI now takes a paragraph.
Claude Code isn't just filling cells. It makes judgment calls as it works — checking a company is really in your ICP before spending on enrichment, catching bad data, and explaining every decision on the row.
Anything you'd build in Clay by hand, you can now build by describing it. The plays recruitment businesses run with this:
Clients showing buying signals — funding, headcount growth, open roles — qualified and scored before you ever reach out.
Talent pools by title, company and location from Clay's people database, filtered against your spec.
The right contact per account — founder, hiring manager or Head of Talent — with verified email and LinkedIn.
Multi-step keep/drop logic on any list — ICP fit, growth, custom ratios — with the reason recorded on every row.
Later on this page we run one of these end to end — a BD play called the TA Ratio signal — so you can see the whole flow on a real build.
If Claude Code can drive the entire pipeline, the obvious question is: why keep Clay at all? Why not build the whole thing in code and skip the subscription?
Because a vibe-coded orchestration layer breaks. Build the full pipeline in code and one of two things happens: it quietly falls over and you're debugging while a campaign is live, or an edge case you never thought of slips a broken line to a real prospect. When there is a human on the other end, you can't have either.
Clay is the observability layer. Anything a prospect will read runs through it — the exact message, every quality check, laid out where you can eyeball it and sign off. That is not something you want a black-box script deciding at 2am. Claude Code does the heavy, invisible work; Clay is the reliable gate on what actually goes out.
Reliable and observable, but you pay credits for everything and build every table by hand, column by column. Expensive and slow for work that could have been free — and rigid the moment a play needs custom logic a database can't compute.
Cheap and flexible, but brittle and blind on the prospect-facing side. Vibe-code the whole pipeline and it breaks mid-campaign, hides edge cases, and gives you no easy way to eyeball the message before it sends.
Claude Code does the cheap, flexible enrichment; Clay is the observable, QA'd final mile. The economics and flexibility of one, the reliability and observability of the other.
The teams getting the most out of this don't pick one tool — they split the work by cost and risk. Get the split right and you do more, for less, without the pipeline breaking where it actually matters.
Anything free, scalable, and not seen by a prospect: sourcing, scraping, counting, qualifying, computing signals like the TA ratio. Runs in parallel on your Claude plan, no per-row credit. Store the results.
The one thing a human will actually read — the personalised line — plus final email verification. Orchestrated, observable, QA'd. Worth paying credits for, because it is what protects the campaign.
Most people burn credits running every enrichment as a column across the whole list — including companies that were never a fit. Here's how to cut the bill without cutting quality.
Gate on ICP + cheap signals before you spend a credit. The TA Ratio drops off-fit and no-growth companies before the expensive people-search ever runs.
Scraping a homepage, counting titles, reading a pricing page — Claude Code does these for nothing. Don't pay Clay for what's free.
Cut duplicates, generic inboxes, and off-ICP rows before the list hits Clay. Every row you filter out is credits you didn't spend.
Spend where it counts — the personalised line and verified email, on the rows that already qualified. That's the 10% of the work a prospect ever sees.
Cache enriched data (a sheet, Supabase, your CRM). Re-running the same enrichment next week is paying twice for the same answer.
Run big pushes on a schedule to respect rate limits and smooth your spend, instead of hammering everything live.
This wires Claude Code to Clay so it can search data, run functions, and build tables directly from your terminal. Two things you need first:
→ Claude Code v2.1.91 or newer · → A Clay account (start free here).
/plugincommand isn't supported in every IDE surface — the terminal always works, and once installed the plugin is available everywhere.Install at User scope(global, tied to your Clay login, not committed to any repo). The restart is not optional — the connection won't register without it.
The install is quick, but a few things trip people up. Here's every issue I hit, and the fix.
The plugin installs but its commands aren't live yet. Run /reload-plugins first, then /clay:setup. This one got me — the reload is the missing step.
Your surface doesn't support the plugin marketplace. Run the install in a terminal claude session, not an IDE. Once installed it works everywhere.
The connection started before you logged in. Restart Claude Code (exit, run claude again) after /clay:setup. Required, not optional.
PATH hasn't refreshed in your current shell. Open a fresh terminal, or restart Claude Code, so the new clay binary is picked up.
/plugin or the browser login cleanly. Do the whole thing — install, /clay:setup, and the demo — in a terminal claudesession. It's the reliable path, and it looks cleaner on screen too.To make it concrete, here's one BD play built end to end with this setup. The idea: find companies that are growing but under-resourced on talent — they have open roles and nobody to fill them, which makes them the warmest client a recruitment agency can pitch. Swap in your own market, titles and thresholds and the same structure runs any signal you can describe.
Companies that are growing but carry almost no in-house Talent Acquisition, recruiter, or HR headcount are the ones quietly struggling to hire. They feel the pain every week. Most haven't fixed it because they don't want a full-time hire or a bloated agency retainer. That gap is your opening as an embedded recruiter.
Claude sources ~100 SaaS companies headquartered in the San Francisco Bay Area into a Clay table. Your base ICP.
Claude Code · freeKeep only companies that are actually growing: raised funding in the last 12 months, grew headcount over the last 6–12 months, or are actively hiring. Flat companies drop out here.
Claude Code · freeFor the growing companies, Claude finds how many employees hold a Talent Acquisition, Recruiter, or HR title, divides by total headcount, and keeps only those below 3%. Growing fast, hiring thin — your qualified list.
Claude Code · freeFor each qualifying company, Claude identifies the right person to approach — Founder / CEO, COO, or Head of Talent — and enriches their verified email and LinkedIn.
Clay · creditsA one-line reason to reach out on every row: they're growing in SF, they're thin on talent, and you can plug in as their embedded recruiter without the cost of a full-time hire.
Clay · creditsThe entire qualification funnel above runs in Claude Code for free. You only spend Clay credits on the handful of companies that survive — not all 100. That is the whole game.
Source 100 companies, check the growth signal, count TA / recruiter / HR titles, compute the ratio, qualify down to ~15. None of this spends a Clay credit.
Verified email + the personalised line — on the ~15 qualified companies only. The 85 that didn't make the cut never cost you a credit.
This is the entire build above, as one prompt — and it tells Claude exactly what to do itself and what to hand to Clay, so you only spend credits on the final mile. Swap the market, titles and thresholds for your own play, then let it run.
Build the "TA Ratio" recruiting signal — and be deliberate about credit spend. Do the cheap, invisible work yourself in Claude Code; only use Clay for the paid final-mile enrichment, and only on the rows that qualify. ICP: growing SaaS companies headquartered in San Francisco. ── CLAUDE CODE (do these yourself — no Clay credits) ── 1. Source ~100 SaaS companies HQ'd in the San Francisco Bay Area. 2. Check 1 · Growth signal: keep only companies that raised in the last 12 months, grew headcount, or are actively hiring. Drop the rest. 3. Check 2 · TA ratio: for the survivors, count employees with a Talent Acquisition, Recruiter, or HR title, divide by total headcount, and keep only those under 3%. Do the counting and the maths yourself. 4. Dedupe and drop any off-ICP or generic rows. ── CLAY (only now, and only on the qualified rows) ── 5. Create the Clay table with the qualified companies. 6. Find the best decision-maker (Founder/CEO, COO, or Head of Talent) and enrich their verified email + LinkedIn. This is the credit step — run it only on the ~15 that survived, never on all 100. 7. Add a one-line outreach angle per row: an embedded-recruiter offer, since they're growing but thin on talent. Output the final Clay table sorted by lowest TA ratio first, and tell me how many companies you qualified before spending a single Clay credit.
Drop this skill into your own Claude Code and it enforces the split automatically — every time you build a list with Clay + Claude Code, it keeps the free work in Claude Code and spends Clay credits only where a prospect will see the result.
Or copy it:
# Clay × Claude Code — Credit Optimizer ## What this does Whenever you build a list using Clay and Claude Code together, this skill does the cheap, invisible work in Claude Code (free) and spends Clay credits only on the prospect-facing final mile. ## The one rule - If it's cheap, free, or nobody sees it -> Claude Code. - If a prospect will read it -> Clay, QA'd. ## Decision tree (run on every step) 1. Can Claude Code get this for free? (scrape, count titles, read a pricing page, classify, compute a ratio) -> do it in Claude Code. 2. Is it a qualification gate? (ICP fit, growth signal, a ratio) -> run it in Claude Code BEFORE any enrichment, so off-fit rows drop for free. 3. Is it a verified email or the line a prospect reads? -> Clay final mile. Spend credits here, on qualified rows only. ## Rules 1. Qualify first, enrich second. Filter to the survivors, then enrich. 2. Do the free work in Claude Code: sourcing, scraping, counting, scoring. 3. Dedupe + drop generic / off-ICP rows before anything hits Clay. 4. Reserve Clay credits for verified email + the personalised message, on qualified rows only. 5. Store results. Never re-run the same enrichment twice. 6. Batch large runs on a schedule to respect rate limits. ## Before spending a Clay credit, check: - [ ] Qualified down to only the rows worth enriching? - [ ] Every free data point already handled in Claude Code? - [ ] Deduped and filtered? - [ ] Only enriching final-mile fields (email, personalisation)? ## Why Enriching 100 rows then filtering to 15 pays for 85 you throw away. Qualify to 15 first, then enrich — same pipeline, a fraction of the credits, and faster. --- From RecruiterGTM · recruitergtm.com/clay-x-claude-code-for-recruiters
.claude/skills/clay-claude-credit-optimizer/ in your project, paste this as SKILL.md, restart Claude Code. From then on, ask it to build any list and it defaults to the credit-optimised split.Me running the example signal end to end in Claude Code — install to enriched list.
Video dropping soon — the full build, live.
This is one integration. We install the full AI-native GTM engine — outbound, sourcing, and the Claude Code + Clay stack — inside recruitment agencies.