How to Qualify & Enrich Contacts with AI
Your best reps already know who's worth reaching out to. Here's how to extract that judgment, document it, and run it at scale.
Sourcing contacts inside an account is where most GTM teams waste a lot of time. And it usually starts with a data filter. "VP of Sales" at a 50-person company and "VP of Sales" at a 5,000-person company are different jobs. Same title, different universe. But most teams run the same filter on both, load reps with contacts that were never going to convert, and then wonder why they aren’t seeing results.
Here’s what’s actually happening: you’re outsourcing judgment to a database. And databases don’t know what good looks like at your company - you do.
Ready to get started? Grab the Contact Qualification & Enrichment skill on GitHub and put it to work right away. Otherwise, read on for how it works.
The Problem
Most teams treat contact sourcing like a data pull. They set some title and seniority filters in Sales Nav or ZoomInfo, export the list, push it to reps. Reps then spend hours clicking through profiles trying to figure out who’s actually worth reaching out to. There’s no documented logic, no consistency across the team, and the criteria live in one senior person’s head. When that person leaves or scales past the point of doing it themselves, the judgment goes with them.
What AI Makes Possible
You can extract that judgment, document it, and run it programmatically — so every contact in every account gets evaluated against the same criteria, at scale, without burning rep time.
Here’s how to do it.
Step 1: Validate Your Contact Theory Against Reality
Before you go evaluate individual people, pressure-test your assumptions about who you’re actually selling to.
Most teams have a working theory about which personas matter — job functions, seniority levels, types of roles. Write that down. Then export two things from your CRM: contacts who came inbound in the last 6–12 months, and contacts associated with closed deals. Upload both to Claude or ChatGPT and ask it to synthesize the patterns.
Example prompt:
“Here are two CSV exports: recent inbound contacts and contacts linked to closed deals. Identify which job functions, titles, and seniority levels appear most frequently. Flag any titles or functions that appear often in closed deals but not in our working persona list.”
You’re looking for surprises. Roles you didn’t expect. Functions that keep showing up in your deals that aren’t in your target list. This gives you a validated filter set — grounded in what actually worked, not just what sounds right.
Step 2: Do a Manual Review with Dictation Running
Pull contact lists from a handful of accounts — mix of segments and verticals if you have them — and have your most experienced person go through each profile on LinkedIn, out loud.
The key is capturing the why in real time. Use a dictation tool (Wispr Flow and Monologue both work well) and have them narrate as they click: what catches their eye, what makes them hesitate, who they’d reach out to first and why. Don’t filter it — you want the raw reasoning, not a polished summary.
To get the contacts: build a search in Sales Navigator using the filters from Step 1, then export the leads using a browser automation or export tool — PhantomBuster, Evaboot, and Captain Data all handle this well.
What you’re listening for:
Language on the profile that signals forward-thinking vs. entrenched — are they describing outcomes or tasks?
Seniority and growth trajectory — have they moved up within a company over time?
Whether the title reflects real ownership or a narrow individual contributor role
How company size changes what the title actually means
That last one matters more than most teams account for. A “Director of Sales” at 50 people probably owns the entire function. Same title at 2,000 people might manage one region. You may end up needing separate criteria by segment.
Step 3: Synthesize Patterns with AI
After the review, upload your notes (or the dictation transcript) to Claude and ask it to synthesize what you found.
Example prompt:
“Here are my notes from reviewing [X] contact profiles. Identify the consistent signals that made someone a ‘yes’ vs. a ‘no.’ Group them by theme — seniority signals, language patterns, role ownership, etc. Then flag any patterns that were specific to a company size or segment.”
You’re not asking AI to invent your criteria. You’re asking it to find the shape of something you already know. The output should read like a documented version of what your best reviewer has been doing in their head.
Review the synthesis carefully. Push back where it oversimplified. Add nuance where it missed it. What you end up with is a qualification framework — your actual criteria, written down, ready to be turned into a prompt.
Step 4: Build Your Classification and Qualification Agents — Separately
Here’s something learned the hard way at MedScout: don’t try to classify and qualify in one step. When you combine them, the assessment gets muddy — you end up trying to figure out what someone does and whether they’re relevant at the same time, and both answers suffer.
Split it:
Classify first
Build a prompt that maps each contact to a job function based on their LinkedIn profile. What bucket do they actually belong in — sales, ops, marketing, finance, etc.? The same title can mean different things at different companies. Getting the function right makes the fit judgment cleaner.
Example prompt:
“Based on this LinkedIn profile, classify this person’s primary job function into one of the following categories: [your function list]. Use their title, current responsibilities description, and career history. If ambiguous, default to the function most represented in their recent roles.”
Qualify second
Now that you know what they do, assess fit. Are they the kind of person who would drive or shape an evaluation of a tool like yours? The answer is a holistic judgment — seniority, scope, function ownership, how they describe their work.
Structure the output in tiers that map to action, not just quality:
Best Fit: worth prioritizing in outreach — they’d drive or heavily influence the evaluation
Good Fit: worth having in the CRM and engaging, but not the person you lead with
Not a Fit: not worth the outreach
If your segments are meaningfully different (say, SMB vs. enterprise), build separate qualification prompts for each. The buying dynamics are different enough that one set of criteria won’t cover both cleanly.
Step 5: Operationalize the workflow
Once your prompts are tested and trusted, load them into a workflow automation platform. Clay, Apollo, and Cargo are all built for this kind of multi-step enrichment and qualification pipeline.
The workflow: build your contact list in your contact database → export the leads → enrich with LinkedIn profile data → run your classification prompt → run your qualification prompt → push qualified contacts to your CRM with source and date tagged.
A few things to get right on the back end:
Deduplicate against existing CRM records before pushing new contacts
Tag enrichment source and date on every record — you’ll thank yourself when you need to audit data quality later
Don’t enrich every contact at every account. Enrich the people who matter at accounts that are already qualified. Sequencing matters: account qualification first, then contact qualification, then enrichment
The goal is flipping the work. Instead of each rep spending hours in Sales Nav trying to figure out who to reach out to, the system surfaces the right people with enough context for reps to react and make the final call. That time savings compounds fast.
What Good Looks Like
A well-built contact qualification agent returns something like this for each contact:
Function classification: RevOps / Sales Operations
Fit tier: Best Fit
Reasoning: Director-level with explicit ownership language — describes “building the forecasting process from scratch” and “owning the tech stack.” Company is 300 people, so this title reflects real scope. Career history shows consistent growth within the function.
Suggested action: Prioritize in outreach. Likely economic or technical evaluator.
That output is what you want reps reacting to — not raw Sales Nav profiles.
Watch-Outs
Don’t skip the manual review phase. It’s tempting to jump straight to building prompts. But your AI agent is only as good as the criteria you give it — and those criteria have to come from real judgment applied to real profiles. The manual step isn’t inefficient. It’s the input.
Segment earlier than you think you need to. If your ICP spans SMB and enterprise, don’t try to use one prompt for both. The signals that make someone a “Best Fit” at a 50-person company look different than at a 5,000-person company. Build for that early, or you’ll rebuild later.
Tools Referenced in This Guide
This guide focuses on the methodology — how to extract, document, and operationalize your team’s contact qualification judgment. The specific tools are interchangeable. Here are the categories and options mentioned:
- Contact database (search and filter potential contacts by title, function, seniority, company): LinkedIn Sales Navigator, ZoomInfo, Apollo
- Contact export (pull contact lists from your database into a workable format): PhantomBuster, Evaboot, Captain Data
- Enrichment & workflow (enrich profiles with additional data, run AI prompts at scale, manage the pipeline): Clay, Apollo, Cargo
- Dictation (capture spoken reasoning during manual review): Wispr Flow, Monologue
- AI assistant (synthesize patterns, build classification and qualification prompts): Claude, ChatGPT
Pick what works for your stack. The frameworks in this guide work across all of them.
Special thanks to the MedScout team for sharing their contact qualification workflow, which shaped several of the frameworks in this guide.



