ReddGrowReddGrow Docs
AI Observability as a ServiceGuides

Tracking Visibility Over Time

How to build a visibility timeline using the AEO API.

Tracking Visibility Over Time

Goal: Pull daily visibility data for a brand, compute week-over-week change, and identify which AI engines are gaining or losing ground.


Step 1: Pull a 30-day timeline

GET /v1/aeo/visibility/timeline returns daily visibility_pct data points for a brand over a rolling window:

curl "https://api.reddgrow.ai/v1/aeo/visibility/timeline?brand_id=42&days=30" \
  -H "x-api-key: rg_YOUR_KEY"

Response shape (abbreviated):

{
  "data": [
    { "date": "2026-04-10", "visibility_pct": 64.2, "mentioned_count": 9, "total_scans": 14 },
    { "date": "2026-04-09", "visibility_pct": 57.1, "mentioned_count": 8, "total_scans": 14 },
    { "date": "2026-04-08", "visibility_pct": 71.4, "mentioned_count": 10, "total_scans": 14 }
  ]
}

Each data point includes the raw counts behind the percentage, so you can verify the math: visibility_pct = (mentioned_count / total_scans) * 100.


Step 2: Compare engines

Use GET /v1/aeo/visibility/by-engine to see where your brand performs best and worst:

curl "https://api.reddgrow.ai/v1/aeo/visibility/by-engine?brand_id=42&from=2026-04-03&to=2026-04-10" \
  -H "x-api-key: rg_YOUR_KEY"

This returns one row per engine with visibility_pct, avg_sentiment_score, and avg_position. A brand that scores 80% on Perplexity but 20% on ChatGPT has an engine-specific gap worth investigating.


Step 3: Build a weekly delta report

To compute week-over-week change, call the timeline endpoint twice — once for the current week and once for the prior week:

# Current week
curl "https://api.reddgrow.ai/v1/aeo/visibility/by-brand?brand_id=42&from=2026-04-03&to=2026-04-10" \
  -H "x-api-key: rg_YOUR_KEY"

# Prior week
curl "https://api.reddgrow.ai/v1/aeo/visibility/by-brand?brand_id=42&from=2026-03-27&to=2026-04-03" \
  -H "x-api-key: rg_YOUR_KEY"

Subtract visibility_pct values to get the delta. A delta of +8.3 means your brand appeared in 8.3 percentage points more answers this week than last week.


Step 4: Filter by country

Add a country parameter to any visibility endpoint to isolate a specific market:

# US only
curl "https://api.reddgrow.ai/v1/aeo/visibility/timeline?brand_id=42&days=30&country=US" \
  -H "x-api-key: rg_YOUR_KEY"

# UK only
curl "https://api.reddgrow.ai/v1/aeo/visibility/timeline?brand_id=42&days=30&country=GB" \
  -H "x-api-key: rg_YOUR_KEY"

This is useful for brands with regional product variants or market-specific go-to-market strategies.


Putting it into a report

The visibility_pct value from these endpoints is directly chartable in any BI tool. In Looker or Google Sheets:

  1. Schedule a daily API call (via a simple cron or Cloud Function) to write the latest data point to a database or Sheet row.
  2. Chart visibility_pct over time — it behaves like a percentage metric with no normalization needed.
  3. Overlay engine breakdown data to identify which engine is driving changes.

See Auditing Your Scores to trace any unexpected dip or spike back to specific scan results.