Workflow

Multi-Source Search Lead Scoring Pipeline

Score leads using Google, Reddit, and YouTube signals. Rank prospects by search footprint and online presence.

Overview

Sales teams score leads based on firmographic data alone, missing the rich signal available from search results. A company that is actively discussed on Reddit, has YouTube tutorials about their product, and ranks well on Google is a very different lead than one with no online presence. This workflow takes each new lead, searches Google for company info, Reddit for community mentions, and YouTube for video content, then computes a composite score based on online presence strength. Higher-signal leads get prioritized for outreach.

Trigger

New lead added to CRM or pipeline

Schedule

On new lead (event-driven)

Workflow Steps

1

Search Google for company

Query Google for the lead's company name and domain. Extract result count, snippet quality, and AI Overview presence.

2

Search Reddit for mentions

Query Reddit for the company name. Count discussion threads, extract sentiment signals from titles and snippets.

3

Search YouTube for content

Query YouTube for the company name. Count videos, check for official channel presence, and note tutorial content.

4

Compute composite score

Weight signals from all three platforms into a 0-100 score. Google presence (40%), Reddit engagement (30%), YouTube content (30%).

5

Rank and export

Sort leads by composite score. Export the ranked list with per-platform signal breakdown for the sales team.

Python Implementation

Python
import requests, os, json

H = {"x-api-key": os.environ["SCAVIO_API_KEY"]}

LEADS = [
    {"name": "TechStartup Inc", "domain": "techstartup.io"},
    {"name": "DataPipe Labs", "domain": "datapipe.dev"},
    {"name": "CloudSync Pro", "domain": "cloudsync.pro"},
]

def search_platform(query, platform):
    """Search a platform and return organic results."""
    r = requests.post("https://api.scavio.dev/api/v1/search", headers=H,
        json={"platform": platform, "query": query}, timeout=10).json()
    return r.get("organic", [])

def score_lead(lead):
    """Score a lead based on multi-platform search signals."""
    # Google signals
    google_results = search_platform(f"{lead['name']} {lead['domain']}", "google")
    google_score = min(len(google_results), 10) * 4  # Max 40

    # Reddit signals
    reddit_results = search_platform(lead["name"], "reddit")
    reddit_score = min(len(reddit_results), 10) * 3  # Max 30

    # YouTube signals
    youtube_results = search_platform(lead["name"], "youtube")
    youtube_score = min(len(youtube_results), 10) * 3  # Max 30

    composite = google_score + reddit_score + youtube_score
    return {
        "name": lead["name"],
        "domain": lead["domain"],
        "google_results": len(google_results),
        "reddit_mentions": len(reddit_results),
        "youtube_videos": len(youtube_results),
        "google_score": google_score,
        "reddit_score": reddit_score,
        "youtube_score": youtube_score,
        "composite_score": composite,
        "tier": "A" if composite >= 70 else "B" if composite >= 40 else "C"
    }

scored = []
for lead in LEADS:
    result = score_lead(lead)
    scored.append(result)
    print(f"[{result['tier']}] {result['name']} | Score: {result['composite_score']}/100")
    print(f"  Google: {result['google_results']} results ({result['google_score']}pts)")
    print(f"  Reddit: {result['reddit_mentions']} mentions ({result['reddit_score']}pts)")
    print(f"  YouTube: {result['youtube_videos']} videos ({result['youtube_score']}pts)")

scored.sort(key=lambda x: x["composite_score"], reverse=True)
print(f"\nRanked {len(scored)} leads. Top: {scored[0]['name']} ({scored[0]['composite_score']}/100)")

JavaScript Implementation

JavaScript
const H = {"x-api-key": process.env.SCAVIO_API_KEY, "Content-Type": "application/json"};

const LEADS = [
  {name: "TechStartup Inc", domain: "techstartup.io"},
  {name: "DataPipe Labs", domain: "datapipe.dev"},
  {name: "CloudSync Pro", domain: "cloudsync.pro"},
];

async function searchPlatform(query, platform) {
  const r = await fetch("https://api.scavio.dev/api/v1/search", {
    method: "POST", headers: H,
    body: JSON.stringify({platform, query})
  }).then(r => r.json());
  return r.organic || [];
}

async function scoreLead(lead) {
  const google = await searchPlatform(`${lead.name} ${lead.domain}`, "google");
  const reddit = await searchPlatform(lead.name, "reddit");
  const youtube = await searchPlatform(lead.name, "youtube");
  const googleScore = Math.min(google.length, 10) * 4;
  const redditScore = Math.min(reddit.length, 10) * 3;
  const youtubeScore = Math.min(youtube.length, 10) * 3;
  const composite = googleScore + redditScore + youtubeScore;
  return {
    name: lead.name, domain: lead.domain,
    googleResults: google.length, redditMentions: reddit.length, youtubeVideos: youtube.length,
    googleScore, redditScore, youtubeScore, compositeScore: composite,
    tier: composite >= 70 ? "A" : composite >= 40 ? "B" : "C"
  };
}

(async () => {
  const scored = [];
  for (const lead of LEADS) {
    const result = await scoreLead(lead);
    scored.push(result);
    console.log(`[${result.tier}] ${result.name} | Score: ${result.compositeScore}/100`);
    console.log(`  Google: ${result.googleResults} results (${result.googleScore}pts)`);
    console.log(`  Reddit: ${result.redditMentions} mentions (${result.redditScore}pts)`);
    console.log(`  YouTube: ${result.youtubeVideos} videos (${result.youtubeScore}pts)`);
  }
  scored.sort((a, b) => b.compositeScore - a.compositeScore);
  console.log(`\nRanked ${scored.length} leads. Top: ${scored[0].name} (${scored[0].compositeScore}/100)`);
})();

Platforms Used

Google

Web search with knowledge graph, PAA, and AI overviews

Reddit

Community, posts & threaded comments from any subreddit

YouTube

Video search with transcripts and metadata

Frequently Asked Questions

Sales teams score leads based on firmographic data alone, missing the rich signal available from search results. A company that is actively discussed on Reddit, has YouTube tutorials about their product, and ranks well on Google is a very different lead than one with no online presence. This workflow takes each new lead, searches Google for company info, Reddit for community mentions, and YouTube for video content, then computes a composite score based on online presence strength. Higher-signal leads get prioritized for outreach.

This workflow uses a new lead added to crm or pipeline. On new lead (event-driven).

This workflow uses the following Scavio platforms: google, reddit, youtube. Each platform is called via the same unified API endpoint.

Yes. Scavio's free tier includes 250 credits per month with no credit card required. That is enough to test and validate this workflow before scaling it.

Multi-Source Search Lead Scoring Pipeline

Score leads using Google, Reddit, and YouTube signals. Rank prospects by search footprint and online presence.