The Problem
Traditional lead generation relies on cold contact databases like Apollo, where everyone has the same lists and the same contacts get emailed by dozens of companies. Per Reddit users, Apollo lists are 'burnt' because the same leads get hammered by every sales team using the same filters. Cold outreach response rates are below 2% and dropping. Meanwhile, people on Reddit are actively asking for solutions to problems your product solves, and nobody is systematically capturing those signals.
The Scavio Solution
Scavio's Reddit search endpoint returns structured discussion data with titles, upvote counts, comment counts, and subreddit context. You build a daily pipeline that searches for buying-intent keywords on Reddit, scores posts by engagement and recency, and surfaces the highest-signal discussions as warm lead opportunities. These are people actively describing a problem your product solves, in their own words, right now. The outreach is contextual because you can reference their specific post and pain point.
Before
Before Scavio, lead gen relied on Apollo lists where every competitor had the same contacts. Cold outreach hit burnt lists with sub-2% response rates, and the team had no way to systematically find people actively looking for their solution.
After
After Scavio, a daily pipeline surfaces Reddit discussions where people are actively seeking solutions. Outreach references the prospect's own words and pain points, producing response rates 5-10x higher than cold lists.
Who It Is For
Sales teams tired of cold outreach to burnt Apollo lists. Founders doing their own lead gen who want warm prospects instead of cold contacts. Growth teams that want intent-based prospecting at scale.
Key Benefits
- Warm leads from people actively describing their problem
- Contextual outreach references the prospect's own words
- Daily automated pipeline replaces manual Reddit browsing
- No burnt lists because signals are unique and time-sensitive
- Engagement scores filter noise from high-signal buying intent
Python Example
import requests
import json
from datetime import datetime
from pathlib import Path
API_KEY = "your_scavio_api_key"
INTENT_KEYWORDS = [
"looking for a tool that",
"anyone recommend",
"switching from",
"need a solution for",
"frustrated with",
]
def search_reddit_intent(keyword: str) -> list[dict]:
res = requests.post(
"https://api.scavio.dev/api/v1/search",
headers={"x-api-key": API_KEY},
json={"platform": "reddit", "query": keyword},
timeout=15,
)
res.raise_for_status()
return res.json().get("organic", [])
def score_intent(post: dict) -> float:
score = post.get("score", 0)
comments = post.get("comments", 0)
# Higher comment count = more active discussion = warmer lead
return score + (comments * 3)
def daily_lead_scan(product_keywords: list[str]) -> list[dict]:
leads = []
seen = set()
for intent in INTENT_KEYWORDS:
for product_kw in product_keywords:
query = f"{intent} {product_kw}"
posts = search_reddit_intent(query)
for post in posts:
title = post.get("title", "")
if title in seen:
continue
seen.add(title)
intent_score = score_intent(post)
if intent_score > 10:
leads.append({
"title": title,
"subreddit": post.get("subreddit", ""),
"link": post.get("link", ""),
"score": post.get("score", 0),
"comments": post.get("comments", 0),
"intent_score": intent_score,
"intent_keyword": intent,
"snippet": post.get("snippet", "")[:200],
})
leads.sort(key=lambda x: x["intent_score"], reverse=True)
return leads[:20]
leads = daily_lead_scan(["search API", "SERP data", "web scraping"])
Path(f"reddit_leads_{datetime.utcnow().strftime('%Y-%m-%d')}.json").write_text(json.dumps(leads, indent=2))
print(f"Found {len(leads)} warm leads")
for lead in leads[:5]:
print(f" [{lead['subreddit']}] {lead['title'][:60]} (intent: {lead['intent_score']:.0f})")JavaScript Example
const API_KEY = "your_scavio_api_key";
const INTENT_KEYWORDS = ["looking for a tool that", "anyone recommend", "switching from", "need a solution for", "frustrated with"];
async function searchReddit(query) {
const res = await fetch("https://api.scavio.dev/api/v1/search", {
method: "POST",
headers: { "x-api-key": API_KEY, "content-type": "application/json" },
body: JSON.stringify({ platform: "reddit", query }),
});
if (!res.ok) throw new Error(`scavio ${res.status}`);
return (await res.json()).organic ?? [];
}
async function dailyLeadScan(productKeywords) {
const leads = [];
const seen = new Set();
for (const intent of INTENT_KEYWORDS) {
for (const kw of productKeywords) {
const posts = await searchReddit(`${intent} ${kw}`);
for (const post of posts) {
const title = post.title ?? "";
if (seen.has(title)) continue;
seen.add(title);
const intentScore = (post.score ?? 0) + (post.comments ?? 0) * 3;
if (intentScore > 10) leads.push({ title, subreddit: post.subreddit ?? "", link: post.link ?? "", intentScore, snippet: (post.snippet ?? "").slice(0, 200) });
}
}
}
return leads.sort((a, b) => b.intentScore - a.intentScore).slice(0, 20);
}
const leads = await dailyLeadScan(["search API", "SERP data"]);
console.log(`Found ${leads.length} warm leads`);
for (const l of leads.slice(0, 5)) console.log(` [${l.subreddit}] ${l.title.slice(0, 60)} (intent: ${l.intentScore})`);Platforms Used
Community, posts & threaded comments from any subreddit
Web search with knowledge graph, PAA, and AI overviews