# AI Brand Visibility Tracker (ChatGPT, Claude, Gemini) (`psypherz/ai-brand-visibility`) Actor

Ask ChatGPT, Claude, Gemini and Perplexity the questions your buyers ask. See which brands each AI recommends, where yours ranks, and which sources it cites.

- **URL**: https://apify.com/psypherz/ai-brand-visibility.md
- **Developed by:** [Muhammad Yasin Bin Abdul Rahman](https://apify.com/psypherz) (community)
- **Categories:** AI
- **Security:** Limited permissions
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $23.00 / 1,000 chatgpt answers

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

## AI Brand Visibility Tracker (ChatGPT, Claude, Gemini)

Ask ChatGPT, Claude, Gemini and Perplexity the questions your buyers ask, and see which brands each AI recommends. For every answer you get the brands named in order, whether your brand appears and in what position, whether your website is cited, the sources the AI used, and the full answer.

**Price: US$0.025 per ChatGPT or Claude answer, US$0.012 per Perplexity answer, US$0.008 per Gemini answer.** One prompt on all four costs US$0.07.

### What people use it for

- **AI search visibility (GEO):** track whether AI assistants recommend your brand for the questions that bring you customers.
- **Competitor tracking:** see which competitors each AI names first, and how that changes week by week.
- **Content and PR planning:** the cited sources show which sites the AIs trust. Get mentioned there.
- **Agency reporting:** run the same prompt list for each client on a schedule and chart the results.

### Example output

Real output from the default input (29 Oct 2026). Answers are shortened here.

| platform | brandMentioned | brandRank | brandsMentioned | citations |
|---|---|---|---|---|
| chatgpt | true | 1 | HubSpot, Pipedrive, Zoho, Freshsales, Salesforce | 4 |
| claude | true | 1 | HubSpot, Pipedrive, Zoho, Freshsales, Salesforce | 7 |
| gemini | true | 1 | HubSpot, Pipedrive, Zoho, Salesforce | 0 |
| perplexity | true | 1 | HubSpot, Zoho, Freshsales, Pipedrive, Salesforce | 10 |

```json
{
  "prompt": "What are the best CRM tools for a small business?",
  "platform": "perplexity",
  "model": "sonar",
  "webSearch": true,
  "brand": "HubSpot",
  "brandMentioned": true,
  "brandRank": 1,
  "brandsMentioned": ["HubSpot", "Zoho", "Freshsales", "Pipedrive", "Salesforce"],
  "domainCited": null,
  "citations": [{"title": "...", "url": "https://www.capterra.com/...", "domain": "capterra.com"}],
  "answer": "The best CRM depends on your team's size, sales process, and budget. For most small businesses, HubSpot CRM, Zoho CRM, Freshsales, Pipedrive, and Salesforce ...",
  "checkedAt": "2026-10-28T17:11:09+00:00"
}
```

`brandRank` is the position of your brand among the tracked brands, by first mention in the answer. `domainCited` is empty when you leave `domain` blank.

### Input

| Field | What it does | Default |
|---|---|---|
| `prompts` | Questions a buyer would ask, up to 50, 500 characters each. | 1 sample |
| `brand` | Your brand name. | sample |
| `competitors` | Other brands to look for, up to 30. | samples |
| `domain` | Your website, to check whether the AIs cite it. | none |
| `platforms` | Any of `chatgpt`, `claude`, `gemini`, `perplexity`. | all four |

### Which models answer

| Platform | Model | Web search |
|---|---|---|
| ChatGPT | gpt-5.4-nano | yes |
| Claude | claude-haiku-5-5 | yes |
| Gemini | gemini-3.6-flash | no: answers from its own knowledge |
| Perplexity | sonar | yes |
These are the fast models each provider offers through its API. The free consumer apps may use other models, so treat results as a strong signal and track them over time.

### Pricing

| Event | Price |
|---|---|
| ChatGPT answer | US$0.025 |
| Claude answer | US$0.025 |
| Perplexity answer | US$0.012 |
| Gemini answer | US$0.008 |

Examples: 10 prompts on all four cost US$0.70. 10 prompts on Perplexity and Gemini only cost US$0.20. Answers that fail or come back empty are listed and not charged.

### Limits

- AI answers vary from run to run, even for the same prompt. Run each prompt on a schedule and look at the trend.
- Brand matching is by whole word and ignores case. Brands with very common names may need a more specific spelling.
- Free Apify plan: one prompt on Gemini and Perplexity. A run with the prefilled example input returns a stored, dated sample (marked `cachedExample: true`) at no charge.

### FAQ

**Does this use the real ChatGPT?** It uses OpenAI's, Anthropic's, Google's and Perplexity's official APIs through a licensed data provider, with web search where the platform supports it.

**Can an AI agent call it?** Yes. Pass prompts and brands, get compact JSON back, and pay per answer.

### More tools from the same developer

Same style: clean JSON output, pay only for results, no charge on failed items.

| Tool | What it does |
|---|---|
| [Bulk Keyword Search Volume](https://apify.com/PsypherZ/keyword-search-volume) | Google Ads search volume, CPC, competition and 12-month trend for up to 10,000 keywords |
| [Google Keyword Ideas](https://apify.com/PsypherZ/google-keyword-ideas) | Hundreds of keyword ideas per seed with volume, CPC, difficulty and search intent |
| [Amazon Keyword Search Volume](https://apify.com/PsypherZ/amazon-keyword-volume) | Monthly Amazon searches for up to 10,000 keywords in 16 markets, plus related keywords |
| [Competitor Keywords](https://apify.com/PsypherZ/competitor-keywords) | Every Google keyword a domain ranks for, with traffic, plus its closest competitors |
| [Google Trends API](https://apify.com/PsypherZ/google-trends-api) | Interest over time, by region, and rising queries and topics for up to 500 keywords |
| [Google SERP Results](https://apify.com/PsypherZ/google-serp-results) | Organic results, featured snippets and People Also Ask for any keyword, country and device |
| [Google AI Overview Tracker](https://apify.com/PsypherZ/google-ai-overview-tracker) | Which keywords show an AI Overview, what it says, and whether it cites your site |
| [Audio and Video Transcriber](https://apify.com/PsypherZ/audio-video-transcriber) | Timestamped transcripts from audio and video files in 90+ languages |
| [Subtitle Generator](https://apify.com/PsypherZ/subtitle-generator) | Ready-to-use SRT and WebVTT subtitles from audio and video files |
| [Podcast Transcriber](https://apify.com/PsypherZ/podcast-transcriber) | Timestamped transcripts of podcast episodes from any RSS feed or Apple Podcasts link |
| [Image OCR](https://apify.com/PsypherZ/image-ocr) | Text from images in 20 languages, with confidence scores |
| [AI Image Upscaler](https://apify.com/PsypherZ/image-upscaler) | Upscale photos and artwork 2x, 3x or 4x with Real-ESRGAN AI |
| [PDF to Text and Markdown](https://apify.com/PsypherZ/pdf-to-text-markdown) | Clean text and Markdown from PDFs, with OCR for scanned pages |
| [Bulk PageSpeed Insights Audit](https://apify.com/PsypherZ/bulk-pagespeed-audit) | Core Web Vitals and Lighthouse scores for many pages, mobile and desktop |
| [Email List Validator](https://apify.com/PsypherZ/email-list-validator) | Clean email lists: syntax, domain, mail server, throwaway and role checks, plus typo fixes |
| [HTTP Request Runner](https://apify.com/PsypherZ/http-request-runner) | Send thousands of GET, POST and other API requests and get status, headers and body back |
| [Bulk File Downloader](https://apify.com/PsypherZ/bulk-file-downloader) | Save up to 5,000 direct file links to storage, each with a download link and checksum |
| [Video Frame Extractor](https://apify.com/PsypherZ/video-frame-extractor) | Still images from video files every N seconds, at set times, or evenly spaced |

# Actor input Schema

## `prompts` (type: `array`):

Questions your buyers would ask an AI assistant, one per line. Up to 50 per run, 500 characters each.

## `brand` (type: `string`):

The brand to track. The output shows whether each AI names it and in what position.

## `competitors` (type: `array`):

Other brands to look for in each answer. Up to 30.

## `domain` (type: `string`):

Optional. Shows whether each AI cites your site as a source, for example example.com.

## `platforms` (type: `array`):

Which AI assistants to ask. Each answer is charged separately.

## Actor input object example

```json
{
  "prompts": [
    "What are the best CRM tools for a small business?"
  ],
  "brand": "HubSpot",
  "competitors": [
    "Zoho",
    "Pipedrive",
    "Salesforce",
    "Freshsales"
  ],
  "platforms": [
    "chatgpt",
    "claude",
    "gemini",
    "perplexity"
  ]
}
```

# Actor output Schema

## `results` (type: `string`):

One row per prompt and AI: brands named in order, your brand rank, cited sources and the full answer.

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "prompts": [
        "What are the best CRM tools for a small business?"
    ],
    "brand": "HubSpot",
    "competitors": [
        "Zoho",
        "Pipedrive",
        "Salesforce",
        "Freshsales"
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("psypherz/ai-brand-visibility").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "prompts": ["What are the best CRM tools for a small business?"],
    "brand": "HubSpot",
    "competitors": [
        "Zoho",
        "Pipedrive",
        "Salesforce",
        "Freshsales",
    ],
}

# Run the Actor and wait for it to finish
run = client.actor("psypherz/ai-brand-visibility").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "prompts": [
    "What are the best CRM tools for a small business?"
  ],
  "brand": "HubSpot",
  "competitors": [
    "Zoho",
    "Pipedrive",
    "Salesforce",
    "Freshsales"
  ]
}' |
apify call psypherz/ai-brand-visibility --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,psypherz/ai-brand-visibility"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/xcR4uniy5Tgge4cdI/builds/nKEBheArkj4LaARxg/openapi.json
