AI Brand Monitor — Visibility Rank Tracker avatar

AI Brand Monitor — Visibility Rank Tracker

Pricing

from $60.00 / 1,000 prompt engine checks

Go to Apify Store
AI Brand Monitor — Visibility Rank Tracker

AI Brand Monitor — Visibility Rank Tracker

Track brand mentions, position, share of voice, citations, sentiment, competitors, and ranking changes across ChatGPT, Perplexity, Claude, and Gemini.

Pricing

from $60.00 / 1,000 prompt engine checks

Rating

0.0

(0)

Developer

Muhammad Afzal

Muhammad Afzal

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

1

Monthly active users

10 days ago

Last modified

Share

AI Brand Monitor — AI Visibility Rank Tracker

Track how your brand ranks in answers from ChatGPT, Perplexity, Claude, and Gemini. This AI visibility rank tracker measures brand mentions, competitor position, share of voice, website citations, sentiment, and run-over-run changes for the prompts your customers ask.

Built for Generative Engine Optimization (GEO): the new discipline of getting your brand recommended by AI answer engines. Schedule it daily or weekly to build a visibility history and catch ranking drops before they cost you traffic.


What it does

For every prompt × engine combination, the actor returns a single clean row containing:

  • mentioned — was your brand named in the answer?
  • position — your rank by order of first appearance among all tracked brands (you + competitors)
  • share_of_voice — your % of total tracked-brand mentions in the answer
  • cited / brand_cited_url — was your domain referenced as a source?
  • citations — the source URLs the answer relied on
  • sentiment — positive / neutral / negative framing of your mention
  • competitors_mentioned — which rivals showed up alongside you
  • position_change / visibility_status — the delta versus the previous run (new, gained, lost, improved, declined, unchanged, absent)

A run-level rollup (visibility score, attempted/successful/failed checks, average position, share of voice, gained/lost counts, per-engine breakdown) is saved to the key-value store under SUMMARY.

AI search ranking data returned

MetricMeaning
mentioned and mention_countWhether and how often the tracked brand appears
positionFirst-appearance rank among the tracked brand and competitors
share_of_voiceBrand share of all tracked-brand mentions in an answer
cited and brand_cited_urlWhether the brand domain appears in the answer's sources
sentimentPositive, neutral, or negative framing when mentioned
position_changeMovement compared with the previous matching check
visibility_statusNew, gained, lost, improved, declined, unchanged, or absent

Export results, run via API, schedule and monitor runs, or integrate with other tools.


Why track AI visibility?

Buyers increasingly ask ChatGPT, Perplexity, Claude, and Gemini "what's the best tool for X?" instead of scrolling Google. If your brand isn't named — or is ranked below competitors — you lose the recommendation. Traditional SEO rank trackers don't see this. This actor does, across four engines, with trend history.


Input

FieldTypeDescription
brandName (required)stringThe brand/product to track.
brandDomainstringYour domain (e.g., notion.so) for citation detection.
industrystringUsed to auto-generate prompts when you don't supply your own.
promptsstring[]The exact questions to monitor. Falls back to auto-generated prompts from industry.
platformsstring[]Any of perplexity, chatgpt, claude, gemini.
competitorsstring[]Competitor brands for position & share-of-voice.
extractCitationsbooleanExtract source URLs and detect domain citations.
analyzeSentimentbooleanClassify the sentiment of each brand mention.
trackingIdstringStable ID used to compare history across runs (defaults to a slug of the brand).
useWebSearchbooleanEnable OpenRouter's web plugin for non-native-search models.
webSearchResultsintegerWeb results per query for the plugin (1–10).
modelsobjectOptional per-platform OpenRouter model-slug overrides.
maxPromptsintegerCap on prompts per run (cost control).

Example input

{
"brandName": "Notion",
"brandDomain": "notion.so",
"industry": "productivity software",
"prompts": [
"What is the best note-taking app for teams?",
"Recommend an all-in-one workspace tool."
],
"platforms": ["perplexity", "chatgpt", "claude", "gemini"],
"competitors": ["Evernote", "Obsidian", "Coda"],
"extractCitations": true,
"analyzeSentiment": true
}

API key (required) — one key for all models

All engines run through OpenRouter, so you only need a single API key. Set it as an environment variable on the actor (Console → Settings → Environment variables):

OPENROUTER_API_KEY = sk-or-...

If the key is missing, every check is reported with an error and not charged.

PlatformDefault modelWeb search
Perplexityperplexity/sonarnative
ChatGPTopenai/gpt-4o-miniOpenRouter web plugin
Claudeanthropic/claude-sonnet-4OpenRouter web plugin
Geminigoogle/gemini-2.5-flashOpenRouter web plugin

Note: For non-Perplexity models, web grounding uses OpenRouter's web plugin (it adds live search results to any model) rather than each vendor's own search product — the right trade-off for one-key simplicity, and it still reflects current web data. You pay OpenRouter directly for model + web-plugin usage; the actor's PPE events cover the tracking/analysis layer. Override any model slug with the models input.


Output

Each row in the dataset:

{
"brand": "Notion",
"brand_domain": "notion.so",
"engine": "perplexity",
"model_used": "sonar",
"prompt": "What is the best note-taking app for teams?",
"mentioned": true,
"position": 1,
"share_of_voice": 60,
"cited": true,
"citations": ["https://notion.so/product", "https://example.com/review"],
"brand_cited_url": "https://notion.so/product",
"mention_count": 2,
"mention_context": "Notion is one of the most popular all-in-one workspaces...",
"sentiment": "positive",
"competitors_mentioned": ["Evernote", "Obsidian"],
"previous_mentioned": true,
"previous_position": 3,
"position_change": 2,
"visibility_status": "improved",
"error": null,
"checked_at": "2026-06-07T12:00:00.000Z"
}

Pricing (Pay Per Event)

Charged events:

EventWhen
actor-startOnce per run.
prompt-engine-checkEach successful prompt × engine check.
citation-extractionEach successful check when citation extraction is enabled.
sentiment-analysisEach mention scored when sentiment analysis is enabled.

Failed checks (e.g., a missing API key) are never charged. You pay your own LLM provider for the underlying API calls.

The maximum base check count is prompts × platforms. Optional citation extraction and sentiment analysis add their documented events only when applicable. Use maxPrompts, a focused platform list, and stable prompts to control cost and keep comparisons useful. Review the Apify Store pricing panel for current event prices.

Use the AI rank tracker through the API

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('USERNAME/ai-visibility-rank-tracker').call({
brandName: 'Notion',
brandDomain: 'notion.so',
prompts: ['What is the best note-taking app for teams?'],
competitors: ['Evernote', 'Obsidian', 'Coda'],
trackingId: 'notion-weekly',
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);

The actor also works with Apify schedules, webhooks, dataset exports, and Apify MCP for AI-agent workflows.


Scheduling for trend tracking

  1. Run once to seed a baseline (first run shows visibility_status: new / absent).
  2. Create a Schedule (daily or weekly) with the same trackingId.
  3. Each run compares against the previous snapshot and fills position_change and visibility_status.

History is stored in a named key-value store (ai-rank-history-<trackingId>), so multiple brands can be tracked independently.


Use cases

  • GEO / AEO monitoring — prove and improve how AI engines recommend you.
  • Competitive intelligence — see who AI names ahead of you, and where.
  • Content ROI — confirm whether new content gets you cited.
  • Agency reporting — deliver weekly AI-visibility reports to clients.

When to use—and when not to use—this actor

Use it when you need repeatable AI search visibility monitoring across a defined prompt set: GEO reporting, AEO measurement, competitor tracking, content campaign evaluation, or an early warning when a brand loses position.

Do not use it as a Google SERP tracker, web-traffic analytics tool, or universal measurement of every AI user's experience. Position is calculated among the brands you explicitly track, not every company in the market. For a deeper view of every source domain cited by the engines, pair it with the AI Citation Monitor.

Best practices for reliable trend tracking

  • Use non-branded, buyer-intent prompts that reflect real discovery questions.
  • Keep trackingId, prompts, competitors, models, and platform selection stable.
  • Separate markets or languages into distinct tracking IDs.
  • Check error before interpreting mentioned: false as a genuine absence.
  • Compare multiple scheduled runs; a single AI response is a snapshot, not a durable rank.

Local verification

Build and run the pure logic tests before publishing or deploying changes:

$npm run test

The test suite does not require OPENROUTER_API_KEY; live runs do. If the key is missing in a live run, each prompt-engine check returns a structured error row instead of crashing the actor.


Notes

  • Results depend on each engine's live web access and model behavior; answers vary between runs, which is exactly what trend tracking is for.
  • Keep prompts stable across runs for the cleanest deltas.

FAQ

What is AI visibility ranking?

It is the tracked brand's first-appearance position among the brand and competitor names supplied for a specific prompt and AI engine. It is a practical comparison metric, not an official ranking published by the model provider.

How often should I monitor ChatGPT and Perplexity rankings?

Weekly monitoring is a useful starting point. Daily schedules suit active campaigns or volatile categories, while monthly runs may be enough for slow-moving markets.

What is the difference between GEO and AEO?

Generative Engine Optimization and Answer Engine Optimization both aim to improve discoverability in generated answers. This actor measures the shared outcomes: mentions, position, share of voice, citations, and sentiment.

Responsible use

AI outputs can be incomplete, variable, or incorrect. Validate material decisions against primary sources and use the results for lawful brand research. Store OPENROUTER_API_KEY as a secret environment variable and never include it in actor input.