The average B2B company spends $50 to $200 per qualified lead from an agency, yet 60% of those leads never get a reply from sales. That is not an agency problem. It is a data and process problem that most agencies paper over with volume.
A B2B lead generation agency is not a creative shop. It is an operations team running a stack of data providers, enrichment APIs, email sending infrastructure, and CRM automations. If you are a CTO or engineering manager evaluating one, you need to understand what they actually do under the hood, not what their sales deck says.
This post breaks down the five core functions of a modern B2B lead gen agency, the tools they use, the numbers you should expect, and the failure points that separate a real pipeline from a spam cannon.
- Data sourcing: Pulling company and contact records from providers like Apollo.io, ZoomInfo, or Cognism, then deduplicating against your CRM.
- Enrichment: Appending firmographics, technographics, and intent signals using tools like Clay or Clearbit to score fit before outreach.
- Outbound sequencing: Building multi-touch email and LinkedIn cadences in platforms like Instantly, Smartlead, or Outreach, with A/B tested copy.
- Deliverability ops: Managing domains, mailboxes, warmup, SPF/DKIM/DMARC, and spam complaint monitoring to keep inbox placement above 90%.
- CRM sync and reporting: Pushing leads, activities, and replies into HubSpot or Salesforce, then generating dashboards on reply rate, meeting rate, and cost per opportunity.
Step-by-step: what an agency does from contract to first meeting
- 1
Define the ICP and build the account list
The agency runs a discovery workshop to nail down firmographic filters (industry, employee count, revenue, location) and technographic filters (what tools the prospect uses). They then query a data provider's API to pull 5,000 to 50,000 companies matching those filters. A common stack is Apollo.io for company data plus BuiltWith for technographics. The output is a CSV or direct CRM import of accounts with a fit score.
- Apollo.io API: POST /v1/mixed_companies/search with filters for employee_count, industry, and technologies
- Deduplicate against existing CRM accounts using a Python script or a tool like Insycle
- Export to a shared Google Sheet or directly into HubSpot via API
- 2
Enrich contacts and score intent
For each account, the agency pulls decision-maker contacts (VP Sales, Head of Demand Gen, CTO) using Apollo or ZoomInfo. Then they run enrichment through Clay, which can waterfall across 10+ data sources, append LinkedIn activity, job change signals, and recent funding events. The agency assigns a lead score: 0-100 based on fit, intent, and engagement history. Contacts scoring below 60 are dropped.
- Example Clay enrichment table with columns: email_verified, linkedin_url, last_job_change, funding_round
- API call to Apollo's people search: POST /v1/mixed_people/search with q_organization_domains and person_titles
- Output: a list of 2,000-10,000 verified contacts with personal emails and phone numbers
- 3
Set up sending infrastructure and warmup
This is where technical competence matters. The agency buys 3-10 secondary domains (e.g., get[yourcompany].com, try[yourcompany].com) and creates 2-3 mailboxes per domain using Google Workspace or Microsoft 365. They configure SPF, DKIM, and DMARC, then run a 2-3 week warmup using a tool like Instantly or Warmbox to build sender reputation. Sending volume starts at 5 emails per mailbox per day and ramps to 30-50 per day.
- DNS records: SPF include:_spf.google.com, DKIM selector, DMARC p=none initially
- Warmup tool sends automated peer-to-peer emails to build engagement signals
- Monitor deliverability via GlockApps or Mailreach weekly
- 4
Launch multi-channel sequences
The agency builds a 4-6 touch sequence across email and LinkedIn. Email copy is personalized with variables like {{first_name}}, {{company_name}}, and custom snippets pulled from the prospect's website or recent news. They use a sending platform like Smartlead or Instantly to manage rotation across mailboxes, track opens, clicks, and replies, and automatically pause underperforming variants. A/B tests run on subject lines and first paragraphs.
- Sequence: Day 1 email, Day 3 LinkedIn connection request, Day 5 follow-up email, Day 8 LinkedIn message, Day 12 breakup email
- Personalization tokens injected via Clay before upload to the sending platform
- Reply handling: an SDR or AI tool classifies replies as interested, not now, or unsubscribe, and routes accordingly
- 5
Sync to CRM and report on pipeline
Every lead, activity, and reply is pushed to your CRM (HubSpot, Salesforce, Pipedrive) via native integration or API. The agency sets up a dashboard showing: emails sent, open rate, reply rate, meetings booked, cost per meeting, and pipeline value. A weekly 30-minute call reviews the numbers and adjusts ICP filters, copy, or sending volume. The goal is a positive ROI within 60 days.
- HubSpot API: POST /crm/v3/objects/contacts with properties email, company, lead_score, source
- Webhook from Smartlead to trigger CRM lead creation on positive reply
- Reporting: Google Looker Studio or Metabase connected to CRM and sending platform data
Five technical questions to ask any B2B lead gen agency
What data providers do you use, and how do you verify emails?
Agencies that rely only on ZoomInfo or Apollo without a verification layer (NeverBounce, ZeroBounce, or built-in Clay verification) will burn your domain reputation. Ask for a sample of 100 contacts with verification status. Expect at least 95% deliverable.
Show me your email infrastructure and warmup process
If they use your primary domain or a single mailbox, walk away. Proper setup requires secondary domains, multiple mailboxes, and a documented warmup schedule. Ask for DNS records and sending volume per mailbox.
How do you handle replies and lead handoff?
An agency that just forwards replies to a Slack channel is not doing lead gen. They should classify replies, update CRM fields, and trigger a sequence for the sales team. Ask for a reply handling flowchart.
What is your deliverability monitoring and what is your target inbox placement?
Agencies should run weekly tests with GlockApps or Mailreach and share the report. Target is above 90% inbox placement. Below 80% means your emails are going to spam and the campaign is worthless.
Can you provide a sample API integration or data schema?
If they cannot show you the JSON payload they push to your CRM, they are likely using manual CSV uploads. That breaks at scale. Ask for a sample webhook or API call they use to sync leads.
Common failure modes in B2B lead gen agencies
Buying scraped or outdated lists
Cheap agencies pull contacts from LinkedIn scraping tools or old databases. These emails bounce at 20-40% and tank your sender reputation. Always require a data freshness guarantee and a verification report.
Skipping email warmup
Launching 500 emails per day from a new domain is a one-way ticket to spam. Warmup takes 2-3 weeks. Agencies that promise results in 7 days are cutting corners.
No CRM integration
If leads live in a spreadsheet and your sales team has to manually import them, the pipeline breaks. The agency must push data via API or native integration, with field mapping defined upfront.
Ignoring reply classification
A reply that says 'not interested' is not a lead. But many agencies count any reply as a positive signal. Define what counts as a qualified lead (e.g., positive reply or booked meeting) in the contract.
Over-personalization at scale
Trying to write a custom first line for 5,000 contacts is unsustainable. Agencies that promise hyper-personalization without a data enrichment pipeline are either lying or will burn out. Use Clay to generate personalized snippets from LinkedIn posts or company news.
Checklist before signing with a B2B lead gen agency
- 1Ask for a sample data pull of 50 contacts matching your ICP, with verification status and enrichment fields
- 2Request a written email infrastructure plan: domains, mailboxes, DNS records, warmup schedule
- 3Define lead qualification criteria in the contract (positive reply, booked meeting, etc.)
- 4Get a sample CRM integration spec or API documentation for lead sync
- 5Ask for weekly deliverability reports from a third-party tool
- 6Confirm data compliance: GDPR/CCPA, opt-out handling, and data retention
- 7Check their churn rate or ask for client references from similar industries
- 8Negotiate a 30-day out clause if reply rates fall below 1%
Lead gen agencies are data operations, not magic
A B2B lead generation agency is only as good as its data pipeline, email infrastructure, and CRM integration. The creative copy matters, but it is 10% of the result. The other 90% is engineering: list building, enrichment, deliverability, and automation.
If you are a technical founder or CTO, you can evaluate an agency the same way you evaluate a SaaS vendor. Ask for API docs, data schemas, and deliverability reports. If they cannot produce those, they are selling you a spreadsheet and a prayer.
IRPR has built custom lead gen infrastructure for clients who want to own their pipeline instead of renting an agency. From Clay enrichment waterfalls to Smartlead API integrations and HubSpot webhooks, we ship the backend that makes outbound predictable. If you want that level of control, book a discovery call.
The IRPR engineering team ships production software for 50+ countries. Idea → Roadmap → Product → Release. 200+ products live.
About IRPR