b/cited
[ Features ]

How it works,
end to end.

b/cited turns 90 days of Google Search Console data plus daily AEO citation runs into a single map of where you stand in both classic search and AI answer engines. Each section below walks through one surface in the dashboard — what it shows, what it draws from, what it lets you do next.

01
[ Onboarding ]

Connect Google Search Console

Sign in with Google. The OAuth flow requests a single sensitive scope: webmasters.readonly — read-only access to Search Console data on the properties you've verified. Nothing else. No write access, no other APIs, no analytics.

Pick a verified property. b/cited pulls the last 90 days of query + page impression data, the most recent calendar month's URL-level metrics, and the property's verification status. Total time from sign-in to first dashboard view is usually under five minutes.

The encrypted refresh token lives in Cloudflare D1, encrypted with AES-GCM using a key in Cloudflare's secret store. It's used to refresh access on subsequent syncs and for nothing else. Full detail in the privacy policy.

02
[ The SEO half ]

Topical clusters

Each query the property pulled gets embedded via OpenAI's text-embedding-3-small (1536 dimensions) and stored in Cloudflare Vectorize. A centroid-greedy clustering pass groups semantically related queries — "schema markup setup" and "structured data implementation" end up in the same cluster even though they share no exact words.

For each cluster, the dashboard surfaces:

  • Cluster label (LLM-generated from the top queries)
  • Member count + sample queries
  • Total impressions, clicks, average position, CTR
  • Ownership status — which page on your site (if any) currently ranks; ranking depth across the cluster
  • Authority score — composite metric weighting impressions × position × CTR × ownership coherence

This is the structural map. Every other surface — briefs, quick wins, internal-link suggestions — draws from it.

b/cited dashboard showing topical clusters discovered from Google Search Console data, with cluster sizes and ownership status
03
[ The AEO half ]

AEO citation tracking

Define a set of tracked prompts — questions a prospective customer might type into ChatGPT, Claude, or Perplexity. The cron fan-out runs each prompt against all three providers daily; manual runs are available on every tier.

For each run, the citation extractor parses the model response and detects:

  • Whether your domain appears in the citation list (the "cite" signal)
  • Whether your brand is mentioned in the body without linking (the "mention" signal)
  • Citation position when present
  • Which competitor domains were cited instead
  • The raw answer text, stored for audit

All three signals roll into a per-engine Visibility Score (0–100) and an overall score weighted across providers. Competitor leaderboards show which other brands consistently beat you to citation on the same prompts — the AEO-shaped answer to "who's eating my lunch in this conversation?"

b/cited AEO citation tracking dashboard showing tracked prompts and which AI engines cited the domain on which runs
04
[ From signal to action ]

Content briefs

Briefs are the editorial output the dashboard exists to produce. Each brief targets one underserved cluster or content gap and includes:

  • The target query set (3-8 queries with shared intent)
  • Suggested page structure (H1, H2 sequence, FAQ block, examples)
  • Schema types to embed (Article, FAQPage, HowTo, BreadcrumbList depending on intent)
  • Internal-link targets — which existing pages on your site should link in, which should link out
  • Competitor pages currently ranking, with notes on what's missing from each
  • EEAT signals to lean into (author byline, primary-source citations, structured author credentials)

Briefs aren't AI-written copy. They're an editorial outline — the planning layer between data and a real writer (you, your team, a contractor). The pattern is: ingest the data once, generate briefs against it, ship pages, re-ingest in 4–6 weeks to measure.

b/cited content brief detail page showing target queries, suggested H-tag structure, schema types, and internal link recommendations
05
[ Health check ]

Site Readiness Audit

Eight-category audit producing an A-F letter grade and a full finding list per check:

  • Indexing — robots.txt, sitemap, canonical, X-Robots-Tag
  • Metadata — title, description, lang, viewport, H1
  • Social — Open Graph, Twitter Card completeness
  • Schema — JSON-LD presence, Article / FAQPage / Organization / Author coverage
  • AEO — llms.txt, ai.txt, AI crawler stance, AI-targeted schema (the AEO-specific category competitors don't have)
  • Security — HSTS, X-Frame-Options, CSP, Referrer-Policy, Permissions-Policy
  • International — hreflang, lang variants
  • Mobile + Performance — viewport, PSI integration for Core Web Vitals

Available as an anonymous public scan (no sign-in, IP-rate-limited) and as a per-project audit inside the dashboard. Pro and Agency tiers get on-demand runs; Agency adds scheduled monthly audits via cron.

06
[ Agency tier ]

White-label + monthly PDF reports

Two Agency-only surfaces beyond the higher project cap:

  • White-label public Visibility Cards — every project gets a shareable public URL. Pro tier renders it in b/cited's branding. Agency tier lets you override agency name, logo (R2-stored, ≤200KB), accent color. The URL stays the same, the chrome becomes yours.
  • Monthly PDF reports — scheduled cron renders a per-project PDF on the 1st of each month covering cluster movement, authority deltas, AEO visibility trends, brief counts, and the latest audit grade. PDFs land in R2 and email-send to the project owner with a 24-hr signed download URL. Recipients list supports additional addresses for client delivery.

Both surfaces are configurable from the Settings page on Agency-tier accounts.

[ Get started ]

Run an anonymous scan,
or connect Search Console.

The anonymous scan needs only a URL — it produces the same 8-category Site Readiness audit you'd see inside the dashboard. Connecting Search Console unlocks everything else.

Features — How b/cited works | AEO + SEO walkthrough