File viewer
draft_12082026_0916.json
/app/data/llm/draft/bupa/draft_12082026_0916.json
{
"summary_points": [
"Organic traffic is concentrated and fragile. 73.1% of organic traffic sits on just 10 pages, where AI citations do the heavy lifting while conventional authority is near-zero (0–1 referring domains each).",
"The paid surge masks organic erosion. Paid spend is up +806%, yet organic traffic is down -32% against a -33.9% volume decline — a pivot that papers over a structural visibility problem.",
"AI citation is a single-platform dependency. 90.3% of Bupa's 12,420 monthly AI impressions come from Google AI Overviews alone, with top 10 questions accounting for over half the volume — one sourcing change and the channel stalls.",
"Internal equity flows to the wrong assets. 752 dofollow internal links go to a VHIS glossary PDF and legal pages, while the AI-cited pages that drive traffic receive no concentrated internal support."
],
"method_notes": "Combined Ahrefs site explorer (22nd Nov 2024 18:28:07), Brand Radar AI visibility data (12,420 monthly AI impressions across Google, Perplexity, Gemini, Copilot), live HTTP checks from a single datacenter IP (27th Nov 2024, 10:53 UTC, 4ms RTT) and Ahrefs internal link data. Key gap: the 1-URL crawl (bupa.com.hk, 200 OK, depth 0, 0% indexable) is a sample artefact and cannot confirm indexation of the 34K-URL site. Prior analysis emphasis on backlinks is contradicted by the data — links are not the bottleneck.",
"featured_finding": {
"headline": "Bupa's organic channel is one Google AI Overview sourcing change away from collapse.",
"narrative": "Three independent sources converge on the same structural risk: Bupa's organic visibility is borrowed from a single feature of a single platform, on a handful of pages that have no authority backstop. Ahrefs shows that the pages driving 73.1% of organic traffic — including the critical illness page (1,939 visits), pregnancy insurance, baby insurance and VHIS pages — all sit on 0 or 1 referring domains each. Brand Radar independently confirms the concentration: 90.3% of Bupa's 12,420 monthly AI impressions come from Google AI Overviews and AI Mode. The top 10 AI questions alone carry 7,100 impressions. Live HTTP checks then rule out the easy explanation: PerplexityBot (130 impressions), Gemini (420 impressions) and Copilot (660 impressions) are not blocked — they simply don't cite Bupa. Access is open; the content isn't being sourced. Meanwhile, Ahrefs internal-link data reveals where the equity is going: 752 dofollow internal links each to two PDFs, and ~490 links to legal footer pages. Average internal links per page is 155.9 — meaning the AI-cited pages receive neither external nor concentrated internal support. The mechanism is clear and fixable: harden the AI-cited pages with interlinking, redirect the dead URLs holding DR 59–78 backlinks, and build citation presence on the platforms where access is already proven open.",
"proof_points": [
"Ahrefs: 73.1% of organic traffic is in top 10 pages; critical-illness page drives 1,939 visits on 1 referring domain.",
"Brand Radar: 90.3% of 12,420 monthly AI impressions are Google AI Overviews; top 10 questions carry 7,100 impressions.",
"Live checks: 0% block rate for GPTBot, ClaudeBot, OAI-SearchBot, PerplexityBot, Bytespider — identical treatment to browser access.",
"Ahrefs internal links: 752 dofollow links each to two PDFs; 490 links to legal pages; average 155.9 internal links per page."
],
"why_it_wins": "This is the only finding three sources converge on, it exposes the majority of current organic value to a single-platform sourcing decision Bupa does not control, and the shrinking demand curve (-33.9% volume) means there is no alternative recovery path. It is fast to verify (the client can check their own AI citations in week 1) and the root cause is already identified and cross-referenced."
},
"key_findings": [
{
"finding": "The site lets dead pages hold valuable backlinks from authoritative domains.",
"evidence": "Ahrefs shows real publications (am730 DR 75, howdengroup DR 78, lihkg DR 59) link to defunct URLs like /bupa-dental/ and /transfer-care/ — returning 404s with no redirects.",
"implication": "Authority is being wasted on dead pages that could be reclaimed and pointed at the AI-cited pages that need them most."
},
{
"finding": "AI citation presence on non-Google platforms is negligible despite open access.",
"evidence": "Live checks show all AI crawlers allowed (200); Brand Radar shows Perplexity (130 impressions), Gemini (420), Copilot (660) — collectively 1,210 impressions vs Google's 11,210.",
"implication": "The non-Google citation gap is a content/citation problem, not an access problem — remediating bot blocking would be wasted effort."
},
{
"finding": "The site's architecture shows no active technical maintenance.",
"evidence": "Live checks show slow 404s for probed paths (412–448ms) vs ~94ms for robots.txt; Ahrefs shows 752 internal links to PDFs; broken-backlink data shows no redirects on dead URLs.",
"implication": "Bupa is not actively managing its URL lifecycle, internal link equity, or crawl efficiency — making every other identification issue harder to diagnose and fix."
},
{
"finding": "The traffic decline is demand-shaped, not rankings-shaped.",
"evidence": "Ahrefs: traffic -32%, tracked keyword volume -33.9%, average position held flat. Brand Radar further shows heavy AI Overview presence on target queries.",
"implication": "The decline is predominantly market contraction, not a technical failure — but AI answers absorbing clicks may compound the loss, requiring GSC CTR data to separate."
}
],
"risk_areas": [
{
"issue": "Single-platform AI dependency on Google AI Overviews, with top 10 questions carrying >50% of AI volume.",
"priority": "P0",
"effort": "MEDIUM",
"impact": "HIGH",
"detail": "90.3% of 12,420 monthly AI impressions are Google AI Overviews; top 10 questions carry 7,100 impressions. One sourcing change and the channel stalls."
},
{
"issue": "Dead pages hold valuable backlinks with no redirects (e.g., /bupa-dental/, /transfer-care/ linked from am730 DR 75, howdengroup DR 78, lihkg DR 59).",
"priority": "P0",
"effort": "LOW",
"impact": "HIGH",
"detail": "Multiple links from authoritative publications point to defunct URLs returning 404s, wasting authority that could be reclaimed."
},
{
"issue": "Internal linking pours equity to PDFs and legal pages instead of AI-cited answer pages.",
"priority": "P1",
"effort": "LOW",
"impact": "HIGH",
"detail": "752 dofollow internal links each to a VHIS glossary PDF and ~490 to legal footer pages; AI-cited pages like critical-illness (1,939 visits) and pregnancy insurance receive no concentrated internal support."
},
{
"issue": "Slow application-layer 404s and no page caching hint at infrastructure neglect.",
"priority": "P2",
"effort": "MEDIUM",
"impact": "MEDIUM",
"detail": "Live checks show 412–448ms response times on 404s vs ~94ms for robots.txt, with no page-level caching — consistent with a site that has not been technically maintained."
}
],
"bot_management": {
"observed_facts": [
"Live checks from a single datacenter IP at 10:53 UTC on 27th Nov 2024 showed: robots.txt returned 200 OK. GPTBot, ClaudeBot, OAI-SearchBot, PerplexityBot, Bytespider all returned 200 OK — identical status to the desktop browser check. The datacenter IP alone returned a 403 for robots.txt and 404 for /contact/ and /services/. No bot/browser differential was observed for any AI crawler."
],
"seo_risks": [
"No SEO risk from AI crawler blocking was confirmed — all tested AI agents are explicitly allowed. The datacenter 403 affects the probing methodology only, not production crawlers."
],
"geo_hypothesis": {
"claim": "AI non-Google citation gaps are caused by content/citation absence, not by bot blocking.",
"supporting": [
"Brand Radar: Google AI Overviews 11,210 impressions vs Perplexity 130, Gemini 420, Copilot 660 — yet live checks show all non-Google AI crawlers allowed.",
"Live checks: 0% block rate for all AI crawlers tested."
],
"prevents_calling_fact": [
"Single-IP probe cannot represent all production crawler IPs.",
"UA-string based tests are not identical to production crawlers requesting from broader IP ranges.",
"Cannot confirm whether the datacenter 403 pattern extends to production Googlebot/Bingbot without server logs."
],
"definitive_check": "Server logs or Cloudflare dashboard to confirm production crawler IPs are not blocked."
},
"recommendations": [
"Do not invest in 'unblocking AI crawlers' — the live checks show access is open.",
"Audit the datacenter IP 403 pattern against production crawler IP ranges via server logs or Cloudflare dashboard.",
"Focus remediation on content/citation gaps on non-Google platforms."
],
"method_caveat": "Live checks are performed from a single datacenter IP using spoofed user-agent strings. They cannot detect IP-based blocking of production crawler ranges or rate-limiting that applies only to high-volume requests. The 403 on the datacenter IP is suggestive but not proof of any specific crawler being blocked."
},
"narrative_arc": [
"The data shows Bupa's organic channel is not struggling to be seen — it's struggling to be cited anywhere except Google AI Overviews, on a handful of pages that have no authority cushion to land on.",
"The paid surge (+806%) is papering over structural fragility: 73.1% of traffic is on 10 pages, 90.3% of AI impressions are from one platform, and the pages carrying the load have 0–1 referring domains each.",
"Fixing this is concrete and fast: harden the AI-cited pages with interlinking, redirect the dead URLs holding DR 59–78 backlinks, and build citation presence on platforms where access is already proven open.",
"The answer is on-site and technical, not off-site and link-based — and with GSC access and a full crawl, we can verify the path to recovery within week 1."
],
"recommendations": [
{
"action": "Harden the top 10 AI-cited pages with strategic internal linking from the site's highest-authority pages and redirect the dead URLs (e.g., /bupa-dental/, /transfer-care/) that hold DR 59–78 backlinks to these pages.",
"rationale": "Ahrefs shows 73.1% of traffic is on 10 pages with 0–1 referring domains; Brand Radar confirms these are the AI citation sources. Internal equity currently flows to PDFs (752 links) and legal pages (~490 links) instead.",
"validation": "Confirm in Ahrefs after 2 weeks: the AI-cited pages should show increased internal link counts and, where dead URLs are redirected, new referring domain counts."
},
{
"action": "Run a full 34K URL crawl to verify indexation, canonical tags, template soundness, and crawl depth for every AI-cited page — starting with the critical-illness insurance page (1,939 visits), pregnancy pages, baby insurance and VHIS pages.",
"rationale": "The 1-URL crawl is a sample artefact (0% indexable); every other source identifies these pages as the channel's backbone yet none have been crawl-verified.",
"validation": "The crawl output will confirm indexable status, canonical correctness, and identify template bugs or crawl-depth issues on the exact pages that matter."
},
{
"action": "Set up 301 redirects from the confirmed dead URLs with backlinks from authoritative domains (am730 DR 75, howdengroup DR 78, lihkg DR 59) to the relevant live service pages under locale prefixes (/tc/ or /en/).",
"rationale": "Ahrefs broken-backlink data proves real publications link to defunct pages; redirecting them reclaims authority that is currently wasted.",
"validation": "Check Ahrefs backlink report after redirects: the live target pages should show new referring domain counts from the redirected sources."
},
{
"action": "Audit the datacenter IP 403 pattern against production crawler IP ranges using server logs or Cloudflare dashboard.",
"rationale": "Live checks show a datacenter IP blocked (403) while all tested AI crawlers are allowed (200) — this needs confirmation that production crawlers are not affected.",
"validation": "Server logs or Cloudflare dashboard will confirm whether production Googlebot/Bingbot IPs hit 403 or 200."
}
],
"hypotheses": [
{
"claim": "The near-zero Perplexity/Gemini/Copilot citation is due to content/citation structure, not bot blocking.",
"status": "suggestive",
"how_to_verify": "Review Brand Radar cited-page content for each platform and compare with the content the non-Google platforms cite from competitors."
},
{
"claim": "AI Overviews are compressing Bupa's organic click-through rate on queries where Bupa is cited.",
"status": "suggestive",
"how_to_verify": "GSC data — compare CTR and impressions for queries where Bupa appears in AI Overviews vs not."
},
{
"claim": "The /contact/ and /services/ 404s are an artefact of locale-prefixed architecture, not missing content.",
"status": "unverified",
"how_to_verify": "Full crawl of /tc/ and /en/ paths to confirm these pages exist under locale prefixes."
},
{
"claim": "Production Googlebot is not blocked by the datacenter IP 403 pattern.",
"status": "unverified",
"how_to_verify": "Server logs or Cloudflare dashboard showing Googlebot IP range response codes."
}
]
}