SGT-2026 — AI Brand Visibility SERGEANT

AI Brand Quick Check

Technical documentation: how the Quick Check works, architecture, scoring methodology, and API reference.

Overview

The Quick Check is a free, automated tool that measures how visible a brand is across major AI platforms. Users enter their website URL and optionally describe their industry (freetext). The system automatically extracts the brand name from the website's meta tags. Within 15-20 seconds, it queries four AI models in parallel, analyzes the responses against the brand's actual website content, and produces a Brand Visibility Score (0-100) with per-platform breakdowns, hallucination detection, and actionable recommendations.

Cloudflare Workers Cloudflare Pages D1 (SQLite) KV (Cache) OpenAI API Google AI API Anthropic API Perplexity API

Cost per check: ~$0.03 (API calls)

User Flow

  1. Input. User enters their website URL and optionally describes their industry in a freetext field (e.g. "HR software", "organic wine e-commerce"). An info tooltip explains how specificity improves results. Hidden honeypot field and timestamp are captured for bot prevention.
  2. URL Scraping. The backend fetches the target website and automatically extracts the brand name (from og:title, <title> tag, or domain fallback), meta description, and key facts for later verification. No manual brand name input needed.
  3. Parallel AI Queries. Three industry-specific prompts are sent to each of the four AI platforms simultaneously (12 API calls total).
  4. Judge Evaluation. A separate Claude Haiku call evaluates all responses against the scraped website facts: scores each dimension, detects hallucinations, and generates recommendations.
  5. Score Display (free). Animated score circle and per-platform bars appear immediately. This creates the emotional trigger.
  6. Email Gate. Hallucinations, recommendations, and competitor insights are hidden behind an email field. Disposable email domains are blocked client-side.
  7. Detail Unlock. After email entry: hallucination details, top 3 recommendations, competitor teaser, and audit CTA are revealed.

Technical Architecture

Browser (Static HTML)
POST /api/check
Cloudflare Worker
Scrape Target URL
4 AI APIs (parallel)
Judge Model
Cache in KV (24h)
Store in D1
JSON Response

Cloudflare Resources

  • Pages project: sgt-ai-brand-visibility (SGT account)
  • Custom domain: ai-branding.sergeant.agency
  • KV namespace: QC_CACHE (rate limits, result cache with 24h TTL)
  • D1 database: qc-db (region: EEUR, tables: checks, leads, audit_requests)

Prompt Strategy (3 Prompts x 4 Platforms = 12 Calls + 1 Judge)

Each AI platform receives three industry-specific prompts designed to measure different aspects of brand awareness:

0-40 pts
Awareness
"What do you know about [Brand]?" Measures whether the AI knows the brand exists and how detailed/accurate that knowledge is.
0-40 pts
Visibility
"Which companies do you recommend for [industry] in Switzerland?" Checks if the brand appears in competitive recommendations.
0-20 pts
Sentiment
"What are the strengths and weaknesses of [Brand]?" Evaluates how positive or negative the AI's portrayal is.

Scoring Methodology

Per-platform score = Awareness (0-40) + Visibility (0-40) + Sentiment (0-20) = 0-100. The weighted overall score uses market share-adjusted weights:

30%
ChatGPT
25%
Gemini
25%
Perplexity
20%
Claude

The judge model (Claude Haiku) cross-references all AI responses against the scraped website content to detect hallucinations, meaning facts the AI states that contradict the actual website. These are flagged separately in the results.

Scoring Calibration (Target)

The scoring should be calibrated so that even well-known brands land in the 55-70 range, not 80-90. This ensures the score creates urgency across all segments.

Awareness (0-40)
Current: Binary "knows / doesn't know." Target: Evaluate depth and accuracy. Knowing the brand name = 15 pts max. Correct details about products, history, market position = up to 40.
Visibility (0-40)
Current: Mentioned = high score. Target: Position matters. Recommended first = 40. Mentioned third = 20. Listed but not recommended = 10. Not mentioned = 0.
Sentiment (0-20)
Current: Positive = high score. Target: Hallucinations should actively penalize. Each factual error = -3 pts from sentiment. Mixed sentiment with correct facts scores higher than positive sentiment with wrong facts.

Implementation: These calibration rules need to be encoded in the judge prompt (_worker.js, judgeResponses function). The current prompt asks for scores but doesn't enforce strict calibration. A calibration pass with 10-15 known brands (mix of large/medium/small) should validate the new scoring before going live.

Bot Prevention

Three invisible layers protect against automated abuse without impacting the user experience:

Honeypot Field
Hidden form input only visible to bots. If filled, the request is silently dropped.
Time Check
Submissions faster than 2 seconds after page load are rejected as bot behavior.
Rate Limiting
Max 20 checks per IP per hour via Cloudflare KV. Temporarily raised for testing.

Database Schema (D1)

-- Stores every Quick Check result checks (id, url, brand, branche, score, result_json, ip_hash, created_at) -- Email captures (optional post-result) leads (id, check_id, email, created_at) -- Full audit request form submissions audit_requests (id, first_name, last_name, email, phone, company, brand, website, branche, employees, role, competitors, interests, message, qc_score, qc_brand, created_at)

Results Screen

Results are split into two tiers. The score creates the emotional trigger, the details are gated behind email.

Free (no email required)

  1. What we analyzed. Brand name + URL displayed for transparency.
  2. Brand Visibility Score. Animated circle (0-100), color-coded by range.
  3. Platform Bars. ChatGPT, Gemini, Perplexity, Claude individual scores.

After email (gated)

  1. Misinformation Detected. Hallucination details if the AI got facts wrong. Strongest emotional trigger.
  2. Top 3 Recommendations. Actionable insights from the judge model.
  3. Competitor Teaser. "We found competitors in your space" (no details shown, drives curiosity).
  4. Audit CTA. "Request your full AI Brand Audit" linking to audit form.

Disposable email domains (tempmail, guerrillamail, etc.) are blocked client-side. The email also triggers a 7-day automated re-check with score change notification.

Conversion Funnel

Fast path (ready to buy):

Quick Check
Score + Hallucinations
Request Audit (CHF 4,900)
Optimization (CHF 12-18k)
Management (CHF 2,900/mo)

Slow path (not ready yet):

Quick Check
Score + Hallucinations
Email: "Notify me"
7-day re-check
Request Audit

API Endpoints

POST /api/check Run Quick Check (url, industry) POST /api/audit-request Submit audit form POST /api/email Email capture (currently unused) GET /api/debug Tests all API key connectivity GET /report/:id Print-friendly report page

AI Platform API Keys

OPENAI_API_KEY (gpt-4o-mini) GOOGLE_AI_API_KEY (gemini-2.5-flash) ANTHROPIC_API_KEY (claude-haiku-4-5) PERPLEXITY_API_KEY (not set, billing pending)

Secrets managed via wrangler pages secret put. Cloudflare Pages project: sgt-ai-brand-visibility (SGT account).