Build a Lead Gen Machine with DenchClaw, Part 1: Capture
Part 1 of 5: Build a lead capture system with DenchClaw. Set up your lead objects, import sources, browser-based capture, and enrichment pipeline.
Build a Lead Gen Machine with DenchClaw, Part 1: Capture
This is the first article in a five-part series on building a complete lead generation machine with DenchClaw. Each part focuses on one phase of the lead lifecycle:
- Part 1: Capture ← You are here
- Part 2: Enrich
- Part 3: Qualify
- Part 4: Outreach
- Part 5: Close
By the end of all five parts, you'll have an end-to-end lead generation system running locally, with AI handling enrichment, qualification, and outreach — and you controlling the final decisions.
What Is Lead Capture?#
Lead capture is getting potential customer information into your system in the first place. Every lead generation system starts here. The quality of your pipeline depends entirely on the quality of your capture.
There are three categories of lead sources:
- Import sources — CSV exports from LinkedIn, Apollo, conferences
- Live capture — forms, browser scraping, direct entry
- Inbound signals — website visitors, email replies, social mentions
DenchClaw handles all three.
Step 1: Set Up Your Lead Object#
Before you can capture leads, you need a place to put them. Install DenchClaw (npx denchclaw) if you haven't, then:
Create a Leads object with these fields:
- Full Name (text)
- Email (email)
- Phone (phone)
- Company (text)
- Title (text)
- Source (enum: LinkedIn/Apollo/Conference/Referral/Inbound/Manual/Other)
- Source Detail (text) — e.g., "LinkedIn search: VP Sales NYC"
- Status (enum: New/Enriching/Enriched/Qualifying/Qualified/Disqualified/Converted)
- Lead Score (number, 0-100)
- LinkedIn URL (url)
- Website (url)
- Location (text)
- Industry (text)
- Company Size (enum: 1-10/11-50/51-200/201-1000/1000+)
- Added Date (date)
- Notes (richtext)
This schema tracks not just who the lead is, but where they came from and how far through your pipeline they are.
Step 2: Import Leads from LinkedIn#
LinkedIn is the best source for B2B leads. DenchClaw can capture from it in two ways:
Method 1: Search Export via Browser
Open LinkedIn and search for "VP of Sales" at Series B SaaS companies in New York. Import the top 50 results into my Leads object.
DenchClaw opens LinkedIn (you're already logged in), runs the search, and pulls: name, title, company, LinkedIn URL, and location. It inserts them into your Leads object with Source=LinkedIn.
Method 2: CSV Import from Sales Navigator
Export your Sales Navigator lead list as CSV, then:
Import leads from [attach linkedin-export.csv] into my Leads object. Source: LinkedIn. Map: First Name + Last Name → Full Name, Job Title → Title.
Step 3: Import from Apollo or Similar Tools#
If you use Apollo, Hunter, or similar prospecting tools:
Open Apollo.io and search for CTOs at fintech companies with 50-500 employees in San Francisco. Export the top 100 and import into my Leads object.
Or import from a CSV export:
Import from apollo-export.csv into Leads. Source: Apollo. Map all matching fields automatically.
Step 4: Manual Lead Entry#
For one-off leads from conversations, events, or referrals:
Add a lead: Sarah Chen, VP of Sales at Stripe, sarah@stripe.com, referred by Marcus Liu. Source: Referral.
Or via Telegram after a conference:
New lead: just met Tom Richards, CTO at Finvest, gave me his card. tom@finvest.io. Met at SaaStr 2026.
DenchClaw creates the entry, sets Source=Conference, adds a note with the context, and sets Added Date to today.
Step 5: Form-Based Lead Capture#
For inbound leads from your website:
Create a simple lead capture form as a Dench App:
Build a lead capture form app that collects: Name, Email, Company, Role, What they're looking for. On submit, create a Lead entry with Source=Inbound and send me a Telegram notification.
Deploy this with the here-now skill:
Publish the lead capture form to a public URL
Embed that URL on your website or share it in email signatures.
Step 6: Inbound Signal Capture#
Set up automatic lead creation from inbound signals:
From email replies:
When someone replies to any of my outreach emails with "interested" or "tell me more", automatically create or update a lead entry from that email.
From LinkedIn connection acceptances:
When someone accepts my LinkedIn connection request, add them to my Leads object with Source=LinkedIn and Status=New
From Twitter/X mentions:
When someone mentions @denchclaw or "denchclaw" on Twitter, add them to my Leads object if they have a professional bio
These automated captures require the corresponding skill connections (Gmail, LinkedIn, Twitter). Set them up via:
Connect my Gmail, LinkedIn, and Twitter accounts to DenchClaw
Step 7: Deduplication#
Every capture pipeline generates duplicates. Set up deduplication rules:
Before inserting any lead, check if there's already an entry with the same email address. If so, update the existing record instead of creating a duplicate.
For cleaning up existing duplicates:
Find all leads with duplicate email addresses and show them to me for review
DenchClaw queries DuckDB for duplicates and presents each pair for merge or discard.
Step 8: Lead Volume Tracking#
Know your capture rates:
Show me leads added by source for the last 30 days as a bar chart
How many leads were added this week vs. last week?
Track this weekly. A sudden drop in LinkedIn imports might mean your scraping approach hit a limit. A spike in inbound might mean a piece of content is driving traffic.
What's Next#
You now have a system that captures leads from multiple sources into a structured DuckDB database, with deduplication, source tracking, and real-time notifications.
In Part 2, we take every "New" lead and enrich them with company data, LinkedIn profiles, and tech stack information — so that by the time a rep touches a lead, they have full context.
For the full DenchClaw overview, see what is DenchClaw.
Frequently Asked Questions#
How many leads can DenchClaw's DuckDB handle?#
DuckDB handles millions of rows efficiently. A lead database of 100,000 records queries in milliseconds. There's no practical limit for most use cases.
Can DenchClaw capture leads automatically while I'm not at my computer?#
Yes. Set up the inbound signal triggers and they run as background processes. You get Telegram notifications when new leads are captured.
How do I prevent spammy/invalid leads from entering my database?#
Add validation in the capture form or instruct the AI: "Only add a lead if the email is valid and the company name is not empty." DenchClaw validates before inserting.
What's the best source for B2B leads?#
Depends on your ICP. LinkedIn is best for role-specific targeting, Apollo for volume prospecting, conferences/events for warm leads. DenchClaw can pull from all of them.
How do I handle leads that come from multiple sources?#
Use the Source Detail field to track the specific source, and note the primary Source. You can later analyze which source drives the best conversion rates.
Ready to try DenchClaw? Install in one command: npx denchclaw. Full setup guide →
