ATB / Audit Brief · Complete · Rev. 3

All five phases are done. Competitive rank changes depending on which of the audit’s three methods measures it.

The complete, cross-phase report for the ATB positioning audit. Two domains that show zero keyword overlap with ATB in Phase 2 — accountingpracticesales.com and poegroupadvisors.com — are the same two that lead Phase 3’s live California SERP breadth (99.6% each) and Phase 4’s 5-engine AI leaderboard (27.90% and 37.93% share of voice). ATB itself ranks 9th of 10 on that leaderboard: zero link citations and one brand mention, across all five engines combined. Phase 5 (Synthesis, free) closes the audit at $20.66 total.

What this document is, and isn’t. This is the ongoing working brief for the whole audit — it gets appended to after every phase, in this same Swiss Grid system, so the shape of the full audit stays legible from day one. It is not keyword-brief.html, Phase 1’s own approved Gate 1 deliverable, which stays exactly where it is, untouched. It is also not the eventual client-facing final report — that’s a Phase 5 / end-of-audit artifact, built later from this same data, likely via the full print/flipbook pipeline. Where Phase 1 or Phase 2 content already has a full deliverable, this brief gives the headline findings and links out rather than duplicating pages of detail.
Rev. 2 — two client-flagged fixes. (1) The Phase 1×Phase 2 cluster cross-reference (§p2-cross) previously sat “AI Overview share” and “ATB present” side by side in a way that read as one stat about the other — they measure different things and were never actually cross-checked against real citation data. Fixed with a real per-cluster cross-reference against Phase 2’s raw sge with_link/without_link pulls (verified, not assumed: 0 citations in every cluster), unambiguous separate labels, a denominator next to every percentage in that section, and a standing note on AI Overview’s platform scope (Google Search specifically). (2) Phase 2’s gap files (§p2-oncat) now carry an on-category breakdown alongside the unchanged full/general totals, using the same documented rule set Phase 1 established for all-keywords.csv, applied fresh to the larger gap sets. Full detail in RUN-LOG.md.
Rev. 3 — Phase 5 (Synthesis) closes the audit, plus one Phase 3 correction. Phase 5 adds no new SE Ranking data — it places Phases 1–4 side by side and names what the comparison surfaces. Full write-up: 05 — Synthesis/synthesis.html. While verifying Phase 3’s breadth figures directly against derived/breadth.csv for that synthesis, found that prohorizons.com and cpasales.com had been incorrectly reported as zero breadth in §p3-breadth below — both actually rank under their www. subdomain in the underlying data. Corrected in place there, with a note explaining the fix; search-summary.md carries the same correction. Full detail in RUN-LOG.md.
00 Where this audit stands

$20.66 total. Five of five phases complete. Audit closed.

The whole audit’s arc, stated once, before any of the detail below — five phases, two gates, a plan-quoted ceiling of roughly $51 for the full run.

Filled & azure on hover: complete, and jumps straight to that phase’s findings below. All five phases are filled — the audit is closed.

Total spent
$20.66
Credits used
~103,308
Confirmed
Gate 1 & Gate 2 approved 2026‑08‑29
Status
Audit complete — all five phases closed
Full-audit estimate
~$51
Every phase, its status, and what it costs — the shape of the whole audit
PhaseStatusActualPlan estimateGate
1 · Keyword BuildComplete$1.83$3.41Gate 1 — approved 2026-08-29
2 · Competitive MapComplete$0.68$2.90none required
3 · SearchComplete~$13.77$21.00none required
4 · AI VisibilityComplete~$4.38~$24.00Gate 2 — approved 2026-08-29
5 · SynthesisComplete$0.00freenone required — closes the audit

All five phases came in at or under their plan estimate — Phase 1 at 54% of quote, Phase 2 at 23%, Phase 3 at roughly 66% ($13.77 of a $21.00 quote — credits estimated from Phase 3’s per-invocation call-volume logs, since the account’s real-time balance figure did not move all session and RUN-LOG.md treats it as unreliable for this purpose), Phase 4 at roughly 18% ($4.38 of a $24.00 quote — under mainly because prompts-by-target bills per row returned, not per row requested, and ATB had almost nothing to return), Phase 5 free as specced — primarily because flat-rate domain/* data already pulled in Phase 1 was reused rather than re-billed in Phase 2, and because the niche’s real discoverable keyword footprint turned out smaller than PLAN.md’s pre-run assumption (full detail in RUN-LOG.md). The five-phase audit lands at $20.66 total — about 41% of the ~$51 ceiling.

01 Phase 1 — Keyword build (complete, Gate 1 approved)

14,184 raw rows narrowed to a 417-keyword universe, then a 151-term working list.

Condensed here to the headline findings. Full detail — all 15 sections, cluster cards, the per-competitor comparison, the motivation rule set — lives in the approved Gate 1 deliverable, which this brief links out to rather than duplicates: 01 — Keyword Build/keyword-brief.html.

The funnel
Raw rows
14,184
Unique keywords
6,746
With usable data
6,235
On-category, deduplicated
417
Selected for the working list
151

Every dropped row is retained with its reason in dropped.csv — nothing vanishes silently.

The single closest competitor to ATB by keyword overlap was never on the client’s list.
Newly-identified competitors, and the client-named domains that turned out invisible to overlap discovery
DomainCommon w/ ATBStatus
accountingbroker.com198 — #1 of any domainNewly identified, not on the client’s original list
acctsales.com157 — #3Newly identified
prohorizons.com141 — #5Newly identified, CA/OR/WA-focused
Accounting Practice Sales, Poe Group Advisors, Green Growth CPAs0, all threeClient-named, verified real and distinct — genuinely zero organic overlap with atbcal.com

Full roster detail, including domain_relevance and the per-competitor gap tables, in keyword-brief.html §04 and §09.

Read at full coverage, buy-side search demand outweighs sell-side by roughly 51%.
Buy-side
224 kw · 8,710 vol
Sell-side
106 kw · 5,770 vol
ATB present, buy-side
80 of 224 (36%)
ATB present, sell-side
39 of 106 (37%)
Motivation coverage
417 of 417 (100%)

Full-coverage motivation tagging (0 ambiguous rows, up from 30% coverage in the prior revision) reversed an earlier, partial-data reading that looked roughly sell/buy balanced. ATB’s presence rate is roughly even between the two sides — the buy-side pool is simply much larger. Detail in keyword-brief.html §06–07.

Cost: $1.83 actual (9,158 credits) against a $3.41 plan estimate — under, primarily because Google autocomplete has no callable tool in this MCP surface and several seeds returned zero rows from every discovery endpoint. Full call-by-call log in RUN-LOG.md.

02 Phase 2 — Competitive map (complete)

ATB is cited inside an AI Overview zero times, and occupies zero of four major SERP answer features, across all 602 of its own ranking keywords.

Full treatment here — this is the first time Phase 2’s findings get the visual system applied. Plain-language source: 02 — Competitive Map/competitive-map-summary.md. The five gap files themselves live in 02 — Competitive Map/gaps/.

Roster & breadth
No competitor’s organic overlap reaches half of ATB’s own footprint — but three zero-overlap, client-named domains are larger than ATB in their own right.
atbcal.com (ATB — reference, 480 kw)
480
accountingbroker.com
198
go2bbi.com
166
acctsales.com
157
accountingfirmsold.com
152
prohorizons.com
141
nationalaccountingsales.com
132
cpasales.com
94
zbscpas.com
65
thrivefinancialgrp.com
27
goodaccountants.com
10

Outlined bar: ATB’s own 480-keyword footprint, the scale everything else is measured against. accountingbroker.com (azure) is highlighted as the single closest competitor by overlap — and it still touches only 41% of ATB’s territory.

The three client-named domains outside the overlap chart — zero common keywords, larger footprints on their own terms
DomainCommon w/ ATBTotal keywords on record
accountingpracticesales.com0≥2,000 (pagination capped by scope decision)
poegroupadvisors.com0≥1,398 (fully enumerated)
greengrowthcpas.com0≥2,000 (pagination capped by scope decision)

Overlap-based discovery and a domain’s own scale measure different things. All three are verified, real, distinct businesses — genuinely invisible to keyword-overlap discovery, and genuinely larger than ATB on their own record.

The AI Overview citation gap

Platform scope, stated once, holds for every “AI Overview” mention in Phase 1 and Phase 2: this is Google Search’s AI Overview (SGE) specifically — not ChatGPT, Perplexity, Gemini, or Google’s separate AI Mode. Every finding in Phase 1 and Phase 2, including everything below, measures Google Search only. Multi-engine coverage (ChatGPT, Perplexity, Gemini, AI Mode) is Phase 4, not yet run.

ATB is cited inside an AI Overview zero times, on any of its 602 ranking keyword-rows.
ATB with_link count (sge)
0
AIO present, doesn’t cite ATB
109 rows / 90 unique kw
Cites a named competitor instead
77 rows / 18 unique kw
Top 2 competitors’ share of citing rows
60% (46 of 77)
Who the AI Overview cites instead of ATB, on ATB’s own ranking keywords
CompetitorCiting rowsShare of 77
poegroupadvisors.com [zero organic overlap]3140%
accountingpracticesales.com [zero organic overlap]1519%
go2bbi.com1216%
accountingbroker.com1013%
accountingfirmsold.com810%
acctsales.com11%

The single most-repeated case: “cpa firms for sale in california” (volume 70) is cited inside the AI Overview by four different competitors — go2bbi.com, accountingfirmsold.com, accountingpracticesales.com, and poegroupadvisors.com — each at AI Overview position 1, while ATB ranks organically at positions 4–60 across four different pages and is cited by none of them. The two leading citing domains are the same two zero-organic-overlap, client-named domains that lead breadth above — a domain invisible to keyword-overlap discovery can still be the domain an AI Overview cites on ATB’s own core sell-side terms. Source: gaps/gap-ai-overview.csv.

SERP-feature presence — inside vs. merely near
ATB ranks organically alongside all four major SERP answer features on 592 keyword-rows — and occupies none of them.
ATB’s 602 ranking keyword-rows, checked against every answer/box-type SERP feature tracked
FeaturePresent on the SERP, ATB not inside itATB inside it
People Also Ask3790
Local Pack1860
AI Overview (sge)1090
Featured Snippet270

This is a wider pattern than the AI Overview gap alone — the same zero holds for local pack, featured snippets, and People Also Ask. Source: gaps/gap-serp-features.csv (592 rows).

Keyword & page gaps
7,606 gap-keyword rows exist where a roster competitor ranks and ATB doesn’t — and the highest-volume gap pages skew off-category or off-geo.
gap-keywords.csv
7,606 rows / 6,626 unique
From the 3 zero-overlap domains
5,398 rows (71%)
gap-pages.csv
1,328 distinct pages
The four largest gap pages by combined keyword volume — a mix of on-category and off-category content
PageGap keywordsCombined volumeRead
accountingpracticesales.com — New York/Northeast hub42583,930Off-geo regional hub page — the same page-type exists for California too (50 kw, 4,900 vol)
zbscpas.com — payroll & tax4311,640Off-category — payroll, not practice-sale
goodaccountants.com — NY financial audits7410,700Off-category — audit lead-gen
greengrowthcpas.com — IRS Form 8300 guide1175,480Off-category — general tax-compliance content

The pattern already named in Phase 1 — most competitors’ keyword gap isn’t cleanly on-category — holds again at the page level. Sources: gaps/gap-keywords.csv, gaps/gap-pages.csv.

On-category breakdown
The full gap totals above stay the reference number — underneath them, roughly 1 in 10 gap keywords and 1 in 15 gap pages are actually on-category.
gap-keywords.csv, on-category
762 of 7,606 (10.0%)
gap-pages.csv, on-category
87 of 1,328 (6.6%)
Ambiguous / force-fit
0 — every row resolved on evidence (see method)

Both full/general numbers (7,606 gap keywords, 1,328 gap pages) stay exactly as reported above — nothing is deleted or buried. This is a new, additional split laid alongside them, not a replacement, per the client’s explicit ask: see the on-category subset as the more actionable list, but don’t lose the bigger picture.

Method — the same judgment Phase 1 already established for all-keywords.csv, applied fresh to Phase 2’s larger gap sets (most of which were never run through Phase 1’s classification — a different, larger pull). Six ordered rules, first match wins, same discipline as the motivation rule set:

  • 1. Brand-collision. The keyword textually matches a roster competitor’s name/domain root and ranks for ≤2 distinct domains across the whole gap-keywords.csv set — real ranking concentration, not just a text match, decides this (see QA below for why the text-only version of this rule was wrong on the first pass). → off-category.
  • 2. Phase 1’s base gate, reapplied unchanged: on-category requires both a transaction term (sale, buy, merger, valuation, succession, broker, roll-up, financing, acquisition, transition, exchange) and an accounting-entity term (practice, firm, CPA, accounting, accountant, bookkeeping) in the same keyword. Anything short of both is off-category here — exactly Phase 1’s own dropped.csv treatment (off_category_no_transaction_entity_match), not a new judgment call.
  • 3–5, applied only to keywords that passed rule 2 (both terms present): payroll content → off-category · audit-lead-gen (financial-statement/compliance audit services, a different service line) → off-category · generic tax-prep/compliance content (filing, IRS forms, tax calculators, crypto/foreign-exchange tax topics) → off-category.
  • 6. Out-of-state / out-of-country regional-hub content. A non-CA US state name in the keyword itself, or the competitor’s own ranking URL is a non-CA state/Canada regional-hub page or an individually geo-tagged listing page (e.g. .../united-states/northeast/new-york/, .../canada/ontario/, or a listing slug decoding to “…, fl”) — verified from the URL’s own geography, the same standard already used for the accountingpracticesales.com New York hub page above. → off-category.
  • Anything clearing all six rules → on-category.

Two genuinely close calls, resolved on evidence rather than forced either way, both caught in QA: “cpa sales practice” and “accounting practice sales [state]” variants text-match a competitor brand (cpasales.com, accountingpracticesales.com) but each ranks across 5–7 unrelated domains in the gap dataset, not just the one domain the brand belongs to — real ranking behavior overrules the text match, so these were kept on-category (or, for the state-tagged variants, correctly routed to rule 6 instead). An earlier pass of rule 1 used text-matching alone and wrongly excluded both as brand-collision; fixed by gating the rule on ranking concentration (≤2 domains) before accepting a text match, the same domain-diversity check now folded into the rule itself. prohorizons.com/pacific/ was kept on-category rather than flagged out-of-state despite the page-level region name, because Phase 1 already documented prohorizons.com as CA/OR/WA-focused and one of its own on-category gap keywords on that exact page is “ca practice sales” — real evidence of California relevance, not a forced call either way.

Top on-category gap keywords by volume — the more actionable list
KeywordVolumeDomains rankingExample domain
valuation of firm methods5901greengrowthcpas.com
accounting purchasing4801accountingpracticesales.com
accounting practice exchange2605accountingbroker.com
cpa sales practice2607accountingfirmsold.com
western practice sales california2601accountingpracticesales.com
cpa practice for sale2603acctsales.com
cpa practices for sale2602acctsales.com
accounting merger1701accountingbroker.com
Top on-category gap pages by combined gap-keyword volume — note “total gap keywords” here is the page’s full count (all categories); the on-category share of each page’s own keyword list isn’t separately broken out
PageOn-category top termIts volumePage total gap keywords
poegroupadvisors.com/accounting practice exchange260149
acctsales.com/practices-for-sale/accounting practice exchange26089
cpasales.com/accounting practice exchange26048
accountingfirmsold.com/cpa sales practice26040
poegroupadvisors.com/buying/buy a cpa firm14021

Off-category rule breakdown, for transparency — gap-keywords.csv: no transaction/entity match 6,505 · out-of-state/out-of-country regional hub 312 · brand-collision 22 · payroll 3 · generic tax-prep 2 · audit-lead-gen 0 (no keyword that cleared the base gate also matched this rule). gap-pages.csv: no transaction/entity match 1,208 · out-of-state/out-of-country 25 · brand-collision 8. New files: gaps/gap-keywords-on-category.csv (762 rows) and gaps/gap-pages-on-category.csv (87 rows), each carrying a new on_category_rule column stating which rule matched. The original gap-keywords.csv / gap-pages.csv are untouched — still the full/general reference, unchanged row-for-row.

Cross-reference to Phase 1’s clusters

Two different things sit in this table, deliberately kept in separate columns. “AI Overview share” (Google Search’s AI Overview/SGE — see the scope note above; not ChatGPT, Perplexity, Gemini, or AI Mode) is a Phase 1 stat about the whole cluster’s keyword population, regardless of who ranks. “ATB ranks organically” is a separate, unrelated Phase 1 stat about ATB’s own plain organic ranking presence in that cluster (the URL-clustering “who ranks” data). Neither of those says anything about whether ATB is cited inside an AI Overview — that required a real, new cross-reference against Phase 2’s citation pulls, which the two right-hand columns below report for the first time, verified per cluster rather than assumed from the aggregate.

Verified per cluster, not assumed from the aggregate: ATB is cited inside an AI Overview zero times, in every one of the 8 clusters where it ranks at all.
All 11 URL-based clusters — Phase 1’s cluster-wide AI Overview trigger rate alongside Phase 2’s real, per-cluster citation cross-reference
Cluster Size AI Overview share (cluster-wide) ATB ranks organically ATB cited in AI Overview
Blog & news articles1376.9% (10 of 13) — highest1 of 130 of 1 keyword ATB ranks for that triggers one
Succession & merger/M&A content771.4% (5 of 7)0 of 7 — absent entirelyn/a — ATB ranks 0 keywords in this cluster
Other / miscellaneous ranking pages1741.2% (7 of 17)3 of 170 of 1 keyword ATB ranks for that triggers one
Buyer guidance content3737.8% (14 of 37) — highest with real volume10 of 37 — 3× sell-side guidance volume0 of 2 keywords ATB ranks for that trigger one
Valuation content1233.3% (4 of 12)4 of 120 of 1 keyword ATB ranks for that triggers one
Seller guidance content2532.0% (8 of 25)15 of 25 — cleanest side split, 100% sell0 of 1 keyword ATB ranks for that triggers one
Broker homepages & about/contact pages8924.7% (22 of 89)31 of 890 of 4 keywords ATB ranks for that trigger one
ATB’s own ranking pages2623.1% (6 of 26)26 of 26 — branded cluster, by definition0 of 6 keywords ATB ranks for that trigger one — highest count of any cluster
Practice listings & regional pages16913.6% (23 of 169) — lowest substantive cluster69 of 169 — largest cluster, strongest ATB presence0 of 11 keywords ATB ranks for that trigger one — highest count of any non-branded cluster
Financing content40.0% (0 of 4)0 of 4 — absent entirelyn/a — ATB ranks 0 keywords in this cluster
No ranking page identified (discovery-only)180.0% (0 of 18)0n/a — ATB ranks 0 keywords in this cluster

Method: for each cluster, its keywords were intersected against the exact 602-row keyword set atbcal.com’s own domain/keywords pull returned (the same set Phase 2’s 2.3/2.4 sge with_link/without_link pulls were run against) to get “ATB ranks organically.” Of that intersection, each keyword’s own serp_features field (cross-validated against the saved sge without_link raw file — both methods agree exactly, 90 of 90 keywords) determined whether it triggers an AI Overview. Since ATB’s global sge with_link pull already returned a genuine, structurally confirmed empty set (0 of 602 rows, logged in RUN-LOG.md, Phase 2 step 2.4), every cluster subset of that same 602-row set is mathematically guaranteed to be 0 as well — this table reports that per cluster rather than leaving it assumed. 8 of 11 clusters have at least one AI-Overview-triggering keyword ATB ranks for; in all 8, the citing count is 0. Practice listings (11) and ATB’s own branded cluster (6) carry the most such keywords — the largest exposure, and still zero. Separately, and unrelated to citation: the two clusters with the highest cluster-wide AI Overview trigger rate (blog/news, succession/merger) are also where ATB’s organic presence is thinnest or entirely absent. Full method and the per-cluster script output logged in RUN-LOG.md; the un-cross-referenced 11-row table (cluster-wide share only) remains in competitive-map-summary.md §5, unchanged.

Cost: $0.68 actual (3,400 credits) against a $2.90 plan estimate — under, because all 13 competitors’ domain/keywords data was reused from Phase 1’s already-paid pulls rather than re-billed. Full call-by-call log in RUN-LOG.md.

03 Phase 3 — Search (complete)

Two zero-organic-overlap competitors dominate California SERP breadth at 99.6% each — ATB sits mid-pack at 71.6%, tied with accountingfirmsold.com.

151 selected terms × 25 California MSAs, desktop — the audit’s only metered stage. Answers Q2 (under what conditions competitors show up) and Q4 (what the buyer actually sees on the page, not just rankings). Plain-language source: 03 — Search/search-summary.md.

Coverage & known gaps
3,739 of 3,775 pairs are real, content-verified results (99.05%) — not the 3,748 (99.3%) a raw file count would suggest.
Target
151 kw × 25 metros = 3,775
Files on disk
3,748
Real, content-verified
3,739 (99.05%)
Total known gaps
36
Device
Desktop only — mobile is a confirmed total gap, 0 of 3,775 (same fact already stated in §01–02, not re-litigated here)

27 gaps were flagged and documented during collection (RUN-LOG.md, Groups A–E: stuck/`processing` SERP tasks, retried at least once each, never resolved). A further 9 gaps were found only during this consolidation: an audit of every raw file’s own embedded keyword against the filename it’s saved under found 12 files across two metros (Merced, San Luis Obispo–Paso Robles — both in Group E’s territory) holding a duplicate copy of a different keyword’s result, meaning the keyword that should have been there was never really captured. RUN-LOG.md’s own account of this incident caught 4 mislabeled task IDs and 2 dropped keywords at the time; the full content-vs-filename audit found the true extent was larger. All 36 gaps, tagged by discovery method with task IDs where known, are in 03 — Search/raw/known-gaps.csv. Manifest merge detail (115 colliding keys / 125 excess rows across the 6 source manifest files, mechanical duplicates — not related to the 9 content gaps above) is in search-summary.md.

Breadth leaderboard
Phase 2’s overlap ranking inverts here: the two domains with zero keyword overlap lead California SERP breadth; go2bbi.com, Phase 2’s #2 by overlap, drops to 8th.
accountingpracticesales.com
274 / 275
poegroupadvisors.com
274 / 275
accountingbroker.com
251 / 275
prohorizons.com
225 / 275
acctsales.com
198 / 275
atbcal.com (ATB)
197 / 275
accountingfirmsold.com
197 / 275
nationalaccountingsales.com
176 / 275
cpasales.com
174 / 275
go2bbi.com
117 / 275
thrivefinancialgrp.com
26 / 275
zbscpas.com
1 / 275
greengrowthcpas.com / goodaccountants.com
0 / 275

Ordered horizontal bar, sorted descending — this is a ranking question (who leads breadth), not a plain magnitude comparison, so sort order carries the finding rather than a fixed roster order. ATB (azure) is flagged as the reference point among 13 roster competitors, not placed at 100% — unlike Phase 2’s chart, ATB is not the largest domain on this measure. Breadth = distinct metro×cluster combinations a domain appears in organically, out of 275 possible (25 metros × 11 Phase 1 clusters). Full 3,000-domain field (unfiltered by roster) is in derived/breadth.csv — it is dominated by generic platforms (youtube.com and accountingpracticeexchange.com each 275/275, facebook.com 271/275) rather than roster competitors, reflecting that most of these keywords are not geographically differentiated in Google’s organic results outside the local pack.

Phase 2’s domain/competitors overlap metric (national, keyword-count-based) ranked accountingbroker.com #1 (198 common keywords with ATB) and go2bbi.com #2 (166), while accountingpracticesales.com and poegroupadvisors.com registered zero organic keyword overlap and were flagged “invisible to keyword-overlap discovery.” On this California-metro SERP breadth measure — a live capture of the 151 selected keywords across all 25 metros, not a domain-level API snapshot — those same two zero-overlap domains are the two most dominant in the dataset, and go2bbi.com falls to 10th with well under half their footprint. Two roster domains (greengrowthcpas.com, goodaccountants.com) show genuinely zero breadth on this specific keyword set — they never place inside the top-20 organic results for any of these 151 keywords, in any of the 25 metros — and a third (zbscpas.com) shows almost none (1 of 275, 0.4%).

Correction, found during Phase 5 verification. This chart originally reported prohorizons.com and cpasales.com as zero breadth too. Both actually rank in derived/breadth.csv under their www. subdomain rather than the bare domain — a domain-matching gap in the script that filtered the 3,000-domain field down to the 13-domain roster. Corrected here: prohorizons.com 225 of 275 (81.8%, 4th overall) and cpasales.com 174 of 275 (63.3%, 9th overall). search-summary.md and RUN-LOG.md carry the same correction.

ATB’s own breadth: 197 of 275 (71.6%), 6th of the 14 roster+ATB domains (tied with accountingfirmsold.com, behind prohorizons.com), 2,229 total organic appearances, split 1,323 sell-side / 830 buy-side / 76 tagged both. Source: derived/breadth.csv.

AI Overview — cross-referenced against Phase 2

Same Google-Search-AI-Overview scope note as §02 holds here. This cross-reference compares two different measurements of the same surface, not two runs of the same measurement: Phase 2 checked ATB’s own 602 already-ranking keywords (national scope) against the domain-level sge/with_link API filter. Phase 3 is a live, California-geo-targeted fetch of the 151 curated, higher-value keywords — a different keyword universe and a different retrieval method. Both numbers are reported; neither corrects the other.

Phase 2 found ATB cited zero times on its own 602 ranking keywords. Phase 3’s live capture finds atbcal.com cited on 137 rows across 13 of the 151 selected keywords, all sell-side.
Phase 2 — ATB citations (602 kw, national)
0
Phase 3 — AI-Overview-bearing pairs
3,341 of 3,739 (89.4%)
Phase 3 — ATB cited
137 rows (4.1% of 3,341)
Distinct keywords citing ATB
13 of 151, all sell-side
Where the two phases agree — leading AI Overview citations among roster competitors, Phase 3’s independent live-capture dataset
CompetitorCiting rows (Phase 3, of 3,341)Phase 2’s finding on ATB’s own keywords
accountingpracticesales.com [zero organic overlap]1,07019% of citing rows (2nd)
poegroupadvisors.com [zero organic overlap]75940% of citing rows (1st)

The 13 keywords where atbcal.com is cited: accounting firms for sale near me, accounting practice broker, brokerage accountant, brokerage accounting, sell cpa practice, selling a cpa practice, selling a tax practice, selling an accounting practice, selling cpa practice, selling tax practice, selling to accountants, tax firm for sale, tax practice for sale. Local pack: ATB appears in exactly 1 of 794 local-pack-bearing pairs (accounting practice broker × San Diego–Chula Vista–Carlsbad) — consistent with Phase 2’s finding that ATB has no published physical address. Source: derived/serp-features-domains.csv.

SERP-feature incidence, this keyword set
Featured snippets are effectively absent from this keyword set (0.1%) — AI Overview and People Also Ask are close to universal.
Feature incidence across all 3,739 real, content-verified pairs
FeaturePairs presentShare
Related searches3,69998.9%
Video3,69498.8%
People Also Ask3,65697.8%
AI Overview3,34689.5%
Reviews3,32789.0%
Local pack79421.2%
Featured snippets50.1%

Source: raw/manifest-final.csv, page-level serp_features summary per pair.

Cluster & metro patterns
The two zero-overlap domains are close to unconditional across the metro grid — their breadth does not concentrate in any region.
Metro × cluster combinations
275 (25 metros × 11 clusters)
accountingpracticesales.com / poegroupadvisors.com
274 of 275 each — near-unconditional
Mobile device comparison
Not possible — 0 of 3,739 pairs are mobile, a stated absence, not a measured difference

ATB’s 2,229 organic appearances split roughly 59% sell-side / 37% buy-side / 3% both — a similar sell-lean to what Phase 1 found in raw search-demand volume, though Phase 1 found buy-side demand volume itself larger; which side ATB shows up for and which side has more total search volume are not the same question. derived/top-20-per-metro-cluster.csv holds the top 20 organic results (by rank_absolute) for each of the 275 metro×cluster combinations.

Cost: ~$13.77 (68,850 credits, estimated from Phase 3’s per-invocation call-volume logs across all five collection groups — RUN-LOG.md’s standing note is that getSubscription’s real-time balance did not move all session and is not reliable for this purpose) against a $21.00 plan estimate. Full call-by-call log in RUN-LOG.md.

04 Phase 4 — AI visibility (complete)

ATB ranks 9th of 10 competitors across 5 AI engines — zero link citations, one brand mention total.

Answers Q5 — per-engine brand vs. link presence, the 10-domain leaderboard, and 500 prompts (limit=100 × 5 engines) parsed for every brand named and every domain cited. Full per-prompt detail: 04 — AI Visibility/ai-who-instead.csv (62 rows). Raw responses: 04 — AI Visibility/raw/.

On any AI chart in this section — stated plainly, not a footnote. Google’s AI Overview reach is largely a function of being free and embedded in an existing search habit, not evidence of a stronger AI product. Its dominant weight below reflects distribution, not quality. Separately: AI Search data refreshes monthly (this pull is dated 2026-08-01 through 2026-09-01 depending on engine — see each raw file), while the rest of this audit’s search-layer data (Phases 2–3) is current as of today, 2026-08-29. The two dates are not the same clock.

Leaderboard — share of voice across all 5 engines
ATB’s 0.32% share of voice is the second-lowest of 10 tracked domains — only nationalaccountingsales.com, at zero, is lower.
Rank
9 of 10
Share of voice
0.32%
Link presence (any engine)
0
Brand presence (any engine)
1
Weakest competitor above ATB
accountingfirmsold.com — 2.32% / 6 links / 4 mentions
poegroupadvisors.com
37.93%
accountingpracticesales.com
27.90%
prohorizons.com
14.49%
acctsales.com
5.42%
accountingbroker.com
5.17%
cpasales.com
3.59%
go2bbi.com
2.87%
accountingfirmsold.com
2.32%
atbcal.com (ATB)
0.32%
nationalaccountingsales.com
0%

Ordered horizontal bar, sorted descending — this is a ranking question (who is most visible summed across 5 AI engines), not a plain magnitude comparison, so sort order carries the finding, same pattern as Phase 3’s breadth leaderboard. Bar width is scaled to the leader (poegroupadvisors.com, 37.93%), not to 100% of the field — the ten share_of_voice values already sum to ~100% on their own. ATB (azure) is flagged as the subject of the audit, not placed at the 100%-reference position — it is not the leader on this measure. Source: raw/leaderboard.json.

Full leaderboard — share of voice, link presence, and brand presence tracked separately, all 5 engines summed
DomainRankShare of voiceLink presenceBrand presence
poegroupadvisors.com137.93%12850
accountingpracticesales.com227.90%4264
prohorizons.com314.49%746
acctsales.com45.42%912
accountingbroker.com55.17%196
cpasales.com63.59%210
go2bbi.com72.87%151
accountingfirmsold.com82.32%64
atbcal.com (ATB)90.32%01
nationalaccountingsales.com100%00

10th slot was deliberately left empty at Gate 2 (no directory/marketplace platform met the bar; see §p3 roster note) — this is 9 of 10 filled slots plus ATB itself, not a 10-competitor field. All 9 competitors beat ATB on every one of the three tracked metrics; the gap to the weakest of them (accountingfirmsold.com) is still 7× ATB’s share of voice. No prior-period baseline exists in this account for atbcal.com — this is the first data point on record, not a measured decline. Source: raw/leaderboard.json, raw/atbcal-overview-and-prompts.json.

Genuine positives — real, and not lost inside the headline
ATB has exactly one real link citation and two real brand mentions on record across 500 sampled prompts — all three are named here.
Every confirmed ATB appearance found in this pull — prompt-level detail, 3 instances total
PromptEngineWhat happened
“how to sell a bookkeeping shop”AI ModeReal link citation to https://atbcal.com/selling/ — ATB’s only link citation across all 5 engines.
“How to value a cpa firm for sale?”ChatGPTAnswer text names “Accounting Tax Brokerage” alongside Poe Group Advisors — but the answer’s only hyperlink goes to a third party (madrasaccountancy.com), not atbcal.com. Named, not linked.
“cpa firms for sale in california” (vol. 70)AI Overview“Accounting & Tax Brokerage” appears by name as a listing broker inside a marketplace-style listings table, alongside Thrive Financial Group and others — not linked. Found via manual text review while building ai-who-instead.csv, not part of SE Ranking’s own tracked prompt corpus for atbcal.com — it sits outside the leaderboard’s official brand_presence=1 count above, not folded into it.

Directly on ATB’s own tracked prompts (getAiSearchPromptsByTarget, limit=100 × 5 engines): ai-overview 0 of 100, ai-mode 1 of 100, chatgpt 1 of 100, perplexity 0 of 100, gemini 0 of 100 returned — 2 of 500 possible rows. The third instance above surfaced separately, inside the 60 competitor-anchored prompts pulled for §p4-who-instead below. Source: raw/atbcal-overview-and-prompts.json, ai-who-instead.csv.

Who’s recommended instead
On the exact buyer-intent queries ATB would want to own, AI Overview names Poe Group Advisors and Accounting Practice Sales — and ATB, in 59 of 60 sampled answers, is absent entirely.
Poe Group Advisors — total on record
59 (30 pulled)
Accounting Practice Sales — total on record
44 (30 pulled)
ATB present in the 60 pulled
1 of 60 (named only, no link)
Off-category noise, APS pull
8 of 30 (27%)
Real buyer-intent queries where a competitor is named and ATB is not — sample of the full 62-row file
PromptBrands named in the answerATB present
cpa firms for sale near meAccounting Practice Sales; DealStream; Accounting Practice Exchange; LoopNet; BizQuestn
buying a cpa firmAccounting Practice Sales; Accounting Practice Exchangen
buy an accounting firmAccounting Practice Sales; Poe Group Advisors; BizBuySell; DealStream; Accounting Practice Exchangen
purchase cpa firmAccounting Practice Sales; Poe Group Advisors; BizBuySell; Accounting Practice Exchange; Thrive Financial Groupn
purchasing a cpa firmAccounting Practice Sales; Poe Group Advisors; BizBuySell; Accounting Practice Exchangen
cpa firms for sale in california (vol. 70)Accounting Practice Sales; Poe Group Advisors; ProHorizons; BBI; Accounting Firm Sold; BizBuySell; Accounting Practice Exchange; LoopNet; BizQuest; Thrive Financial Group; Accounting & Tax Brokeragey (named, not linked — see above)

The Accounting Practice Sales-anchored pull carries real off-category noise consistent with Phase 1’s already-documented branded-collision pattern — 8 of its 30 prompts (“funny tax facts,” “tax funny,” “fun tax,” “funny taxes,” “tax fun,” “funny way to say no,” “accountant marketing,” “best accounting podcasts”) are not accounting M&A queries at all, flagged offcategory_noise: y in the CSV rather than silently dropped. The Poe Group Advisors pull is cleaner — 0 of its 30 flagged off-category. Full 62-row detail, every prompt’s complete brand list and cited domains, in ai-who-instead.csv.

Terms used in this section
  • share_of_voice — a domain’s share of total AI-answer visibility across the tracked field (10 domains here), summed across all 5 engines. The ten values in this leaderboard sum to ~100% of the field.
  • brand_presence — a mention. The domain’s brand name appears somewhere in an AI engine’s answer text, whether or not it is linked. Slow-moving, closer to awareness than to a traffic-driving citation.
  • link_presence — a citation. The domain is actually hyperlinked as a source inside the answer. Faster-moving than brand_presence, and the one of the two a content lever can move directly.
  • prompts-by-target vs. prompts-by-brand — getAiSearchPromptsByTarget pulls prompts already associated with the primary domain (atbcal.com); getAiSearchPromptsByBrand pulls prompts associated with a named competitor instead, which is how §p4-who-instead surfaces the real field around ATB rather than just its absence.

Cost: ~$4.38 actual (~21,900 credits) against a ~$24.00 plan estimate — under, mainly because getAiSearchPromptsByTarget bills per row returned, not per row requested at limit=100, and ATB had almost nothing to return. Budget headroom from that step was redirected into the §p4-who-instead pulls rather than left unspent. “ATB” as a bare brand string was screened and dropped before the leaderboard ran — a 10-prompt spot-check found severe collision with NREL’s unrelated “Annual Technology Baseline” energy dataset (also abbreviated ATB), 1,317 matches on one engine alone. Only “Accounting & Tax Brokerage” (the full legal name) was tracked from that point on. Full call-by-call log and the collision detail in RUN-LOG.md.

05 Phase 5 — Synthesis (complete)

No domain’s competitive rank survives all three of the audit’s measurement methods unchanged.

Patterns and presence, stated plainly. Not recommendations — per SKILL.md, naming a pattern is description, recommending action is not. This phase adds no new data; it places Phases 1–4 side by side. Condensed here to the headline findings — full write-up, every table, and one data-quality correction found during verification: 05 — Synthesis/synthesis.html.

Competitive rank across three methods
accountingpracticesales.com and poegroupadvisors.com show zero organic overlap in Phase 2, yet lead both live measurements that followed — four separate times over.
All 9 Direct-tier competitors, ranked three different ways
DomainP2 overlap rankP3 breadth (of 275)P4 AI leaderboard rank
accountingbroker.com1 (198 kw)3rd (91.3%)5th (5.17%)
go2bbi.com2 (166 kw)10th (42.5%)7th (2.87%)
acctsales.com3 (157 kw)5th (72.0%)4th (5.42%)
accountingfirmsold.com4 (152 kw)6th, tied w/ ATB (71.6%)8th (2.32%)
prohorizons.com5 (141 kw)4th (81.8%)3rd (14.49%)
nationalaccountingsales.com6 (132 kw)8th (64.0%)10th, last (0%)
cpasales.com7 (94 kw)9th (63.3%)6th (3.59%)
accountingpracticesales.comzero overlap1st, tied (99.6%)2nd (27.90%)
poegroupadvisors.comzero overlap1st, tied (99.6%)1st (37.93%)
atbcal.com (ATB)n/a6th, tied (71.6%)9th (0.32%)

The mirror case: go2bbi.com ranks 2nd by Phase 2 overlap but falls to 10th of 14 in Phase 3 breadth and 7th of 10 in Phase 4’s leaderboard — the steepest decline of any Direct-tier competitor. The two zero-overlap domains also lead AI Overview citation in both Phase 2 (§p2-aio, 60% of citing rows) and Phase 3 (§p3-aio, the two largest citing domains in a much larger dataset). Full table and method in synthesis.html §02.

AI visibility, measured three ways
Three differently-scoped AI-visibility checks find three different numbers — and converge on the same underlying picture.
Phase 2 — national, ATB’s 602 kw
0
Phase 3 — live CA, 151 curated kw
137 rows / 13 kw, all sell-side
Phase 4 — 5-engine leaderboard
brand_presence 1, link_presence 0, rank 9 of 10

Even Phase 3’s largest number is small against the same dataset’s leaders — accountingpracticesales.com cited 1,070 times, poegroupadvisors.com 759, against ATB’s 137. Full detail in synthesis.html §03.

Demand vs. presence
Buy-side demand is the larger pool. ATB’s actual presence — organic and AI — concentrates sell-side.
Phase 1 demand, buy vs. sell
8,710 vol vs. 5,770 vol
Phase 3 ATB appearances, sell vs. buy
59% vs. 37%
ATB’s AIO citations & link citation
100% sell-side

The demand pool is larger buy-side; ATB’s organic footprint and everything the audit found of its AI visibility sit on the sell side. Full detail in synthesis.html §04.

Intake vs. discovered
6 of 9 Direct-tier competitors were never named by the client at intake.
Client-named at intake
4
Made Direct tier
3 of 4
Found only by the audit’s own discovery
6 of 9 Direct-tier slots

The 4th client-named domain, Green Growth CPAs, sits in Different Track — zero overlap (Phase 2) and zero breadth (Phase 3) — the only client-named domain not on the leaderboard, consistent with the client’s own description of it as an acquirer, not a broker. Full table in synthesis.html §05.

Cost: $0.00 — free, as specced. No SE Ranking API calls this phase. One data-quality correction to Phase 3’s breadth chart, found during verification, is logged above at §p3-breadth and in full in synthesis.html §07 / RUN-LOG.md.

About this document

This is the complete cross-phase report for the ATB positioning audit. It was updated after every phase completed, in the Swiss Grid system approved at Gate 1 — same tokens, same CSS, same meaning-first hierarchy as keyword-brief.html, reused rather than reinvented. Every number here traces to a logged call in RUN-LOG.md or a file in 01 — Keyword Build/ through 05 — Synthesis/.

It is deliberately not the client-facing final deliverable. That is separate, later work, built from this same underlying data now that all five phases are closed.