How do I research target accounts with Exa and enrich their contacts with Clay?
You research target accounts with Exa by describing the companies you want in plain language, running that description through Exa's company search, and reading each company's own pages to confirm it fits. You then bring the companies that pass into Clay and enrich the people who work there. Target accounts are the specific companies your team has decided to pursue, and this job turns a broad profile into a named list of companies with the right people and working emails attached.
Exa is a search engine that searches by meaning instead of keywords. A query like "B2B software companies that publish their pricing and sell to finance teams" returns the companies' own websites rather than listicles and directories. Its company category limits results to company sites, its people category returns public professional profiles, and its news category returns recent stories. Each result comes back with its address and, if you ask, highlights, a summary, or the page's full text. You can run these searches through Exa's API, or build a Webset in Exa's app, which checks every match against criteria you write and lets you export the list as a CSV file.
Clay is a spreadsheet built for enrichment. You import a list into a Clay table and add columns that look up what each row is missing. From a company domain, Clay can find people at that company by title or department, then fill in each person's work email through a waterfall, which asks one data provider after another until one returns an address. It can also add company details such as headcount, industry, and funding. Every lookup uses Clay credits.
Where the handoff between Exa and Clay breaks down
The two tools connect through the company domain, and getting a clean domain out of Exa takes some work. An Exa result points to a page, which might be a homepage, a pricing page, or a blog post on a subdomain. Clay's company and people lookups work best with a bare domain such as "example.com", so someone has to trim every result down to its domain and remove the duplicates before the import. If you prefer to keep everything in Clay, you can call Exa's API from a Clay HTTP API column with your own Exa key, but you still have to design the request and pull the right fields out of the response.
The more expensive problem is what doesn't make the trip. The reason a company fits lives in Exa's highlights and page text: the line on its pricing page, the job posting, the customer story. A Clay table built from a list of domains usually keeps only the domains. By the time a salesperson opens a contact, nothing on it says why the account was chosen, so they redo the research.
The order of the work matters for the same reason. Clay enriches every row you run it on, so if your Exa list holds 120 companies and only 40 of them really fit, finding five people and five emails at each of the other 80 spends credits on 400 people nobody will contact. A good result is a short list of confirmed accounts, each with the evidence for the fit, a recent reason to reach out, and the right people with emails you can trust. Each of those people should carry the account's reasoning on their record.
Kite does that work for you. It researches and confirms the accounts in Exa first, then finds and enriches only the people at the accounts that pass, and it keeps the evidence attached the whole way through.
How to get started
Start by telling Kite which accounts you want and who you want to reach at them:
"Find 40 companies that look like our best customers, confirm why each one fits, and get me the head of finance and the controller at each one with work emails."
If your team already has a Clay table, you can start from that instead:
"Here's our Clay export of target accounts. Check which ones still fit, and fill in the people and emails we're missing."
Kite is an AI marketer. It researches your business, builds a growth strategy, and ships the work that brings you new customers. You can work with Kite in your browser or in Slack. By the time you ask, it already knows your positioning, your current customers, and your competitors from that research, so it can propose the description it plans to search with, the criteria each account has to meet, and the roles to look for. Confirm them or adjust them, and Kite starts.
You don't need an Exa account, because Exa is built into Kite and runs on Kite's own connection. You don't need a Clay account either, because Kite finds and checks work emails through its own built-in sources. Kite doesn't connect to your Clay workspace, so if your team works in Clay, attach a CSV export of your table to the conversation and Kite picks up from it. When Kite is done, it gives you a file you can import back into Clay. To have the results written into your CRM or a Google Sheet, connect that account through OAuth.
Research and enrichment are routine work, so Kite does them and then shows you the results. If you'd like to approve the account list before Kite looks up anyone's contact details, say so in your request.
How Kite researches the accounts and enriches the contacts
What should the account search describe?
Kite writes the Exa search around the traits your best customers share that show up on their own websites, because those are the traits Exa finds best. Industry, headcount, and location still matter, but a sales database already filters on those. The traits that separate a strong account from an average one are usually more specific: a company that publishes its pricing, runs a partner program, hires for a role your product supports, or serves the same niche as your customers.
Kite drafts each trait as a sentence a company would write about itself, such as "offers same-day delivery in three or more cities," because Exa matches meaning against real page text. It writes several versions of the description, since different phrasings reach different companies. It also turns your profile into a short checklist of criteria that it uses later to decide whether each company stays.
Finding and confirming the accounts in Exa
Kite runs Exa's company search with each description, collects the matches into one list, and trims every result down to its company domain. Each search returns up to 100 results, and Kite runs as many searches as the job needs, merging the results so each company appears once. When you want accounts from a particular corner of the market, it can limit a search to certain websites, such as a marketplace's partner directory or an association's member list.
Before it reads anything closely, Kite removes the companies you shouldn't pursue: your existing customers, your competitors, and any company you've told it to leave out. With your CRM connected, it checks your company records by domain so it doesn't bring back accounts your team already owns. If you started from a Clay export, it reads the domain and company name columns and runs the same checks on those rows.
Then Kite confirms the fit by reading each company's own pages, such as its homepage, pricing page, about page, careers page, and customer stories, and checking them against your criteria one at a time. For each criterion, it records whether the company meets it and keeps the page that shows it. A company that misses a criterion that matters comes off the list. When a page doesn't answer a question, Kite marks that criterion as unconfirmed, so you can see which parts of the fit are proven and which are inferred.
This is the step that saves the most money later. Every account that fails here is an account whose people never reach enrichment.
Why is now a good time to reach out?
Kite looks for a recent event at each confirmed account that gives you a reason to get in touch this month. It runs Exa's news search for each company and looks for a funding round, a new leader in the department you sell to, a product launch, an acquisition, or an expansion into a new region. Each story keeps its headline, date, and link. When the news comes up thin, Kite adds funding and hiring details from its other built-in sources, such as Crustdata and PredictLeads.
An account with a timely event moves up the list, and the event becomes the opening line of any outreach Kite writes later.
Who should you contact at each account?
Kite finds the people who hold the roles you named at each confirmed account, and it checks that each person still holds that role today. It uses Exa's people search to find public professional profiles and the company pages that name the team, and its built-in sources such as Apollo to search people at a company by title, seniority, and department.
For each person, Kite records their name, current title, LinkedIn profile, and the source that names them. When someone has moved on, it drops them or finds who holds the role now. If you started from a Clay export that already lists people, Kite keeps them, confirms each one's current role, and fills only the roles your table is missing.
Filling in the contact details
Kite finds each person's work email by asking several email providers in turn, the same way a Clay waterfall does. Each provider only gets the people every earlier provider missed, so the list fills as completely as it can without paying twice for the same person. When your Clay export already has an email for someone, Kite checks that address instead of looking up a new one.
Every email carries a confidence label, which Kite keeps exactly as the check returns it:
- Verified. The check confirmed the address exists at the company's domain.
- Catch-all. The company's mail server accepts every address, so this one can't be confirmed either way.
- Risky. The check raised doubts about the address.
- Unverified. A provider found the address, but it couldn't be checked.
- Not found. No provider returned an address, and the cell stays empty.
Kite includes only business details, so it leaves out personal email addresses and personal phone numbers even when a provider returns them.
Scoring the accounts and attaching the reasoning
Kite scores every account from one to five against your criteria and writes a one-line reason for the score, such as "Publishes per-seat pricing, sells to finance teams at mid-size companies, and hired a new controller in September." When the list runs past about fifteen contacts, Kite splits it into primary and secondary groups so your team knows where to start.
Each contact inherits their account's score, reason, timely event, and the page that proves the fit. That's the part a plain handoff from Exa to Clay loses, and it's what lets a salesperson open one contact and know what to say.
If fewer accounts qualify than you asked for, Kite tells you how many it found and which criteria knocked the rest out. A criterion that eliminates almost everyone is often one worth loosening.
What Kite reports back and where the list goes
When the work is done, Kite posts a summary in the conversation where you asked, with the full list as a table. The summary says how many companies it found, how many passed the fit check, and how many it removed and why. It also says how many people it found at each account and how many emails carry each confidence label. The list also comes as a CSV file, with one row per contact and the account's domain on every row, so you can import it into a Clay table and keep working there.
From there, Kite can put the list where your team works. With your CRM connected, it searches for existing companies by domain and existing contacts by email, then creates or updates the records, links each contact to its company, and writes the fit score and reason. It can also add the list to a connected Google Sheet. Kite can draft a personalized first email for each primary contact that opens with the account's recent event, and it asks for your approval before anything is sent. If you want new accounts as they appear, ask Kite to rerun the research on a schedule, such as every Monday, and it brings back only the companies and people that are new since the last run.
What the finished work contains
When Kite finishes, you have a researched account list with the right people at each company, and every contact carries the evidence for why they're on it.
The accounts
Each company has its name, domain, industry, size, and location, plus a fit score from one to five and a one-line reason, sorted into primary and secondary groups.
The fit evidence
For every criterion, each account shows whether it meets it and links to the page that shows it, with unconfirmed criteria marked as such.
The timely reason
Accounts that have one carry a recent event, such as a funding round or a new hire, with its date and a link to the story.
The contacts
Each account lists the people in the roles you asked for, with their current title, LinkedIn profile, the source that names them, and a work email with its confidence label.
The removed accounts
A separate list shows which companies Kite dropped and which criterion they missed, so you can check its judgment.
The file and the summary
The conversation holds the full table, the counts behind it, and a CSV file keyed by company domain that imports cleanly into Clay, your CRM, or an outreach tool.
Common questions
Should I research accounts before enriching contacts, or the other way around?
Research the accounts first. Account research is cheap compared with contact enrichment, and it decides which companies are worth any spend at all. Enriching people first means paying for emails at companies you'll later drop, and it tends to produce lists sorted by who was easy to find rather than which accounts are worth winning.
Can I run Exa searches from inside Clay?
Yes, with your own Exa API key. Clay's HTTP API column can send a request to Exa's search for each row and write the response back into the table. You design the request and pick which parts of the response to keep, so it suits teams that already build their own Clay workflows. Kite runs Exa itself, so you don't need to set this up to get the same research.
How many contacts should I find at each target account?
Find as many as the people involved in a purchase at that kind of company, which for most B2B sales is two to four. One contact per account leaves you stuck when that person doesn't reply or leaves. Tell Kite the roles that usually take part in buying your product, such as the budget owner and the person who would use it every day, and it looks for each of them at every account.
Do I need my own Exa or Clay account for Kite to do this?
No. Exa is built into Kite, and Kite finds and checks work emails through its own built-in sources, so neither account is required. If your team already works in Clay, share a CSV export of your table and Kite picks up from it, then hands back a file you can import into Clay.