Blog Open the app

How to Match Tradeshow Attendee Lists Against Your CRM (Without Losing Your Mind)

May 18, 2026 · 10 min read
TL;DR

Matching tradeshow attendee lists to your CRM fails with VLOOKUP because company names are never spelled consistently. Export your CRM accounts, fuzzy match against the attendee list, segment into three buckets (existing customers, existing prospects, net-new), deduplicate the attendee list internally, then import the net-new leads. The whole process takes 30-60 minutes and saves days of manual sorting.

You just got back from LogiPharma Europe. Your badge scanner captured 340 leads. The event organizer sent over a spreadsheet with 2,300 attendees. Your VP of Sales wants a segmented list by Friday.

So you open Excel, pull up your Salesforce export, and try a VLOOKUP.

Zero matches.

You scroll through both lists. There's Pfizer in both. Obviously the same company. But one list says "Pfizer Inc" and the other says "PFIZER" and the third contact is at "Pfizer, Inc." — and VLOOKUP sees three completely different companies.

This is the moment where most RevOps and sales ops professionals start manually scanning through spreadsheets, copying and pasting, and losing their minds.

There's a better way.

Why This Matching Problem Is Harder Than It Looks

If you work in pharma, biotech, or life sciences, you already know the company name problem is worse in this industry than almost any other. Subsidiaries, divisions, holding companies, and rebrands create a nightmare of variations.

Here's what a typical tradeshow attendee list looks like compared to what's in your CRM:

Tradeshow Attendee ListYour CRMSame Company?
Pfizer IncPFIZERYes
Johnson & JohnsonJ&JYes
F. Hoffmann-La Roche LtdRocheYes
GlaxoSmithKline plcGSKYes
Novartis AGNovartis InternationalYes
AstraZeneca PLCAstraZeneca UK LimitedYes
Merck & Co., Inc.MSD (outside US)Yes
Sanofi S.A.Sanofi-AventisYes
Bristol-Myers Squibb CompanyBMSYes
Eli Lilly and CompanyLillyYes

Every single one of these is a match to a human. Every single one fails in VLOOKUP. This is why VLOOKUP can't match company names — it requires exact text matches, and company names are never exact.

The problem compounds when you add CDMOs, CROs, and smaller biotechs. "Catalent Pharma Solutions" vs "Catalent." "ICON plc" vs "ICON Clinical Research." "Thermo Fisher Scientific" vs "Thermo Fisher" vs "Fisher Scientific."

What You're Actually Trying to Answer

Before diving into the process, let's be clear about the goal. You need to segment that tradeshow attendee list into three buckets:

  1. Existing customers: Companies you already have a business relationship with. Sales should follow up differently — this is account expansion, not new business.
  2. Existing prospects: Companies already in your CRM that aren't yet customers. These leads might belong to an existing opportunity or should be routed to the rep who owns the account.
  3. Net-new leads: Companies not in your CRM at all. These need to be imported and assigned.

Without this segmentation, you're flying blind. You'll have reps cold-calling existing customers, marketing sending "get to know us" emails to people who already know you, and net-new leads sitting in a spreadsheet while someone else closes the deal.

The Manual Approach (And Why It Falls Apart)

Here's what I've seen teams do when faced with this problem:

  1. Export the CRM account list
  2. Open the tradeshow attendee spreadsheet
  3. For each attendee, manually search the CRM list for their company
  4. Copy-paste matches into a "matched" tab
  5. Repeat 2,300 times

At 30 seconds per lookup (optimistic), that's 19 hours of work. And you'll still miss matches because "Roche" doesn't look like "F. Hoffmann-La Roche Ltd" when you're scanning quickly.

Some teams try to speed this up with VLOOKUP or INDEX/MATCH. But as we've established, those return nothing useful because they require exact matches.

Others try Excel's Power Query fuzzy merge. It's better than nothing, but it's slow on large files, the threshold controls are confusing, and it misses most pharma company name variations because they're too different from each other.

The Right Process: 5 Steps to Match and Segment

Here's the process I recommend. It works whether you have 500 attendees or 50,000.

Step 1: Export Your CRM Accounts

Pull a complete list of your accounts from Salesforce, HubSpot, or whatever CRM you use. You need:

The website domain is helpful for verification but not required. Export to CSV.

Step 2: Fuzzy Match Attendees Against CRM

This is where the magic happens. You need to compare every company name in your attendee list against every company name in your CRM export — not looking for exact matches, but for similar names.

This is called fuzzy matching. Instead of asking "are these identical?" it asks "how similar are these?" and gives you a score.

You can do this with Python if you code (the rapidfuzz library is excellent), or with an online tool if you don't. Upload both files to DedupFuzzy, select the company name columns, and run the match. It compares every name against every other name and returns matches with similarity scores.

For a 2,300-row attendee list against a 5,000-row CRM export, this takes about 90 seconds.

Step 3: Segment the Results

Now you have a list of matched pairs with similarity scores. Set a threshold — I typically use 75% — and anything above that threshold is considered a match.

Cross-reference the matches with your CRM account type field:

You'll also want to review matches in the 65-75% range manually. This is where you'll find cases like "Merck" matching to "MSD" that are real matches but score lower because the names are so different.

Step 4: Deduplicate the Attendee List Internally

Before importing net-new leads, check if the attendee list has duplicates within itself. Event organizers often include the same company multiple times (different attendees, same employer).

If five people from "Roche" attended, you don't want to create five Roche accounts in your CRM. Run deduplication on just the net-new segment to identify company-level duplicates.

Step 5: Import and Route

Now you have clean, segmented data:

This approach is covered in more detail in the guide on cleaning data before CRM import.

Why This Matters: The ROI of Fast Tradeshow Follow-Up

You might be thinking: is this process really worth the effort? Can't I just import everything and sort it out later?

Let's talk about money.

A booth at LogiPharma Europe 2026 costs somewhere between $15,000 and $50,000. Add travel for four people, hotel, meals, and swag, and you're looking at $50,000 to $80,000 for a single event. CPHI Milan is even bigger — booths can run $100,000+, and the total event investment easily hits $150,000-$200,000.

The ROI of that investment depends almost entirely on what happens after the event. Research consistently shows that follow-up speed is the biggest predictor of tradeshow ROI:

If you're spending 19 hours manually matching spreadsheets, you're burning the first 2-3 days post-event. Your competitors who have their lists segmented and imported by Monday morning are already calling your prospects.

Real-World Example: Post-LogiPharma 2026 Cleanup

Here's what this looked like for a client after LogiPharma Europe 2026 (Vienna, April):

MetricBefore (Manual)After (Fuzzy Match)
Attendee list size2,347 rows2,347 rows
CRM export size4,892 accounts4,892 accounts
Time to segment~16 hours (estimated)45 minutes
Matches found with VLOOKUP23
Matches found with fuzzy matching847
Existing customers identifiedUnknown312
Existing prospects identifiedUnknown535
Net-new leads (after dedup)Unknown1,287
First outreach sentThursday (4 days post-event)Monday (same week)

The 847 matches that fuzzy matching found vs. the 23 from VLOOKUP — that's the difference between useful data and useless data. Those 824 additional matches were real customers and prospects that would have been treated as strangers.

The Pharma Tradeshow Calendar Problem

If you work in pharma commercial ops, you know the event schedule in 2026 is relentless:

If you're attending multiple events, you can't afford to spend days on manual data cleanup after each one. You need a repeatable process that works in hours, not days.

Build the workflow once: CRM export → fuzzy match → segment → dedupe → import. Then run it after every event.

What About Matching on Email Domain Instead?

Some teams try to sidestep the company name problem by matching on email domain. If two contacts both have @pfizer.com emails, they're from the same company — no fuzzy matching needed.

This works sometimes. But it fails in several common scenarios:

Domain matching is a good supplement to company name matching, not a replacement. Use both: fuzzy match on company name, then verify uncertain matches using domain when available.

Clean Your CRM First

One final point: this whole process works better if your CRM data is clean to begin with.

If your Salesforce has "Pfizer Inc," "PFIZER," "Pfizer, Inc.," and "Pfizer Global Supply" as four separate accounts, you're going to get messy segmentation results. Attendees will match to some Pfizer records but not others.

Before your next major tradeshow, consider running deduplication on your CRM itself. The guide on Salesforce duplicate account cleanup covers this process in detail. Clean CRM data makes everything downstream easier.

The Process, Summarized

  1. Export your CRM accounts to CSV (name, type, owner)
  2. Fuzzy match the attendee company names against CRM names
  3. Segment into existing customers, existing prospects, net-new
  4. Deduplicate the net-new list internally
  5. Import and route to the right people

Total time: 30-60 minutes instead of 16+ hours. First outreach: Monday instead of Thursday. ROI on your $80,000 tradeshow investment: actually achievable.

Need to match your tradeshow attendee list against your CRM? Upload your CSV and find matches in about 60 seconds — including all those pharma company name variations that VLOOKUP misses. Free for 500 rows, no signup required.

Try DedupFuzzy Free