How to Use SERP Data for B2B Lead Generation
Why Search Data Is a Lead Generation Goldmine
Every company that invests in content marketing, SEO, or paid search leaves a trail in search engine results. When a company ranks on page one for "enterprise CRM software," that is a signal: they are actively investing in acquiring customers for that product category. When a blog post about "how to choose a warehouse management system" appears in search results, the company behind it is clearly operating in logistics technology.
These signals are publicly available, continuously updated, and remarkably accurate for identifying companies that operate in specific markets. Traditional lead databases give you static lists of companies by industry code. Search data gives you active companies — the ones currently investing in marketing, publishing content, and competing for visibility in your target market.
The best part: collecting this data at scale through a SERP API costs a fraction of what traditional lead databases charge. At $0.01 per 1,000 searches (DDG Scale tier), you can scan thousands of keywords across your entire target market for the cost of a cup of coffee.
Strategy 1: Keyword-Based Company Discovery
The most straightforward approach to SERP-based lead generation is searching for keywords your ideal customers would rank for, then extracting the companies from the results.
How It Works
- Define your Ideal Customer Profile (ICP). What industry are they in? What problems do they solve? What products do they sell?
- Generate keyword lists. Create search queries that companies matching your ICP would rank for. These can be product-focused ("inventory management software"), industry-focused ("manufacturing supply chain"), or problem-focused ("reduce warehouse costs").
- Run searches via API. Query each keyword and collect the organic results.
- Extract unique domains. Parse the URLs from organic results to get company domains.
- Deduplicate and filter. Remove aggregator sites (G2, Capterra, Wikipedia), directories, and non-company domains to get a clean list of actual businesses.
Example Keyword Patterns
The most productive keyword patterns for lead generation follow these formats:
| Keyword Pattern | Example | What It Finds |
|---|---|---|
| [product] + software/tools | "project management software" | Software companies in the space |
| [industry] + companies/firms | "fintech companies London" | Companies in a specific market + geo |
| best [product] for [audience] | "best CRM for startups" | Companies targeting your same audience |
| [competitor] alternative | "Salesforce alternative" | Companies competing with known players |
| [problem] + solution/how to | "reduce employee turnover" | Companies solving specific problems |
| [industry] + blog/resources | "cybersecurity blog" | Companies investing in content marketing |
Strategy 2: Competitor Customer Mining
If you know who your competitors are, search data can reveal their customers, partners, and ecosystem.
Search Patterns That Work
- "[Competitor] review" — Surfaces review sites and blog posts that mention the competitor, often written by companies that use or have evaluated the product.
- "[Competitor] case study" — Finds customer success stories, revealing actual companies using the competitor's product.
- "[Competitor] integration" — Identifies companies that have built integrations with the competitor, indicating they are active users.
- "[Competitor] vs" — Finds comparison articles, many written by alternative vendors or by companies evaluating solutions in the space.
- "powered by [Competitor]" — For platforms and tools, this reveals companies using the product on their public-facing websites.
Each of these search patterns returns 10 organic results per page. With pagination up to 100 results, a single competitor search pattern can yield dozens of unique companies to research and potentially reach out to.
Strategy 3: Industry News Monitoring
The news search endpoint is particularly valuable for lead generation because it surfaces companies making announcements: funding rounds, product launches, expansions, and partnerships. These events are strong buying signals.
Trigger-Based Lead Identification
- Funding announcements: Search
"[industry] funding round"or"[industry] series A"withfreshness=wto find companies that recently raised capital. Freshly funded companies are actively hiring and buying tools. - Product launches: Search
"[industry] launches" OR "[industry] announces"withfreshness=mto find companies releasing new products — they likely need supporting services. - Hiring signals: Search
"[industry] hiring" OR "[company type] expanding team"to find growing companies that may need your product or service. - Partnership announcements: Search
"[competitor] partnership"to find companies actively building their tech stack.
Using Serpent API's news endpoint with Google RSS, these searches cost just $0.03 per 1,000 queries (Google News Scale tier). You can monitor hundreds of trigger keywords daily for pennies.
Strategy 4: Content Gap Prospecting
This advanced strategy identifies companies that are investing in content marketing but have gaps you can help with — or companies whose content efforts indicate they would benefit from your product.
How It Works
- Search for broad industry terms to find companies creating content in your space.
- Analyze which companies rank for some keywords but not others — these gaps indicate areas where they might need help.
- Search for their domain (using
site:domain.com [keyword]) to understand their content coverage. - Identify patterns: Companies ranking for "what is [topic]" but not for "[topic] software" may be in early awareness stage and open to product recommendations.
This approach requires more queries but produces higher-quality leads because you understand each company's marketing strategy before reaching out. The specificity of your outreach improves dramatically when you can reference a company's actual content and positioning.
Building the Lead Pipeline
Step 1: Bulk Keyword Search
Start with 50–200 keywords targeting your ICP. Run each keyword through the search API, collecting all organic results. With 10 results per keyword, 200 keywords yields up to 2,000 result URLs.
Step 2: Domain Extraction and Deduplication
Extract the root domain from each result URL. Deduplicate to get unique companies. Apply a blocklist to remove non-target domains: Wikipedia, Reddit, Quora, G2, Capterra, YouTube, Medium, and other aggregators or platforms.
Step 3: Signal Scoring
Not all SERP-derived leads are equal. Score each domain based on:
- Frequency: How many of your keywords does this domain rank for? More appearances = stronger match to your ICP.
- Position: Companies ranking in positions 1–3 are investing more heavily in SEO than those in positions 8–10.
- Keyword relevance: Ranking for "enterprise CRM software" is a stronger signal than ranking for "what is CRM."
- Ad presence: If the company also appears in the ads section, they are spending money on customer acquisition — a strong buying signal.
Step 4: Output and Integration
Export the scored domain list to your CRM or outreach tool. Each lead comes with the keywords they rank for, their ranking positions, and any ad data — giving your sales team conversation starters grounded in real data.
Enriching SERP Leads
A domain name is a starting point, not a finished lead. To make SERP data actionable for sales outreach, enrich each domain with:
- Company name and description — Often available from the SERP snippet itself (the meta description reveals what the company does).
- Contact information — Use the domain to find the company's contact page, LinkedIn profile, or email pattern.
- Company size and revenue — Cross-reference with LinkedIn, Crunchbase, or company databases.
- Technology stack — Tools like BuiltWith or Wappalyzer reveal what technologies a company uses.
- Decision makers — Find relevant contacts on LinkedIn based on the company domain and target job titles.
The SERP snippet data is particularly useful for personalization. When you know a company ranks #3 for "warehouse management software for e-commerce," your outreach can reference their specific market position and offer relevant value.
Cost Analysis: SERP vs Traditional Lead Sources
| Lead Source | Cost per Lead | Lead Quality | Data Freshness |
|---|---|---|---|
| SERP API (Serpent, DDG) | ~$0.000005 | High (active companies) | Real-time |
| LinkedIn Sales Navigator | $0.10–$0.50 | High | Updated regularly |
| ZoomInfo / Apollo | $0.20–$1.00 | Medium-High | Quarterly updates |
| Purchased lead lists | $0.50–$5.00 | Low-Medium | Often stale |
| Conference attendee lists | $5.00–$50.00 | Medium | Event-specific |
At approximately $0.000001 per lead (based on 10 results per search at $0.01/1K searches on DDG), SERP-based lead generation is 100,000x to 5,000,000x cheaper than traditional lead sources. And the leads are arguably higher quality because they represent companies actively investing in your target market right now — not companies that attended a conference six months ago.
Complete Code Example
Here is a complete Python script that discovers B2B leads from search data:
import requests
from urllib.parse import urlparse
from collections import Counter
API_KEY = "your_api_key"
BLOCKLIST = {"wikipedia.org", "reddit.com", "youtube.com", "medium.com",
"g2.com", "capterra.com", "quora.com", "linkedin.com"}
# Keywords your ideal customers would rank for
keywords = [
"warehouse management software",
"inventory tracking system",
"supply chain optimization tools",
"logistics software for ecommerce",
"order fulfillment automation"
]
domain_data = {} # domain -> {keywords: [], positions: [], snippets: []}
for kw in keywords:
resp = requests.get("https://apiserpent.com/api/search", params={
"q": kw, "engine": "ddg", "num": 10, "apiKey": API_KEY
})
for result in resp.json()["results"]["organic"]:
domain = urlparse(result["url"]).netloc.replace("www.", "")
if domain in BLOCKLIST:
continue
if domain not in domain_data:
domain_data[domain] = {"keywords": [], "positions": [], "snippets": []}
domain_data[domain]["keywords"].append(kw)
domain_data[domain]["positions"].append(result["position"])
domain_data[domain]["snippets"].append(result.get("snippet", ""))
# Score and rank leads
leads = []
for domain, data in domain_data.items():
score = len(data["keywords"]) * 10 + (10 - min(data["positions"])) * 5
leads.append({"domain": domain, "score": score, **data})
leads.sort(key=lambda x: x["score"], reverse=True)
print(f"Found {len(leads)} unique company domains\n")
for lead in leads[:20]:
print(f"Score: {lead['score']} | {lead['domain']}")
print(f" Ranks for: {', '.join(lead['keywords'][:3])}")
print(f" Best position: {min(lead['positions'])}")
print()
This script searches 5 keywords, collects up to 50 results, deduplicates by domain, scores each company based on keyword frequency and ranking position, and outputs the top 20 leads. The total cost: 5 searches = $0.00025 (DDG, Scale tier). Essentially free.
Getting Started
To start using SERP data for lead generation:
- Sign up at apiserpent.com and get your free API key (100 searches included)
- Define your ICP and generate 20–50 target keywords
- Run the searches using the code example above as a starting point
- Review and score the discovered domains
- Enrich the top leads with contact information and company data
- Begin outreach with personalized messages referencing their search presence
For more on building automated tools with SERP data, see our SERP API for SaaS guide. If you are also interested in tracking your competitors' rankings alongside lead generation, our competitor analysis tutorial covers that workflow.
Try Serpent API Free
100 free searches included. No credit card required. Start discovering B2B leads from search data today.
Get Your Free API KeyExplore: SERP API · News API · Image Search API · Try in Playground