# AI Brand Accuracy — Fact-Check ChatGPT, Perplexity, Gemini (`fuze/ai-brand-accuracy`) Actor

Catch wrong, outdated and hallucinated facts that ChatGPT, Perplexity, Gemini & Google AI Overviews state about your brand — before they cost you deals. Pairs with the Fuze AI Search Visibility Platform for the full GEO report. Reliable, no API keys.

- **URL**: https://apify.com/fuze/ai-brand-accuracy.md
- **Developed by:** [Fredrik Hansson](https://apify.com/fuze) (community)
- **Categories:** AI, SEO tools
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $44.00 / 1,000 fact checkeds

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 Accuracy Monitor (Wrong Facts)

**Is ChatGPT telling people the WRONG things about your brand? Find out before it costs you deals.**

Most "AI visibility" tools only tell you *whether* you're mentioned. This one checks whether what the AI says is **true**. It asks an AI answer engine (with live web search) a set of buyer questions, extracts every factual claim the answer makes about your brand — pricing, features, availability, founding, ownership, numbers — and grades each one against your ground‑truth facts:

**correct · outdated · wrong · hallucinated · unverifiable**

…and flags **which cited sources are feeding the errors**, so you know exactly what to go fix. Run it on a schedule to catch drift as AI models re‑index the web.

![AI Brand Accuracy Monitor (Wrong Facts) — input and sample output](https://datatools-hub.vercel.app/actor-shots/ai-brand-accuracy.png)

### Quick start

1. **Fill in the input** — set the fields in the input tab (prefilled with a working example).
2. **Click Start** — the Actor runs and writes one record per item to the dataset.
3. **Get your data** — export to **JSON, CSV or Excel**, or pull it via the API.

```json
// input
{
  "brand": "Acme CRM",
  "domain": "acmecrm.com",
  "facts": ["Paid plans start at $19/user/month", "There is a free plan", "Founded in 2019", "Has a native iOS app"],
  "competitors": [],
  "topic": "CRM software"
}
```

```json
// per-prompt output
{
  "prompt": "Is Acme CRM free, and what does it cost?",
  "issueCount": 1,
  "claims": [
    { "claim": "Acme CRM has a free plan", "verdict": "correct", "explanation": "Matches your facts.", "sourceUrl": "acmecrm.com" },
    { "claim": "Paid plans start at $29/user/month", "verdict": "wrong", "explanation": "Your facts say $19/user/month.", "sourceUrl": "someblog.com" }
  ],
  "citedDomains": ["acmecrm.com", "someblog.com"]
}
```

Plus an aggregate in the run **SUMMARY**: `accuracyScore`, counts per verdict, `topIssues`, and `sourcesFeedingErrors`.

***

### Why this matters

- **43% of business owners have found wrong AI info about their business**, and most consumers avoid a business over bad info. A wrong price or "feature X doesn't exist" in an AI answer silently kills deals.
- **Visibility ≠ accuracy.** You can be mentioned *and* misrepresented. This catches the misrepresentation.
- **Actionable** — `sourcesFeedingErrors` tells you which pages/sites to correct or get updated.
- **Recurring** — AI answers drift; schedule weekly to stay ahead.

***

### Use cases

- **Brand protection / GEO** — monitor factual accuracy of your brand in AI answers over time.
- **Product launches & price changes** — verify AI picked up the new reality (and find the stale sources that didn't).
- **Agencies** — offer AI‑accuracy audits to clients as a recurring service.
- **Agent tool** — via the Apify MCP server, an agent can fact‑check what AI says about any brand on demand.

***

### Input

| Field | Type | Default | Description |
|---|---|---|---|
| `brand` | `string` | — (required) | Brand to monitor. |
| `facts` | `string[]` | — | Your ground‑truth facts to check against (strongly recommended). |
| `domain` | `string` | — | Your domain — helps attribute error sources. |
| `topic` | `string` | — | Category; used to auto‑generate prompts. |
| `prompts` | `string[]` | — | Your own questions; leave empty to auto‑generate. |
| `promptCount` | `integer` | `5` | Prompts to generate when none supplied. |
| `model` | `string` | `gpt-4o-mini` | OpenAI model. |

***

### Output

One dataset item per prompt with graded `claims[]`, plus a run `SUMMARY` with the accuracy score, verdict breakdown, top issues and the sources feeding errors.

***

### Pricing

Pay-per-event: one **`fact-checked`** event per question analysed (web‑search answer + fact‑check).

### Environment variables

| Variable | Required | Purpose |
|---|---|---|
| `OPENAI_API_KEY` | **Yes** | Powers web‑search answers and fact‑checking. |

### Notes

- Answers come from an AI **with live web search**, reflecting real answer‑engine behaviour — results vary over time, which is the point of monitoring.
- Provide `facts` for precise grading; without them, the model flags implausible/contradictory claims using general knowledge.
- Use consistent prompts across runs to track a clean trend.

### Run it locally

```bash
npm install
export OPENAI_API_KEY=...
apify run
```

### License

ISC.

### Related actors

- [AI Brand Visibility Tracker (GEO/AEO)](https://apify.com/fuze/ai-brand-visibility) — Track how visible your brand is in AI answer engines — are you recommended when people
- [AI Share of Voice — Multi-Engine GEO Tracker](https://apify.com/fuze/ai-share-of-voice) — Track your brand's visibility and share of voice across AI answer engines, with
- [AI Citation Source Miner (GEO/AEO)](https://apify.com/fuze/ai-citation-miner) — Discover which websites AI answer engines cite for your category — so you know where to

# Actor input Schema

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

The brand/company to monitor.

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

Your domain — helps attribute which cited sources feed errors.

## `facts` (type: `array`):

The true facts to check AI answers against (one per line). E.g. 'Free plan available', 'Paid plans start at $10/user/month', 'Founded in 2016', 'Headquartered in San Francisco'. Strongly recommended for precise results.

## `topic` (type: `string`):

Used to auto-generate prompts when none are supplied.

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

Questions to test (one per line). Leave empty to auto-generate.

## `promptCount` (type: `integer`):

How many prompts to auto-generate when none are supplied.

## `model` (type: `string`):

Model for web search + fact-check (default gpt-4o-mini).

## Actor input object example

```json
{
  "brand": "Notion",
  "promptCount": 5
}
```

# Actor output Schema

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

Per-prompt fact-check results in the default dataset.

# 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 = {
    "brand": "Notion"
};

// Run the Actor and wait for it to finish
const run = await client.actor("fuze/ai-brand-accuracy").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 = { "brand": "Notion" }

# Run the Actor and wait for it to finish
run = client.actor("fuze/ai-brand-accuracy").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 '{
  "brand": "Notion"
}' |
apify call fuze/ai-brand-accuracy --silent --output-dataset

```

## MCP server setup

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

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/BHw1nmeltwBUPuew9/builds/HQz4A2I8UsOAVjM1d/openapi.json
