In window cleaning, AI almost never picks a winner. It just lists everyone.
Across 103 captures in a single regional market, AI mentioned 101 distinct window-cleaning brands. It recommended one specific company in only 16 of those 103 answers. The pattern repeats at the operator level: every brand in the top 10 was visible in 12% or more of responses, and 8 of them were the primary recommendation in 1% or fewer. That is the defining shape of AI search in home services.
The top 10 brands AI surfaced in one regional market
| Rank | Brand | Visibility | Rec rate | Mentions | Recommendations |
|---|---|---|---|---|---|
| 1 | Anchor operator (market leader) | 35% | 12% | 36 | 12 |
| 2 | Competitor A | 26% | 0% | 27 | 0 |
| 3 | Competitor B | 19% | 0% | 20 | 0 |
| 4 | Competitor C | 18% | 1% | 19 | 1 |
| 5 | Competitor D | 32% | 1% | 33 | 1 |
| 6 | Competitor E | 17% | 0% | 17 | 0 |
| 7 | Competitor F | 15% | 1% | 15 | 1 |
| 8 | Competitor G | 18% | 1% | 18 | 1 |
| 9 | Competitor H | 12% | 0% | 12 | 0 |
| 10 | Competitor I | 14% | 0% | 14 | 0 |
Source: 103-capture audit across ChatGPT, Claude, Gemini, and Perplexity, May 10 2026. Visibility = % of captures mentioning brand. Rec rate = % of captures where the brand is the primary recommendation. Names anonymized; the anchor operator is the regional market leader by review count and tenure.
How AI answers a window-cleaning question, in three steps
Window cleaning is high-intent and local. Buyers search with location, urgency, or service-specific phrasing: "best window cleaning near me," "gutter cleaning in [city]," "how much does pressure washing cost." AI engines build answers in a predictable shape:
2. Engines paraphrase the operator's own page next. What sits in the meta description, the headline, and the first paragraph is what gets quoted. If a differentiator isn't on the page in extractable form, AI cannot cite it — even when it's true.
3. Engines rarely commit to a single recommendation. When asked "best window cleaning in [city]," AI returns a list of 5–7 operators in roughly equal weight. The brand that crosses the gap into "primary recommendation" gets the click. Everyone else gets the list mention and no traffic.
Each audit revealed more about the vertical than the one before it
We ran four audits on the same anchor operator over six weeks. Each one widened the lens — from a single category in audit one to nine analytical dimensions in audit four. With every expansion, the picture of where the vertical actually loses became sharper. The number to track in the cards below is not the score — it is the count of dimensions probed. That is what relevance engineering actually measures, and the work compounds with the lens.
Why scores aren't directly comparable across the four audits: each audit measured a different set of categories. The Apr 1 snapshot scored 57 because it only tested the operator's strongest category. The May 10 full audit scored 35 because it tested the operator across the entire vertical — including the cost, urgency, and service-specific queries the earlier audits never asked. The May 10 number is the honest baseline. Everything before it was a partial picture. The 90-day relevance engineering work is measured against May 10, not against earlier scope-limited scores.
What each new dimension revealed
The May 10 audit added two analytical axes that no earlier audit had: the brand-omission axis (separating queries that include the brand name from queries that don't) and the journey-stage axis (separating awareness/familiarity/consideration/decision/loyalty). Both surfaced findings invisible to a smaller methodology.
Finding 1: The 0.92 discoverability gap
The same operator looks two completely different ways depending on whether the prompt includes their brand name. This is the metric most audits never separate.
Finding 2: Category performance, by buyer intent
Seven categories tested. Two are strong: review_validation and loyalty (both 100% visibility — these are brand-validation categories). Five are weak. The cost_inquiry category is at absolute zero: 14 prompts asking "how much does window cleaning cost in [city]," and the operator appears in none.
Visibility % / recommendation % for the market leader. Values are from the May 10 full audit (103 captures, 34 prompts, 4 engines). Sample sizes per category range from 6 to 24 prompts.
Finding 3: The journey is bottom-heavy
Layered against buyer-journey stage, the pattern looks like a funnel that’s strong at the bottom and invisible at the top. AI finds the operator when buyers already know what they want. It does not put them in the consideration set.
Five patterns every window cleaning operator faces in AI search
Each pattern is sourced from real audit data: scores.json and insights.json for visibility and recommendation rates, sources.json for citation distribution, gaps.json for root-cause attribution. Sample sizes range from 14 prompts (cost_inquiry) to 34 prompts (full audit) per pattern. None of the percentages are projected. They are measured.
Six moves that translate the patterns into work an operator can run
The patterns are diagnostic. The moves below are the prescription — each maps to one or more of the five patterns and is structured so any window cleaning, exterior cleaning, or home services operator can run them in sequence. None of these require a rebuild. All six can be executed inside a 90-day cycle.
- Run at least 60% of your audit prompts without your brand name ("best window cleaning in [city]") to measure organic discoverability.
- Compare brand-omitted visibility to brand-included visibility. A gap above 0.6 is significant.
- Organic discoverability is fixed by source coverage and on-page signals, not more reviews on platforms that already list you.
- Write your top 3 differentiators exactly as you'd want AI to quote them: specific numbers, named credentials, verifiable claims.
- Verify each appears verbatim on your homepage or About page. If not, add it.
- Repeat in variant form on 2 to 3 service pages and in your LocalBusiness JSON-LD schema.
- Audit which platforms AI cites when recommending competitors. Those are your missing source targets.
- Claim and fully populate HomeAdvisor, Nextdoor, and any platform with more than 3 citations in your competitive set.
- On platforms where you're already listed, check whether AI actually cites you from those listings ("survival rate" in the audit).
- Score each service's recommendation rate independently, not just the brand average.
- Build a dedicated /[service-name] page for any service below 30% recommendation rate.
- Structure it: intro, process steps, pricing range, FAQ block, 3 to 5 customer quotes with first names, and service-specific LocalService JSON-LD schema.
- Pull every prompt where you appear in AI answers but aren't the primary recommendation.
- Read the winning brand's AI quote on that prompt. That's the bar to beat.
- Add the equivalent or stronger claim with a specific number or verifiable credential to the relevant page.
- Schedule a re-audit against the same prompt set after each content shipping cycle.
- Track brand-omitted recommendation rate separately. That's the discoverability metric.
- Use 95% CI to confirm real movement. Small sample sizes make fluctuation easy to misread as progress.
The measurable lift relevance engineering targets in a 90-day cycle
Below are the targeted deltas drawn from the May 2026 full audit playbook for the anchor operator — the same targets any window-cleaning operator running this work could aim for. The "from" column is measured. The "to" column is the playbook commitment. None of these are projected outcomes: they are the success metrics the audit explicitly defines, against which the 90-day re-audit (scheduled August 2026) will be scored.
| Metric | From (measured) | Target (90-day) | Lever | |
|---|---|---|---|---|
| Discoverability brand-omitted visibility — the "they've never heard of you" buyer | 8% | → | 25% | Source coverage |
| Perplexity recommendation rate how often Perplexity actually picks you, not just mentions you | 12% | → | 40% | On-page content |
| ChatGPT recommendation rate currently the worst-performing engine, biggest single uplift opportunity | 0% | → | 20% | Source coverage |
| Differentiator surfacing your strongest claim appearing in AI quotes (currently zero) | 0% | → | 20% | On-page content |
| Consideration-stage visibility presence in the comparison and shortlist stage of the buyer journey | 8% | → | 25% | Service pages |
| Passing-reference flips prompts where AI names you in passing, converted to a primary recommendation | 0 of 4 | → | 2 of 4 | Triaged content |
Targets are calibrated against the full audit's confidence intervals (95% binomial). A 30-point uplift on Perplexity is significant at this sample size; a 5-point move would not be. The re-audit will score against the same prompt set so the comparison is apples-to-apples. We don't fabricate wins. If a target isn't hit, the next audit will say so on the page.
Want to see your numbers, not someone else’s?
BeCited is a $2,000 GEO audit service. 100–300 buying-intent prompts, 4 AI engines, 15 site-readiness checks, scored against your real competitors with 95% confidence intervals. Delivered in one week by a named analyst.