The exact prompts we send to ChatGPT, Claude, and Perplexity, how we parse whether your brand appears in the response, and how the 0–100 composite score is weighted. Every audit on MentionMint runs the same pipeline below — no opaque scoring, no hidden weights.
Today, three: OpenAI gpt-4o-mini (the engine behind ChatGPT), Anthropic claude-3-5-haiku-20250620 proxied via the OpenAI-compatible endpoint (the engine behind Claude), and Perplexity sonar (a real-time web-grounded model). Each is queried in parallel via Promise.allSettled so a single provider outage does not block the audit — a slow or failing engine is dropped from the composite without failing the run.
Thirteen buyer-shaped prompts across four prompt categories: comparison, recommendation, brand_awareness, problem_solution, and pricing. Each prompt contains one or more of the placeholders [BRAND], [CATEGORY], [PROBLEM], and [COMPETITOR], which are substituted per audit before any per-prompt API call. The category is inferred one-shot with gpt-4o-mini before scoring starts so the eight comparison and recommendation prompts can be filled in correctly.
Each prompt asks the model to respond in a fixed three-field format: BRAND_FOUND: YES|NO, TOP_3_BRANDS: brand1, brand2, brand3, and CONTEXT: positive|neutral|negative. The parser matches each field with a regex on the model's raw completion. Mention rank is derived by finding the brand inside the returned top-3 list — rank 1, 2, or 3 — and rank 4 if the brand says YES but isn't in the top three.
Three sub-scores, each on a 0–100 scale. Frequency is (mentions / total prompts) × 100. Ranking is ((4 − avgRank) / 3) × 100 averaged across prompts where the brand was found (rank 1 maps to 100, rank 3 maps to ~33, rank 4 maps to 0). Context is (positive mentions / found mentions) × 100. The weighted per-engine score is the linear combination frequency·0.40 + ranking·0.30 + context·0.20 — the same 40/30/20 weights as the global composite, applied per engine.
The composite is a simple mean across the engine sub-scores, then blended with the crawlability score: composite = round(avgModelScore × 0.9 + crawlabilityScore × 0.1). Crawlability defaults to 70 when no live crawl has run yet, so free audits without a paid subscription still produce a useful composite — only the 10% crawlability slot is approximate, not the headline 90% engine score.
Perplexity's sonar model is what the audit uses to model the AI-Overviews-style answer because both are real-time web-grounded and surface citations the same way. The crawlability sub-score is the proxy for whether Google-Extended can fetch your content — that is why the composite blends crawlability at 10% rather than running a fourth engine. We do not run a separate Google AI engine column today, and we would rather ship a true three-engine score than a four-engine column that one of the engines did not actually test.
The free audit runs in under a minute and returns the same per-engine breakdown this page describes. Paid plans monitor the same pipeline weekly or daily so you can watch the score move as you ship fixes.