Workflow

Daily Competitor SERP Digest Workflow

Automated workflow: track competitor brand names across Google and Reddit daily, diff against yesterday, email or Slack the delta.

Overview

Monitor competitor brand mentions on Google and Reddit. Compare today's results against yesterday's snapshot. Surface new pages, ranking changes, and Reddit threads in a morning digest.

Trigger

Daily cron (e.g. 07:00 UTC)

Schedule

Daily cron

Workflow Steps

1

Define competitor brand queries

List of brand names + product names to track, stored in a config file or env var.

2

Query Scavio Google endpoint for each brand

POST /api/v1/search with platform=google for each query. Store top-20 results.

3

Query Scavio Reddit endpoint for each brand

POST /api/v1/search with platform=reddit for each query. Store top-10 threads.

4

Load yesterday's snapshot from storage

Read last run's JSON from disk or S3.

5

Diff today vs yesterday

New URLs, dropped URLs, ranking position changes > 3 slots, new Reddit threads.

6

Format and send digest

Email via SendGrid or Slack webhook with the delta summary.

7

Save today's snapshot

Overwrite yesterday's file for the next diff cycle.

Python Implementation

Python
import requests, json, os

key = os.environ["SCAVIO_API_KEY"]
brands = ["Tavily", "SerpAPI", "Firecrawl"]

today = {}
for brand in brands:
    resp = requests.post("https://api.scavio.dev/api/v1/search",
        headers={"x-api-key": key},
        json={"query": brand, "platform": "google", "limit": 20})
    today[brand] = [r["url"] for r in resp.json().get("results", [])]

yesterday = json.load(open("snapshot.json")) if os.path.exists("snapshot.json") else {}
for brand in brands:
    new_urls = set(today.get(brand, [])) - set(yesterday.get(brand, []))
    if new_urls:
        print(f"{brand}: {len(new_urls)} new URLs")

json.dump(today, open("snapshot.json", "w"))

JavaScript Implementation

JavaScript
const brands = ["Tavily", "SerpAPI", "Firecrawl"];
const today = {};
for (const brand of brands) {
  const resp = await fetch("https://api.scavio.dev/api/v1/search", {
    method: "POST",
    headers: { "x-api-key": process.env.SCAVIO_API_KEY, "Content-Type": "application/json" },
    body: JSON.stringify({ query: brand, platform: "google", limit: 20 })
  });
  today[brand] = (await resp.json()).results.map(r => r.url);
}
// diff against yesterday's snapshot, send digest, save snapshot

Platforms Used

Google

Web search with knowledge graph, PAA, and AI overviews

Reddit

Community, posts & threaded comments from any subreddit

Frequently Asked Questions

Monitor competitor brand mentions on Google and Reddit. Compare today's results against yesterday's snapshot. Surface new pages, ranking changes, and Reddit threads in a morning digest.

This workflow uses a daily cron (e.g. 07:00 utc). Daily cron.

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

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

Daily Competitor SERP Digest Workflow

Automated workflow: track competitor brand names across Google and Reddit daily, diff against yesterday, email or Slack the delta.