Exact position rankings across ChatGPT, Perplexity, Gemini, and Claude — measured via production APIs with live retrieval where supported. Every claim on this page reflects how the system works today.
We ask each engine real buyer-intent questions for your category and parse the ranked order of brands in the answer — numbered lists, bullet rankings, and explicit rank phrases. Your position is where your brand appears (#1, #2, #3, and so on). Unranked means the engine did not mention your brand in a ranked context.
We track four engines in parallel on every scan: ChatGPT, Perplexity, Gemini, and Claude. Each engine receives the same buyer-intent query; we store the answer text, extracted position, and history so you can see trends over time.
| Engine | Model ID | API | Grounding |
|---|---|---|---|
| ChatGPT | gpt-5 | OpenAI Responses API | Live web search enabled |
| Perplexity | sonar | Perplexity API | Retrieval-native (always live) |
| Gemini | gemini-3.5-flash | Google Generative Language API | Google Search grounding enabled |
| Claude | claude-sonnet-4-6 | Anthropic API | Model-native (no separate web-search tool) |
Model IDs update as providers release new generations; this page reflects production config. Override via environment variables without a code deploy when we rotate models.
Re-scan cadence: Pro — weekly automatic re-scan (default workflow cadence). Agency — daily re-scan supported on Agency plans (select daily in Settings → Automation).
AI-generated answers are not deterministic. Temperature, retrieval freshness, and source ranking can change the brand order between two calls to the same engine with the same question — even when your website has not changed.
Engines that use live web search (ChatGPT with web search, Perplexity, Gemini with Google Search) can cite different domains month to month as the open web shifts. That volatility is industry-wide, not unique to Surfedo.
Practical guidance: judge direction over weeks of scans, not a single before/after. A one-rank dip on one engine is noise; sustained movement across engines and queries is signal.
When you mark a fix as done, Surfedo saves a before snapshot of positions for the affected queries and schedules a follow-up re-scan (14 days later by default, or immediately via Verify now). The dashboard reports before/after position delta per engine.
We measure OpenAI's current production model (gpt-5) with live web search via the Responses API. Answers closely track consumer ChatGPT for category research queries, but we deliberately exclude consumer-only personalization and memory so results are comparable scan-to-scan.
AI answers are non-deterministic: the same question can produce different rankings between samples, and engines refresh retrieved sources continuously. Industry-wide, cited domains and brand order can shift month to month even without changes on your site. Judge direction over weeks of scans, not a single data point.
Paid plans include automatic position re-scans via scheduled workflows. Pro includes weekly automatic re-scan by default. Agency plans support daily re-scan — choose daily, weekly, or bi-weekly in Dashboard → Settings → Automation.
No. If an engine API call fails or returns unusable data, we show data unavailable — not a substitute number or mock score.
ChatGPT: gpt-5 (OpenAI Responses API, web search). Perplexity: sonar. Gemini: gemini-3.5-flash with Google Search grounding. Claude: claude-sonnet-4-6. See the engine table on this page; model IDs update as providers ship new generations.