What you'll build: An automated pipeline that scrapes event attendee lists from platforms like Luma, qualifies every attendee against your ICP using AI, and exports qualified leads with confidence scores — ready for outreach. Time: 6-10 hours manually | 30-45 minutes with AI What you need: Target event topics and locations, your ICP definition, an Apify account (or similar scraping tool)
Why This Matters
Events are goldmines for prospecting. When someone attends a "GTM Engineering" meetup or an "AI for Sales" conference, they've self-selected as interested in your category.
That's higher intent than any job title or company size filter you'll find on Apollo. The problem: manually scrolling through Luma attendee lists, checking LinkedIn profiles, and deciding who's worth reaching out to is brutally time-consuming.
A single event might have 200 attendees. You'd spend 3-4 hours just qualifying them — and that's one event. If you're monitoring 10-20 events per month across multiple cities, you need automation or the process breaks down immediately.
How to Do It with AI
We'll use Claude Code for this entire workflow — it's ideal for scraping, data processing, and batch qualification. The pipeline has three phases: scrape attendees, qualify with AI, and export results.
Step 1: Find Relevant Events
Start by identifying events that attract your target audience. Claude Code can search event platforms programmatically:
Search Luma for events matching these criteria:
Topics: "AI", "GTM", "growth marketing", "startup growth", "SaaS sales"
Location: San Francisco (also try "Bay Area" and "Silicon Valley")
Timeframe: Past 30 days
For each event found, extract:
- Event name and URL
- Date
- Number of attendees (if visible)
- Host/organizer
Run multiple keyword variations in parallel to maximize coverage.
Pro tip: Don't just search your exact category. Adjacent events often have better leads. A "Revenue Operations" dinner might be more valuable than a "Sales Tools" webinar because the attendees are more senior and the crowd is smaller. From a real run with 5 keyword variations across San Francisco:
Search Term | Events Found | Total Attendees
Search Term: "AI San Francisco" | Events Found: 12 | Total Attendees: ~340
Search Term: "Growth Marketing San Francisco" | Events Found: 6 | Total Attendees: ~180
Search Term: "GTM San Francisco" | Events Found: 3 | Total Attendees: ~85
Search Term: "SaaS Sales Bay Area" | Events Found: 4 | Total Attendees: ~120
Search Term: "Startup Growth Silicon Valley" | Events Found: 5 | Total Attendees: ~150
Search Term: Total (before dedup) | Events Found: 30 | Total Attendees: ~875
Step 2: Extract Attendee Data
For each event, scrape the full attendee list. Luma and similar platforms often expose guest lists with bios, titles, companies, and social links:
For each event found, extract all attendees and hosts.
For each person, pull:
- Name
- Event role (host, speaker, attendee)
- Bio (from their Luma profile)
- Title and company (if available)
- LinkedIn URL
- Twitter/X URL
Then:
1. Merge all results into one dataset
2. Deduplicate by name (case-insensitive)
3. Report: total before dedup, unique after dedup, how many have LinkedIn
Using a scraping tool like Apify, Claude Code can process all events in parallel. A typical run:
- 875 total results across 30 events
- ~420 unique people after deduplication
- ~310 have LinkedIn profiles (74%)
- Processing time: ~5 minutes
Step 3: Qualify with AI
This is where the magic happens. Instead of manually reviewing 420 profiles, have AI qualify every single one against your ICP:
Qualify each attendee against this ICP:
QUALIFIED if they match ANY of these:
- Founder or C-level at a B2B SaaS company (Seed to Series B)
- VP/Director of Sales, Marketing, Growth, or RevOps at a startup
- Head of Growth or Demand Gen at a company with 10-200 employees
- GTM Engineer or Growth Engineer title
DISQUALIFIED if:
- Student or job seeker (attending to network, not a buyer)
- Works at a company with 1,000+ employees (too big for our ICP)
- Non-GTM role (engineering, product, design) unless founder
- Agency or consultant (not our target buyer)
For each person, return:
- qualified: yes/no
- confidence: high/medium/low
- reasoning: 1-2 sentences explaining why
Claude Code can process these in batches of 15-20, running multiple batches in parallel. From a real qualification run on 420 attendees:
Result | Count | Percentage
Result: Qualified (High confidence) | Count: 38 | Percentage: 9%
Result: Qualified (Medium confidence) | Count: 52 | Percentage: 12%
Result: Qualified (Low confidence) | Count: 24 | Percentage: 6%
Result: Disqualified | Count: 306 | Percentage: 73%
Result: Total qualified | Count: 114 | Percentage: 27%
27% qualification rate is typical for well-targeted events. Compare that to a bought lead list where qualified rates are often 5-10%.
Step 4: Enrich and Prioritize
For qualified leads, add context that makes outreach personal:
For the top 50 qualified leads (High and Medium confidence):
1. Note which event(s) they attended — this is your outreach hook
2. If they were a host or speaker, flag them (higher authority signal)
3. Group by company — multiple attendees from one company = strong signal
4. Sort by: hosts/speakers first, then High confidence, then Medium
For leads with LinkedIn URLs, note their most recent post topic
if visible — another personalization layer.
The event attendance itself is the personalization. "I saw you at the GTM Engineering meetup last week" is a warm opener that cold email can never replicate.
Step 5: Export and Outreach
Export the qualified leads to a Google Sheet or CSV, ready for your outreach tool:
Create a Google Sheet with two tabs:
Tab 1 — "Qualified Leads" (sorted by confidence):
Name | Title | Company | LinkedIn | Event Name | Event Date |
Confidence | Reasoning | Outreach Hook
Tab 2 — "All Attendees" (full dataset):
All columns from the scrape + qualification results
Also generate a quick summary:
- Total events scraped
- Total attendees processed
- Qualified count and top disqualification reasons
- Top 5 leads with suggested outreach angles
What You Get
From a single 40-minute run across one city:
Metric | Result
Metric: Events scraped | Result: 30
Metric: Attendees extracted | Result: 420 (unique)
Metric: Qualified leads | Result: 114 (27% rate)
Metric: High-confidence leads | Result: 38
Metric: Time | Result: ~40 minutes
Metric: Cost | Result: ~$30/mo Apify + pennies in AI tokens
Doing this manually — finding events, scrolling through attendee lists, checking LinkedIn profiles one by one — would take 6-10 hours for the same coverage.
And you'd only do it once before abandoning the process.
The Easier Way
Goose monitors event platforms for relevant events in your target markets, automatically scrapes attendee lists, qualifies every person against your ICP, and surfaces the top leads with suggested outreach angles — all without you configuring scrapers, writing qualification prompts, or managing batch processing.Try Goose free →
New qualified leads show up in your Slack channel with LinkedIn links and context.Try Goose free →
What to Do Next
- How to Automate Cold Email Sequences with AI — Turn your qualified event leads into personalized outreach campaigns
- How to Set Up Signal-Based Prospecting from Scratch Using AI — Add event prospecting to your multi-signal pipeline