Overview
Finding the right YouTube influencers requires searching multiple niches, analyzing video engagement, and verifying the creator's authority outside YouTube. This workflow automates discovery via Scavio's YouTube search, scores creators by engagement signals, and cross-references with Google search to assess overall authority.
Trigger
Weekly on Monday, or on-demand per campaign brief.
Schedule
Weekly
Workflow Steps
Define Niche Keywords
Load the campaign brief with target niche keywords and minimum engagement thresholds.
Search YouTube for Niche Content
For each keyword, search YouTube via Scavio API to find recent videos with view counts and channel data.
Aggregate by Creator
Group videos by channel. Calculate total views, average engagement, and content frequency per creator.
Cross-Reference Google Authority
Search Google for each top creator to check their presence outside YouTube: website, press mentions, social profiles.
Score and Rank Creators
Score creators on engagement, consistency, and Google authority. Output a ranked list for the campaign team.
Python Implementation
import requests, os, json
API_KEY = os.environ["SCAVIO_API_KEY"]
H = {"x-api-key": API_KEY, "Content-Type": "application/json"}
def search_youtube(keyword: str) -> list:
resp = requests.post(
"https://api.scavio.dev/api/v1/search",
headers=H,
json={"query": f"{keyword} 2026", "platform": "youtube", "country_code": "us"},
timeout=15,
)
return resp.json().get("video_results", [])
def google_authority(creator: str) -> int:
resp = requests.post(
"https://api.scavio.dev/api/v1/search",
headers=H,
json={"query": creator, "country_code": "us"},
timeout=10,
)
return len(resp.json().get("organic_results", []))
def influencer_research(keywords: list) -> list:
creators = {}
for kw in keywords:
videos = search_youtube(kw)
for v in videos:
channel = v.get("channel", {}).get("name", "Unknown")
if channel not in creators:
creators[channel] = {"channel": channel, "videos": 0, "total_views": 0}
creators[channel]["videos"] += 1
creators[channel]["total_views"] += v.get("views", 0)
# Score top creators
ranked = sorted(creators.values(), key=lambda x: x["total_views"], reverse=True)[:10]
for c in ranked:
c["google_mentions"] = google_authority(c["channel"])
c["score"] = c["total_views"] * 0.6 + c["google_mentions"] * 1000 * 0.4
return sorted(ranked, key=lambda x: x["score"], reverse=True)
results = influencer_research(["home workout", "fitness nutrition", "meal prep"])
for r in results[:5]:
print(f"{r['channel']}: {r['total_views']:,} views, {r['videos']} videos, {r['google_mentions']} Google mentions")JavaScript Implementation
const H = {'x-api-key': process.env.SCAVIO_API_KEY, 'Content-Type': 'application/json'};
async function searchYoutube(keyword) {
const r = await fetch('https://api.scavio.dev/api/v1/search', {method:'POST', headers:H, body:JSON.stringify({query:keyword+' 2026', platform:'youtube', country_code:'us'})});
return (await r.json()).video_results || [];
}
async function googleAuthority(creator) {
const r = await fetch('https://api.scavio.dev/api/v1/search', {method:'POST', headers:H, body:JSON.stringify({query:creator, country_code:'us'})});
return ((await r.json()).organic_results||[]).length;
}
async function influencerResearch(keywords) {
const creators = {};
for (const kw of keywords) {
for (const v of await searchYoutube(kw)) {
const ch = v.channel?.name || 'Unknown';
if (!creators[ch]) creators[ch] = {channel:ch, videos:0, totalViews:0};
creators[ch].videos++;
creators[ch].totalViews += v.views||0;
}
}
const ranked = Object.values(creators).sort((a,b)=>b.totalViews-a.totalViews).slice(0,10);
for (const c of ranked) { c.googleMentions = await googleAuthority(c.channel); c.score = c.totalViews*0.6 + c.googleMentions*1000*0.4; }
return ranked.sort((a,b)=>b.score-a.score);
}
const results = await influencerResearch(['home workout', 'fitness nutrition', 'meal prep']);
for (const r of results.slice(0,5)) console.log(r.channel+': '+r.totalViews+' views, '+r.videos+' videos, '+r.googleMentions+' Google mentions');Platforms Used
YouTube
Video search with transcripts and metadata
Web search with knowledge graph, PAA, and AI overviews