# Brand Monitor - Track Mentions on Google, News & Reddit (`viralanalyzer/brand-visibility-tracker`) Actor

Track your brand across Google, news, social media, and forums. AI sentiment.

- **URL**: https://apify.com/viralanalyzer/brand-visibility-tracker.md
- **Developed by:** [viralanalyzer](https://apify.com/viralanalyzer) (community)
- **Categories:** Marketing, AI
- **Stats:** 17 total users, 0 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: 5.00 out of 5 stars

## Pricing

from $5.00 / 1,000 mention founds

This Actor is paid per event and usage. You are charged both the fixed price for specific events and for Apify platform usage.

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

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
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.
Actors are written with capital "A".

## 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.
The best way to integrate Actors is as follows.

- **AI agents and MCP clients** — the [Apify MCP server](https://docs.apify.com/integrations/mcp.md) at `https://mcp.apify.com` (remote, streamable HTTP, OAuth on first use).
- **Agentic workflows and local Actor development** — [Agent Skills](https://apify.com/.well-known/agent-skills/index.json) with the [Apify CLI](https://docs.apify.com/cli/docs.md): `npm install -g apify-cli`, then `apify login`.
- **JavaScript/TypeScript projects** — the official [JS/TS client](https://docs.apify.com/api/client/js/docs.md): `npm install apify-client`.
- **Python projects** — the official [Python client](https://docs.apify.com/api/client/python/docs.md): `pip install apify-client`.
- **Any other language** — the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).

# README

## Brand Monitor 📊 Track Brand Mentions on Google, News, Reddit & Reviews

> Track your brand's online presence across Google, News, Reddit, Trustpilot, and Reclame Aqui. AI-powered sentiment analysis and competitive benchmarking. Pay only per mention found — see the current price on the Pricing panel.

### ✨ Features

| Feature | Description |
|---------|-------------|
| 🔍 **Multi-Source Monitoring** | Google Search, Google News, Reddit, Trustpilot, Reclame Aqui |
| 📊 **Sentiment Analysis** | Positive, negative, neutral classification for every mention |
| 🏆 **Competitor Benchmarking** | Compare your brand visibility vs. competitors |
| 🤖 **AI SWOT Report** | Strategic analysis with strengths, weaknesses, opportunities, threats |
| 🌐 **Multilingual** | Works in English and Portuguese |
| 📈 **Trend Tracking** | Schedule weekly runs to track visibility over time |

### 🚀 What You Get

- **Brand mentions** from 5+ sources with links, snippets, and dates
- **Sentiment score** for each mention (positive/negative/neutral)
- **Visibility score** — how prominent your brand is in search results
- **Competitor comparison** — side-by-side brand visibility analysis
- **AI SWOT report** — actionable insights about your brand perception

### 📋 Input Example

```json
{
    "brandName": "Nubank",
    "brandDomain": "nubank.com.br",
    "competitors": ["Inter", "C6 Bank"],
    "sources": ["google", "news", "trustpilot"],
    "language": "pt-BR",
    "maxMentionsPerSource": 20,
    "includeAiAnalysis": false
}
```

### 📊 Output Example

The actor outputs a **brand report summary** followed by individual mentions:

**Brand Report:**

```json
{
    "type": "brand_report",
    "brandName": "Nubank",
    "brandDomain": null,
    "scannedAt": "2026-02-19T05:18:31.024Z",
    "totalMentions": 10,
    "sentimentBreakdown": { "neutral": 10 },
    "sourceBreakdown": { "google_news": 10 },
    "competitors": null,
    "aiAnalysis": null
}
```

**Individual Mention:**

```json
{
    "id": "bv_1771478310756_gxt0gk",
    "source": "google_news",
    "brandName": "Nubank",
    "title": "Nubank recebe aprovação para operar como banco nos Estados Unidos",
    "url": "https://g1.globo.com/economia/noticia/2026/01/29/nubank-estados-unidos.ghtml",
    "sentiment": "neutral",
    "type": "news"
}
```

### 💡 Use Cases

- **Brand Monitoring** — Know what people say about your brand in real time
- **Reputation Management** — Catch negative mentions early before they go viral
- **Competitive Intelligence** — Compare your brand perception vs. competitors
- **PR & Communications** — Measure the impact of your press releases and campaigns
- **Market Research** — Understand brand perception in the Brazilian market
- **Executive Reporting** — Weekly brand health dashboards for leadership

### 💰 Pricing

This actor uses **Pay Per Event (PPE)** pricing. The rate depends on your Apify plan tier:

| Plan tier | Per mention found | Per 1,000 |
|-----------|-----------|-----------|
| All plans | $0.005     | $5.00 |

**You are never charged for a run that returned nothing.** When the source blocks and
nothing is extracted, the actor returns a labeled diagnostic and charges no PPE event.

### ✅ Capabilities & Limits

Stated up front, so you do not pay a run to find out.

**Built here:** on a non-paying Apify account the actor trims your input in place before the crawl: competitors dropped to 0, sources cut to the first 2, `maxMentionsPerSource` capped at 5, `includeAiAnalysis` forced off. It reads `APIFY_USER_IS_PAYING` at startup and the run still reports SUCCEEDED - the only notice is a log warning.

| Input / feature | Supported | Notes |
|---|---|---|
| `brandName` — **required** | ✅ | The brand or company name to track (e.g., 'ViralAnalyzer', 'Nubank', 'iFood') |
| `brandDomain` | ✅ | The brand's website domain for precise matching (e.g., 'nubank.com.br') |
| `competitors` | ✅ | Competitor brands to include for benchmarking comparison |
| `sources` | ✅ | Which sources to check for brand mentions |
| `language` | ✅ | Preferred language for search results |
| Result volume (`maxMentionsPerSource`) | ⚠️ | Maximum number of mentions to collect per source |
| `includeAiAnalysis` | ✅ | Comprehensive AI analysis of brand perception (requires GEMINI\_API\_KEY) |
| Proxy | ⚠️ | Proxy settings for reliable scraping |

### ❓ FAQ

**Q: Which sources does it monitor?**
A: Google Search, Google News, Reddit, Trustpilot, and Reclame Aqui. Pick any subset via the `sources` input.

**Q: How does sentiment analysis work?**
A: Each mention is classified as positive, negative, or neutral. With `includeAiAnalysis` enabled, a SWOT summary is also generated.

**Q: Do I need an account or API key?**
A: No account is required for monitoring. AI SWOT analysis requires a `GEMINI_API_KEY` environment variable.

**Q: Can I compare against competitors?**
A: Yes. Pass competitor names in `competitors` to get side-by-side visibility benchmarking.

**Q: Am I charged if no mentions are found?**
A: No. Billing is per `mention-found`; a run that returns zero mentions is not charged for results.

### 🔗 Related Actors

Combine with other actors from the [Viral Analyzer](https://apify.com/viralanalyzer) suite:

- [Competitor Intelligence Hub](https://apify.com/viralanalyzer/competitor-intelligence-hub) — Full competitive analysis: pricing, tech stack, ads, reviews
- [SEO Intelligence Suite](https://apify.com/viralanalyzer/seo-intelligence-suite) — SERP analysis, keyword tracking, and backlink data
- [Google Maps BR Scraper](https://apify.com/viralanalyzer/google-maps-br-scraper) — Local business data with reviews and sentiment from Google Maps
- [RSS News Intelligence](https://apify.com/viralanalyzer/rss-news-intelligence) — Monitor news coverage and media mentions in real-time

### 📝 Changelog

#### v1.0

- Initial release: multi-source brand monitoring (Google, Google News, Reddit, Trustpilot, Reclame Aqui)
- Per-mention sentiment classification (positive / negative / neutral)
- Competitor visibility benchmarking
- Optional AI SWOT report via Gemini

### ⚖️ Legal

This actor accesses publicly available information from search engines and review platforms. Use responsibly and in compliance with applicable laws.

***

## 🇧🇷 Português

### Monitor de Marca 📊 Rastreie Menções à Marca no Google, Notícias, Reddit e Reviews

> Acompanhe a presença online da sua marca no Google, Notícias, Reddit, Trustpilot e Reclame Aqui. Análise de sentimento com IA e benchmarking competitivo. Pague só por menção encontrada — veja o preço vigente no painel Pricing.

### ✨ Funcionalidades

| Recurso | Descrição |
|---------|-----------|
| 🔍 **Monitoramento Multi-Fonte** | Google, Notícias, Reddit, Trustpilot, Reclame Aqui |
| 📊 **Análise de Sentimento** | Classificação positiva, negativa, neutra para cada menção |
| 🏆 **Benchmarking** | Compare a visibilidade da sua marca vs. concorrentes |
| 🤖 **Relatório SWOT com IA** | Análise estratégica completa |
| 🌐 **Multilíngue** | Funciona em inglês e português |
| 📈 **Acompanhamento** | Agende execuções semanais para rastrear evolução |

### 🚀 O Que Você Recebe

- **Menções da marca** de 5+ fontes com links, trechos e datas
- **Score de sentimento** para cada menção
- **Score de visibilidade** — quão proeminente é sua marca nos resultados
- **Comparação com concorrentes** — análise lado a lado
- **Relatório SWOT com IA** — insights acionáveis sobre a percepção da marca

### 📋 Entrada

| Campo | Tipo | Descrição |
|-------|------|-----------|
| `brandName` | string | Nome da marca a monitorar (obrigatório) |
| `brandDomain` | string | Domínio oficial da marca (opcional) |
| `competitors` | string\[] | Lista de concorrentes para comparação |
| `sources` | string\[] | Fontes: `google`, `news`, `reddit`, `trustpilot`, `reclameaqui` |
| `language` | string | Idioma dos resultados (ex: `pt-BR`) |
| `maxMentionsPerSource` | número | Máximo de menções por fonte |
| `includeAiAnalysis` | boolean | Gerar relatório SWOT com IA (requer `GEMINI_API_KEY`) |

#### Exemplo de Entrada

```json
{
    "brandName": "Nubank",
    "brandDomain": "nubank.com.br",
    "competitors": ["Inter", "C6 Bank"],
    "sources": ["google", "news", "trustpilot"],
    "language": "pt-BR",
    "maxMentionsPerSource": 20,
    "includeAiAnalysis": false
}
```

### 📤 Saída

O actor gera um **resumo do relatório da marca** seguido das menções individuais:

```json
{
    "type": "brand_report",
    "brandName": "Nubank",
    "scannedAt": "2026-02-19T05:18:31.024Z",
    "totalMentions": 10,
    "sentimentBreakdown": { "neutral": 10 },
    "sourceBreakdown": { "google_news": 10 }
}
```

Cada menção individual:

```json
{
    "id": "bv_1771478310756_gxt0gk",
    "source": "google_news",
    "brandName": "Nubank",
    "title": "Nubank recebe aprovação para operar como banco nos Estados Unidos",
    "url": "https://g1.globo.com/economia/noticia/2026/01/29/nubank-estados-unidos.ghtml",
    "sentiment": "neutral",
    "type": "news"
}
```

### 💡 Casos de Uso

- **Monitoramento de Marca** — Saiba o que dizem sobre sua marca em tempo real
- **Gestão de Reputação** — Capture menções negativas antes que viralizem
- **Inteligência Competitiva** — Compare sua percepção de marca vs. concorrentes
- **PR & Comunicação** — Meça o impacto dos seus press releases
- **Pesquisa de Mercado** — Entenda a percepção de marca no mercado brasileiro
- **Relatórios Executivos** — Dashboards semanais de saúde da marca

### 💰 Preços

This actor uses **Pay Per Event (PPE)** pricing. The rate depends on your Apify plan tier:

| Plan tier | Per mention found | Per 1,000 |
|-----------|-----------|-----------|
| All plans | $0.005     | $5.00 |

**You are never charged for a run that returned nothing.** When the source blocks and
nothing is extracted, the actor returns a labeled diagnostic and charges no PPE event.

### ❓ Perguntas Frequentes

**P: Quais fontes são monitoradas?**
R: Google, Google Notícias, Reddit, Trustpilot e Reclame Aqui. Escolha qualquer subconjunto via o campo `sources`.

**P: Como funciona a análise de sentimento?**
R: Cada menção é classificada como positiva, negativa ou neutra. Com `includeAiAnalysis` ativado, um relatório SWOT também é gerado.

**P: Preciso de conta ou chave de API?**
R: Não é necessária conta para o monitoramento. O relatório SWOT com IA requer a variável de ambiente `GEMINI_API_KEY`.

**P: Posso comparar com concorrentes?**
R: Sim. Informe os nomes em `competitors` para obter benchmarking de visibilidade lado a lado.

**P: Sou cobrado se nenhuma menção for encontrada?**
R: Não. A cobrança é por `mention-found`; execuções que retornam zero menções não são cobradas por resultados.

### 🔗 Actors Relacionados

Combine com outros actors da suíte [Viral Analyzer](https://apify.com/viralanalyzer):

- [Competitor Intelligence Hub](https://apify.com/viralanalyzer/competitor-intelligence-hub) — Análise competitiva completa: preços, stack, anúncios, avaliações
- [SEO Intelligence Suite](https://apify.com/viralanalyzer/seo-intelligence-suite) — Análise de SERP, rastreamento de palavras-chave e backlinks
- [Google Maps BR Scraper](https://apify.com/viralanalyzer/google-maps-br-scraper) — Dados de negócios locais com avaliações e sentimento do Google Maps
- [RSS News Intelligence](https://apify.com/viralanalyzer/rss-news-intelligence) — Monitore cobertura de notícias e menções na mídia em tempo real

### 📝 Histórico de Versões

#### v1.0

- Lançamento inicial: monitoramento multi-fonte (Google, Google Notícias, Reddit, Trustpilot, Reclame Aqui)
- Classificação de sentimento por menção (positivo / negativo / neutro)
- Benchmarking de visibilidade vs. concorrentes
- Relatório SWOT opcional com IA via Gemini

### ⚖️ Legal

Acessa informações publicamente disponíveis de mecanismos de busca e plataformas de avaliação. Use com responsabilidade.

# Actor input Schema

## `brandName` (type: `string`):

The brand or company name to track (e.g., 'ViralAnalyzer', 'Nubank', 'iFood')

## `brandDomain` (type: `string`):

The brand's website domain for precise matching (e.g., 'nubank.com.br')

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

Competitor brands to include for benchmarking comparison

## `sources` (type: `array`):

Which sources to check for brand mentions

## `language` (type: `string`):

Preferred language for search results

## `maxMentionsPerSource` (type: `integer`):

Maximum number of mentions to collect per source

## `includeAiAnalysis` (type: `boolean`):

Comprehensive AI analysis of brand perception (requires GEMINI\_API\_KEY)

## `proxyConfiguration` (type: `object`):

Proxy settings for reliable scraping

## Actor input object example

```json
{
  "brandName": "Nubank",
  "brandDomain": "",
  "competitors": [],
  "sources": [
    "google",
    "news",
    "reddit"
  ],
  "language": "pt-BR",
  "maxMentionsPerSource": 20,
  "includeAiAnalysis": false,
  "proxyConfiguration": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "RESIDENTIAL"
    ]
  }
}
```

# Actor output Schema

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

Dataset containing all scraped results. Each item follows the dataset schema.

# 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 = {
    "brandName": "Nubank"
};

// Run the Actor and wait for it to finish
const run = await client.actor("viralanalyzer/brand-visibility-tracker").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 = { "brandName": "Nubank" }

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

```

## MCP server setup

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

```

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/aRB40h7sZzFcGdGdV/builds/JT1Wza76rgwO0VrA5/openapi.json
