AI Brand Visibility Monitor API | Google + Reddit Tracker avatar

AI Brand Visibility Monitor API | Google + Reddit Tracker

Pricing

Pay per usage

Go to Apify Store
AI Brand Visibility Monitor API | Google + Reddit Tracker

AI Brand Visibility Monitor API | Google + Reddit Tracker

See whether your AI brand is appearing, climbing, or disappearing in Google and Reddit prompts, then get rank deltas, competitor overlap, and weekly action items.

Pricing

Pay per usage

Rating

0.0

(0)

Developer

太郎 山田

太郎 山田

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Categories

Share

Find out whether your AI brand is showing up, climbing, or disappearing for the prompts and keywords buyers use in Google and Reddit—then get competitor overlap, rank deltas, and weekly action items in one run.

Store Quickstart

  • Start with store-input.example.json for a one-keyword Google first run.
  • If the output fits, switch to store-input.templates.json and pick one of:
    • Quickstart (1 Keyword, Google) for the fastest first success
    • Weekly Executive Email (Google-first recurring) as the default upgrade path after the first useful run
    • Webhook Alert (Google-first change alerts) once the same keyword set is monitored by a team or downstream workflow
    • Expansion: Brand vs Competitors (Search + Reddit) only after the Google-first canary is stable

The first Store run is intentionally small: one brand, one keyword, one source.

Recommended activation path: Quickstart -> Weekly Executive Email -> Webhook Alert. Add Search + Reddit only after two or more clean Google-first runs.

Live launch proof

This actor is live on Apify Cloud and the latest verified public canary passed on 2026-03-12.

  • actor: TrhJ0DJxjSP2IiuHB
  • canary run: wGs3Bd1fkVFMFDAyK (SUCCEEDED, build 0.1.2)
  • contract run: QT1LJaj0q3YEqUu7t (SUCCEEDED, build 0.1.2)
  • dataset: sUQJ5TQwHWgDULeGU
  • scheduled task starts with searchSources=["google"] for a lower-noise first recurring run

live-proof.example.json stores the latest payload snapshot from that canary plus the matching contract check. It intentionally shows status=initial and visibilityStatus=initial_missing, which is normal before the next runs accumulate stronger deltas and trend history.

Who gets value fastest?

TeamWhy
Content / SEO teamsTrack whether your brand is rising or disappearing for key prompts
Growth / PMMCompare competitor share-of-presence without running a custom dashboard
Founder / operatorGet a compact weekly “what changed” view instead of raw SERP dumps

Output First: What You Get

Each tracked keyword/source pair returns a compact decision record:

{
"keyword": "ai api pricing",
"source": "google",
"status": "changed",
"visibilityStatus": "improved",
"previousBrandRank": 5,
"currentBrandRank": 3,
"rankChange": 2,
"currentCompetitorCount": 2,
"summary": "GOOGLE: your brand improved 2 spots to #3 for \"ai api pricing\".",
"actionItems": [
"Inspect the pages above rank #3 to understand why they still win."
]
}

There is also a fuller example in sample-output.example.json showing:

  • one improving keyword
  • one new appearance
  • one urgent disappearance
  • meta.executiveSummary for weekly or daily review

Suggested recurring monitoring cadence

  • Weekly keyword review for your top 5-20 commercial prompts
  • Start with Google-only recurring checks, then add Reddit after canary stability is proven
  • Use Weekly Executive Email as the first recurring setup for founders, PMM, or SEO owners
  • Move to Webhook Alert when the same Google-first keyword set should feed Slack, Zapier, or an internal monitor
  • Use Expansion: Brand vs Competitors (Search + Reddit) when you want both ranking and discussion visibility

Local Run

cd /volume1/docker/Apify/ai-visibility-monitor-actor
cp -n .env.example .env
cp -n input.example.json input.json
./scripts/run-with-env.sh
cat output/results.json

Local daily log run:

cd /volume1/docker/Apify/ai-visibility-monitor-actor
./scripts/run-local-daily.sh

Store Listing Ops

cd /volume1/docker/Apify/ai-visibility-monitor-actor
npm run store:optimize
npm run store:kpi
npm run store:experiment

Tests

cd /volume1/docker/Apify/ai-visibility-monitor-actor
npm test

Reliability Guardrails

Canary check:

cd /volume1/docker/Apify/ai-visibility-monitor-actor
set -a && source .env && set +a
CANARY_RUN_TASK_FIRST=true npm run canary:check

Weekly contract test:

cd /volume1/docker/Apify/ai-visibility-monitor-actor
set -a && source .env && set +a
npm run contract:test:live

Optional env:

  • CANARY_LOOKBACK_HOURS (default 36)
  • CANARY_MIN_TARGETS (default 1)
  • CANARY_MAX_ERRORS (default 0)
  • CONTRACT_LOOKBACK_HOURS (default 72)
  • CONTRACT_MIN_TARGETS (default 1)
  • CONTRACT_NOTIFY_ON_PASS (default false)
  • DISCORD_WEBHOOK_URL (optional)
cd /volume1/docker/Apify/ai-visibility-monitor-actor
npm run apify:cloud:setup

Required .env keys:

  • APIFY_TOKEN
  • APIFY_ACTOR_ID

Optional SMTP keys for delivery=email:

  • SMTP_HOST
  • SMTP_PORT (default 465)
  • SMTP_SECURE (default true in .env.example)
  • SMTP_USER
  • SMTP_PASS
  • EMAIL_FROM

Input Highlights

  • brand / brandTerms
    • Brand label + the terms that count as your brand in titles/URLs
  • competitors
    • Strings or { name, terms[] } objects
  • keywords
    • Commercial or strategic search phrases you want to watch
  • searchSources
    • google, reddit
  • emailTo
    • Required when delivery=email
  • datasetMode
    • changes_only: sends changed|initial|error
    • all: sends every tracked keyword/source pair

See INPUT_SCHEMA.json for the full schema.

Output

output/results.json contains:

  • meta.totals summary counts
  • meta.executiveSummary overall health, cadence, top wins, top risks
  • meta.delivery delivery result
  • results[] rank deltas, visibility status, priority, action items, top results
  • sample-output.example.json provides a ready-to-read reference payload for Store and README proof
  • live-proof.example.json provides a real Apify Cloud proof snapshot from the first successful canary run

Notes

  • Initial runs will usually return status=initial; that is normal.
  • Google parsing is best-effort and should be validated with canary checks before relying on schedules.
  • Reddit source uses public search JSON and is useful as a lower-friction discussion signal.
  • For recurring production tasks, start with google only, then add reddit after canary checks pass consistently; the live task defaults to this path because Reddit may intermittently return 403.
  • If delivery=email is selected without SMTP settings, the actor writes a local .eml preview instead of sending.
  • For Store conversion, explain the keyword set, expected frequency, and what action the user should take after a change.
  • saas-change-monitor-actor — monitor pricing, terms, or page changes that may explain visibility shifts.
  • sitemap-analyzer — inspect crawl coverage and sitemap freshness behind missing visibility.
  • structured-data-validator — validate Schema.org on pages you expect to appear in AI/search results.