How do I keep current customers and open deals out of my outbound list?
You keep current customers and open deals out of an outbound list by comparing every company on it with your CRM and removing anyone whose company is already a customer or already has a deal in progress. The check has to happen at the company level. A prospect list usually contains people your CRM has never seen, so searching for each person's email address finds almost nothing. The VP of marketing you just found at your biggest customer is a new contact, but their company is the one that matters.
A cold email to a current customer is awkward, and it tells them you don't know who they are. A cold email to someone at a company in the middle of a deal is worse, because it can undercut the salesperson who owns that deal. A good result is a list where every remaining company has no customer relationship and no open deal, and where the people you removed are recorded with the reason.
Most teams do this by hand. They export the companies marked as customers from the CRM, export the companies attached to open deals, and compare both exports with the prospect list in a spreadsheet using the company domain. That works when it's done carefully, but it's slow, and it goes stale quickly. A deal opened on Tuesday won't be in the export you made on Monday.
Your tools help in pieces. HubSpot, Salesforce, Pipedrive, and Attio all record which companies are customers and which deals are open, and you can build a saved view or list of them inside the CRM. HubSpot also matches contacts by email address when you import a file, so it won't create a second record for someone it already has. Many outreach tools, such as Instantly, let you upload a blocklist of domains that should never be emailed. None of these, though, takes a list you built somewhere else, checks every company on it against your current customers and open deals, and hands back the clean list.
That comparison is the job Kite does. It reads your customers and open deals from your CRM at the moment you ask, matches your prospects to them company by company, and removes the people who shouldn't receive a cold email.
How to get started
Start by telling Kite which list you want cleaned and which CRM to check it against. You can ask in the Kite web app or in Slack:
"Here's the list for next week's outbound campaign. Take out anyone at a current customer or a company with an open deal in HubSpot."
Kite is an AI marketer. It researches your business, builds a growth strategy, and ships the work that brings you new customers. Because it has already researched your company, it knows your customers from your website and public sources, and it knows your competitors. Your CRM is still the authority on who is a customer and which deals are open, so Kite checks it directly rather than relying on what it learned in public.
You'll need to connect your CRM account through OAuth so Kite can read your companies, contacts, and deals. The list itself can come from anywhere. You can upload a CSV file, point Kite at a spreadsheet, or ask it to build the list first, in which case it runs this check as part of the build.
Kite proposes what will count as a customer and what will count as an open deal in your CRM, based on how your account is set up. Confirm or adjust those definitions, and Kite starts.
How Kite removes customers and open deals from a prospect list
What counts as a customer or an open deal?
Kite starts by reading how your CRM marks customers and closed deals, because every account records them a little differently. It reads your deal pipelines and their stages so it knows which stages mean the deal is still open and which mean it's won or lost.
In each CRM, Kite looks at these records:
- HubSpot. Companies with a lifecycle stage of Customer, and deals in any stage that your pipeline doesn't mark as closed won or closed lost. Kite reads each deal's associated company and contacts.
- Salesforce. Accounts whose Type marks them as a customer, such as "Customer - Direct," and opportunities that aren't closed. Kite reads each opportunity's account and stage, and it also checks your open leads.
- Pipedrive. Organizations with won deals, and deals with a status of open. Kite reads each deal's organization, person, pipeline, and stage.
- Attio. Company records and deal records, using the stage on each deal to tell open from closed.
Many teams track customers in their own way, such as a custom field or a list of active accounts. Kite reads your custom properties, along with saved lists in Salesforce, Pipedrive, and Attio. When your team uses one of them to mark customers, Kite uses it too. In HubSpot, mark customers with a property rather than a list.
This is also where you settle the cases that depend on your sales motion. A deal lost two weeks ago probably shouldn't get a cold email, while one lost a year ago might be fair game again. A churned customer might belong in a win-back campaign rather than in cold outbound. Kite asks how you want each of these handled when your CRM contains them, and it applies your answer to every company on the list.
Matching each prospect to a company in your CRM
Kite matches each prospect to your CRM by company domain first, because the domain is the most reliable way to tell one company from another. It takes the domain from the company's website or from the person's work email, then searches your CRM's companies, accounts, or organizations for that domain.
Domains don't always line up. A company might use one domain for its website and another for email, or it might be a subsidiary of a customer that sits under a different name. So Kite also searches by company name, and it treats a close but uncertain match as a question for you rather than a silent removal. A list that wrongly drops a good prospect costs you a real opportunity, so Kite keeps those cases visible.
Kite also searches your CRM contacts by email address. That catches the people who are already in your CRM, such as a contact at a prospect company who was emailed last quarter, and it brings back their owner and their recent activity.
Who comes off the list?
Kite removes every prospect whose company is a current customer or has an open deal, and it records the reason beside each one. For a customer, the reason names the company record. For an open deal, it names the deal, its stage, and its owner, so you can see exactly whose account you were about to email.
Kite also removes anyone who has opted out of email from you, using the unsubscribe status your CRM records, and anyone at a competitor. Your competitors are already in Kite's research on your market, so it doesn't need a separate list.
What about people who left a customer?
Kite flags former customer contacts instead of removing them, because a person who used your product at their last company is often the best prospect on the list. Kite confirms each prospect's current role and company from their public profile. When someone on your list appears in your CRM as a contact at a customer but now works somewhere else, Kite keeps them on the list and notes where they came from. That gives your outreach a real reason to get in touch.
What Kite reports back
When the check is done, Kite reports back in the conversation where you asked. It says how many prospects it started with, how many it removed for each reason, and how many remain. Then it lists the removed people with their company, the reason, and the deal owner where there is one, followed by any uncertain matches waiting for your decision.
The clean list goes wherever you need it next. Kite can write it to a spreadsheet, add the remaining people to your CRM as new contacts after checking for duplicates, or use it to write a personalized outreach email for each person. Kite asks for your approval before it sends any outreach.
Because deals open every day, the check is most useful right before a campaign goes out. You can ask Kite to run it again on the same list before each send, or to repeat it on a schedule for a list you add to every week.
What the finished work contains
When Kite finishes, you have a prospect list you can send to without worrying about customers or live deals, and a clear record of what came off it.
The clean list
Every remaining prospect with their name, title, company, company domain, work email, and LinkedIn profile, plus a note on any former customer contacts worth prioritizing.
The removed list
Each person Kite took out, with their company and the reason: current customer, open deal with its stage and owner, opted out, or competitor.
Uncertain matches
The companies that looked like a customer or a deal account but didn't match cleanly, such as a similar name on a different domain, waiting for your call.
The summary
The counts for each reason, and the definitions of customer and open deal that Kite used, so the next person who runs the check gets the same result.
Common questions
Should I remove companies with closed-lost deals?
It depends on how recently the deal was lost and why. A deal lost in the last few months usually means the buyer just said no, so a cold email feels like you weren't listening. An older loss can be a good target, especially if the reason was timing or budget. Kite reads the close date on each lost deal and applies whatever cutoff you choose.
Can I do this inside HubSpot without another tool?
Partly. You can import your prospect list into HubSpot, which matches contacts by email address, and then build a list that filters out contacts whose company is a customer or has an open deal. The catch is that importing creates records for every prospect, including the ones you planned to drop, and an email match misses new people at companies you already know. Checking at the company level before anything reaches your CRM keeps your records clean.
Should I remove people at a company that's in a partner relationship with us?
Usually yes, because partners, like customers, expect to hear from the people who manage the relationship rather than from a cold sequence. If your CRM marks partners with a company type or a custom field, or with a list in Salesforce, Pipedrive, or Attio, tell Kite and it removes those companies along with your customers.