The short answer: To find the customers two companies share after an acquisition, pull the active customers from both CRMs and billing systems, normalize company names and domains, and match them on several signals at once: name, root domain, contact email domains, address, and corporate parent. Have a person review the uncertain matches, then sort every customer into shared, yours only, or theirs only, and give each shared account one owner and a plan. The matching is where most overlap analyses go wrong, because the same company rarely looks the same in two CRMs.
The overlap list is one of the most useful outputs of an integration. It shapes the cross-sell plan, decides who owns each relationship, and keeps your reps from cold-emailing a customer the other company already serves. This post covers how to build it accurately. For the full integration sequence, see how to consolidate CRMs across a private equity roll-up.
What the overlap list is for
A good overlap list answers four questions:
- Who do we both sell to? These accounts need one owner, a combined view of what they buy, and a decision about whether to pitch the other company's products.
- Who does only one of us sell to? These are the cross-sell targets for the other side, and usually the core of the revenue case for the deal.
- How concentrated is the combined book? A customer that is mid-sized for each company can become one of the largest for the combined business.
- Who could be hurt by the merger? Shared customers may see a price change, a new account manager, or a product being retired. You want to know who they are before they hear about it from someone else.
Why simple matching misses shared customers
Most first attempts at overlap analysis match customer names in a spreadsheet, or match on website domain. Both catch the obvious pairs and miss many of the rest, for predictable reasons:
- Names differ. "Acme Corp", "Acme Corporation", and "ACME Inc." are the same company. So may be a brand name in one CRM and a legal name in the other.
- Domains differ. One company records the parent's domain, the other a regional domain, a product domain, or an old domain from before a rebrand. One RevOps team we've worked with found SDRs reaching out to accounts that were already clients, because the client had a slightly different domain and the reps couldn't find the existing record.
- Companies rename. Startups in particular change names and domains, move from one top-level domain to another, or come out of stealth under a new name. The same team said startup renames were a steady source of problems in managing relationships.
- Structure differs. You might sell to the parent while the acquired company sells to three subsidiaries, each as its own account with no link between them.
- Look-alikes exist. Common names match unrelated companies. A customer of ours that sells to financial institutions found that a single common bank name could refer to more than a dozen different institutions.
Name-only matching produces both false matches and misses, and both kinds of error end up in the cross-sell plan.
How to find shared customers, step by step
1. Define "customer" the same way on both sides
Before matching, agree on what counts. A good default is an account with an active paid contract or subscription as of a specific date, taken from billing, not from a CRM stage or account type field that may be out of date. Decide how to treat former customers, customers in their notice period, and free or pilot accounts, and label them rather than dropping them.
2. Pull customers and their context from each system
From each CRM, export customer accounts with IDs, names, websites, billing addresses, parent accounts, owners, and any stored identifiers such as a D-U-N-S number or tax ID. Include the contacts on those accounts with their email addresses. From billing, pull the customer ID, legal name, current revenue, and products. Link each billing customer to its CRM account first, so the matched list carries revenue.
If the deal hasn't closed yet and the companies compete, customer lists are competitively sensitive. The FTC's guidance describes approaches such as masking names, sharing aggregates, and using clean teams or third parties. Ask deal counsel how the matching should be handled before close. The CRM due diligence checklist covers what else to check before then.
3. Normalize names and domains
Remove legal suffixes and punctuation, lowercase names, and reduce websites and email addresses to root domains. Standardize country and state values. Collect every domain you know for each account, including the website, contact email domains, and any alias domains, so one company with several domains can match on any of them.
4. Match on several signals and score each pair
Compare every customer on one side against every customer on the other, using normalized name, domains, contact email domains, address, phone, and shared contacts. Score each candidate pair. Two accounts that share a root domain and several contact email addresses are almost certainly the same company. Two accounts with similar names, different domains, and different cities need a person to look.
Where the data isn't enough, look the company up. Checking whether a domain redirects to another, whether a company was acquired or renamed, or which parent a subsidiary belongs to settles many uncertain pairs quickly.
5. Match at both the entity and the parent level
Record two kinds of overlap. Entity-level overlap is the same legal entity or account in both CRMs. Parent-level overlap is two different entities under the same corporate parent, such as your customer being the parent and theirs a subsidiary. Both matter for the cross-sell plan, and they need different handling in the merged CRM: entity matches are merged, parent matches are linked in a hierarchy.
6. Review the uncertain matches and record why
Send medium-confidence pairs to a person who knows the customers, with the evidence for each: shared domains, shared contacts, addresses, and anything you found when looking the company up. Record the decision and the reason. For look-alikes that are confirmed as different companies, keep a note so nobody merges them later.
A wrong match costs more than a missed one. Merging two different customers crosses their contacts and activity, and splitting them again is manual work. In HubSpot, for example, a merge moves every association and activity from both records onto one, and merged records can't be unmerged.
7. Sort every customer into a bucket and assign an owner
With matches settled, every customer falls into one of three groups: shared, yours only, or theirs only, with parent-level relationships flagged separately. For shared accounts, decide who owns the relationship. Survivorship rules cover how to settle ownership and conflicting field values when the records merge.

8. Add what each side sells to each customer
For each customer, list the products they buy from each company, current revenue, renewal date, and the account owner on each side. This turns the list from a match report into a plan. A shared customer that buys your core product and not theirs is a cross-sell opportunity. One that buys overlapping products from both may be a pricing or consolidation conversation.
Watch for customers hiding as prospects
The overlap you find among customers is only part of the picture. Each CRM also has prospect accounts, and some of them are the other company's customers. After the merge, those prospect records get routed to SDRs, added to sequences, and sent cold outreach, and a customer who has paid for years gets an introductory email.
Match the other company's customers against your prospect accounts as well as your customer accounts, and flag every hit before any outbound runs from the combined CRM. The same check is worth repeating after cutover, because new prospect records get created for existing customers whenever an enrichment tool or list import can't find the original.
Turn the list into a cross-sell plan
Hand each sales leader the customers the other side has that they don't, with the context from the other CRM: who the contacts are, what the customer buys, and who owned the relationship. Decide which accounts get a joint approach and which get a warm introduction from the existing owner.
Then measure against the list. Tag cross-sell opportunities in the CRM with the source account, and report pipeline and closed revenue from the overlap list each month. That gives the board a direct answer to whether the cross-sell part of the investment case is working.
Keep the overlap list current
The list starts going stale on the day you build it. New customers sign, existing ones churn, and reps on both sides create new records. If the companies stay on separate CRMs for a while, rerun the matching regularly. Once they share one CRM, the overlap becomes one account per customer, and the job shifts to keeping duplicates from coming back.
How Quill helps
Quill's agents read both CRMs at once, whether Salesforce, HubSpot, or a mix, and match the same customer using names, domains, contact emails, addresses, and hierarchy, looking companies up when the CRM data isn't enough. Each proposed match comes with its evidence, and a person approves the uncertain ones. The result is the shared, yours-only, and theirs-only list, plus the prospect records that are really customers. See CRM Migration or Merger and Quill for private equity, or book 15 minutes.
This post is general information, not legal advice. Talk to your own deal counsel about what you can request, share, and review before a deal closes.
Frequently asked questions
What is a customer overlap analysis in M&A?
It is the process of finding which customers the buyer and the acquired company share, and which customers each has that the other doesn't. It supports the cross-sell plan, ownership decisions, customer communication, and concentration analysis.
Why can't I just match customer names in a spreadsheet?
Because the same company is often recorded under different names, domains, or entities in two CRMs, and different companies can share a common name. Name-only matching misses real overlaps and creates false ones. Matching on domains, contact emails, addresses, and corporate parent together is far more accurate.
Can we do overlap analysis before the deal closes?
It depends on the deal, so ask deal counsel first. When the companies compete, customer lists are competitively sensitive, and the FTC's guidance describes approaches such as clean teams, third parties, and sharing only aggregated results.
How do you handle subsidiaries in overlap analysis?
Match at both the entity level and the parent level. Two records for the same entity get merged; two different entities under the same parent get linked in a hierarchy. Both count as overlap for the cross-sell plan, but they are handled differently in the CRM.
How do you stop reps from prospecting the other company's customers?
Match the other company's customers against your prospect accounts, not just your customer accounts, and flag every hit before outbound runs from the combined CRM. Repeat the check after cutover, since integrations and imports keep creating new prospect records for existing customers.