Why Manual Lead Generation Is Costing You Time and Money
In 2026, the fastest-growing sales teams aren't hiring more SDRs โ they're building smarter pipelines. Manual prospecting is slow, inconsistent, and expensive. Meanwhile, businesses using automated lead generation workflows are reporting up to 65% more qualified leads at a fraction of the cost of dedicated lead gen subscriptions.
The secret weapon? Combining Apify โ the world's most powerful web scraping platform โ with n8n, the open-source workflow automation tool that's rapidly becoming the go-to choice for technical teams. Together, they form a pipeline that can scrape business data, enrich it, filter it, and push it straight into your CRM โ fully automated, 24/7.
In this guide, I'll walk you through exactly how to build this pipeline from scratch.
Why Apify + n8n Is the Perfect Combination
Most lead generation tools either do the scraping or the automation โ rarely both, and rarely well. Here's why this stack stands out:
- Apify handles the hard parts: proxy rotation, anti-bot detection, headless browser rendering, and data extraction. It has 1,500+ pre-built Actors covering Google Maps, LinkedIn, Amazon, Instagram, and more.
- n8n handles everything after: filtering, enriching, deduplicating, routing, and pushing data to your tools โ with 1,000+ integrations including HubSpot, Airtable, Slack, Google Sheets, and any REST API.
- No infrastructure headaches: Apify runs your scrapers in the cloud; n8n can be self-hosted or cloud-hosted. No servers to manage for the core workflow.
- Cost-effective: Apify's free plan gives $5/month in credits โ enough to scrape hundreds of leads. n8n's community edition is fully free to self-host.
What You'll Build: Google Maps โ CRM in 4 Steps
Here's the workflow we'll construct:
- Trigger: A scheduled n8n cron node fires every Monday at 8 AM
- Scrape: Apify's Google Maps Scraper Actor runs and collects local businesses (name, address, phone, website, email if available)
- Filter & Enrich: n8n cleans the data โ removes duplicates, filters by rating, checks for missing emails
- Push to CRM: Qualified leads land in HubSpot (or Google Sheets, Airtable, your choice)
Step 1: Set Up Apify and Get Your API Token
First, create a free account at apify.com. Navigate to Settings โ Integrations and copy your API token.
The Actor we'll use is the Google Maps Scraper (compass/crawler-google-places) โ one of Apify's most popular and reliable Actors with over 100,000 runs per month.
Test it manually first in the Apify Console:
{
"searchStringsArray": ["digital marketing agency London"],
"maxCrawledPlaces": 50,
"language": "en"
}
You'll see structured output with business names, addresses, phone numbers, ratings, websites, and sometimes emails. Apify handles all the geo-targeting, pagination, and anti-blocking automatically.
Step 2: Connect Apify to n8n
In your n8n instance, install the official Apify community node:
npm install @apify/n8n-nodes-apify
Then in n8n's settings under Community Nodes, add @apify/n8n-nodes-apify. Once installed, you'll see Apify nodes available in the node panel.
Add your Apify credentials in n8n's Credentials section using your API token. The official node uses OAuth2-style token auth โ name it something like Apify Production.
Step 3: Build the n8n Workflow
Here's the node-by-node breakdown:
Node 1: Schedule Trigger
Add a Schedule Trigger node set to Every Week on Monday at 08:00. This kicks off the entire pipeline automatically.
Node 2: Apify โ Run Actor
Add the Apify node, set operation to Run Actor, and configure:
- Actor ID:
compass/crawler-google-places - Input: JSON with your target query, location, and max results
- Wait for finish: Enabled (the node polls until the run completes)
Node 3: Apify โ Get Dataset Items
After the run finishes, add another Apify node with operation Get Dataset Items to pull the actual results from the completed run.
Node 4: Code Node โ Filter and Clean
Use an n8n Code node to filter results:
const items = $input.all();
return items.filter(item => {
const d = item.json;
return (
d.totalScore >= 4.0 &&
d.reviewsCount >= 10 &&
(d.website || d.phone)
);
}).map(item => ({
json: {
name: item.json.title,
phone: item.json.phone,
website: item.json.website,
address: item.json.address,
rating: item.json.totalScore,
reviews: item.json.reviewsCount,
category: item.json.categoryName
}
}));
Node 5: Push to Google Sheets (or HubSpot)
Add a Google Sheets node set to Append Row to dump qualified leads into a spreadsheet. Or use the HubSpot node to create contacts directly in your CRM. Either way, you now have fresh, qualified leads appearing every Monday morning โ zero manual effort.
Advanced: Adding Email Enrichment
Many Google Maps listings don't include emails. To enrich, add a HTTP Request node between the filter and the CRM push, calling an email finder API like Hunter.io or Snov.io with the company domain:
GET https://api.hunter.io/v2/domain-search
?domain=example.com
&api_key=YOUR_KEY
&limit=1
Pass the website field from Apify's output as the domain. This turns a phone-only lead into a fully enriched contact with email โ dramatically increasing outreach effectiveness.
Real-World Results and ROI
Teams using Apify + n8n lead generation pipelines report:
- 65% more qualified leads compared to manual prospecting
- 80% reduction in prospecting time โ salespeople focus on closing, not research
- $0.002โ$0.01 per lead at scale using Apify's compute units pricing
- Typical setup time: 2โ4 hours for a production-ready pipeline
One SaaS company running this workflow for their EMEA expansion scraped 3,200 relevant businesses in a single Apify run, filtered them down to 840 qualified leads, and pushed them to HubSpot โ all in under 40 minutes of automated processing.
Scheduling Multiple Actors for Different Niches
The real power unlocks when you run multiple parallel workflows โ one targeting SaaS companies via LinkedIn scraping, another targeting local businesses via Google Maps, another monitoring job boards for hiring signals. With n8n's workflow branching and Apify's 1,500+ Actors, you can build a multi-channel, intent-driven lead generation engine that adapts to your exact ICP (Ideal Customer Profile).
A production setup might look like:
- Monday: Google Maps scraper โ local service businesses in target cities
- Wednesday: LinkedIn Company Scraper โ recently funded startups (hiring signal)
- Friday: Website Change Detector โ track competitor pricing pages
Build Your Lead Generation Machine Today
The Apify + n8n stack gives you enterprise-grade lead generation capabilities at startup prices. Whether you're generating leads for your own business or building this as a service for clients, the combination of Apify's scraping power and n8n's workflow flexibility is unmatched in 2026.
Need a custom automated lead generation pipeline built for your business? Youssef Farhan at automationbyexperts.com specializes in building exactly these kinds of systems โ Apify integrations, n8n workflows, Python automation, and end-to-end data pipelines. Get in touch today and let's build your lead generation machine.
Get the Free Web Scraping Toolkit
Join the newsletter and get my curated list of scraping tools, proxy comparison cheatsheet, and Python automation templates.