Skip to main content

Purpose

Stores aggregated visibility score calculated from prompt results across 8 AI platforms. Maintains historical score data for trend visualization.

Architecture

Score Formula

overall_score = (total_visible / (num_prompts * 8)) * 100
Where:
  • total_visible = Sum of all True values across all prompts and platforms
  • num_prompts = Number of prompts analyzed
  • 8 = Number of AI platforms

Request Body

{
  "business_id": "org-slug-123",
  "product_id": null,
  "results": [
    {
      "prompt": "best payment gateway",
      "chatgpt": true,
      "claude": false,
      "gemini": true,
      "perplexity": true,
      "copilot": false,
      "deepseek": false,
      "grok": true,
      "google_ai": false
    }
  ],
  "backdate_to": null
}

Floor Protection

Scores cannot drop below the historical minimum + 1. This prevents dramatic score drops due to API failures or anomalies.

History Seeding

On first score, seeds 2 days of fake history for better chart visualization:
  • Day -2: Score 0
  • Day -1: Score 35 (signup day baseline)

Code Location

src/app/apis/cron/store_visibility_score/routes.py