BeCited / Case Studies / Window Cleaning GEO Audit
Industry Research · Window Cleaning · 4 GEO Audits

Inside the window cleaning vertical. What four audits reveal about how AI picks a local home-services provider.

A six-week research project across 103 captures, four AI engines, and 101 competing brands in a single regional market. The findings apply to any established window cleaning operator: the gap between visibility and recommendation, the platforms that gatekeep AI answers, and the categories where almost every operator in the vertical is invisible.

Research period: Apr 1 – May 10, 2026 (4 audits)
Vertical: Window cleaning · exterior services
Scope: 34 prompts × 4 engines · 103 captures
Market: 101 brands · 29 with significant share
Engines: ChatGPT · Claude · Gemini · Perplexity

Findings drawn from four progressively deeper audits of one anchor operator in this vertical: a Snapshot (Apr 1, 10 prompts, 3 engines), a 2-engine Full Audit (Apr 4), a Perplexity probe (May 2, 6 categories), and a full 4-engine, 34-prompt audit (May 10). Conclusions are vertical-level; the operator-level data is the lens.

Illustration of a window cleaner working on a high-rise building
8 of 10
Top brands <2% rec rate
Visibility without recommendation is the vertical's defining pattern
0.92
Discoverability gap
8% visible without brand name · 100% with it
21 of 31
Gaps from platform absence
Angi cited in 48% of captures · client listing rare
101
Competing brands AI surfaced
In one regional market · 29 with significant share
Block 01 — The Industry Pattern

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.

The mention/recommendation gap
Eight of the top ten brands in this market are visible to AI but rarely the answer. The market leader sits at 12% recommendation rate — the highest in the entire vertical we measured. Visibility alone is table stakes. The structural opportunity is in the conversion from mention to recommendation, and it sits with whichever operator builds the right quotable content + source coverage first.

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:

1. Engines defer to platforms first. In this market, Angi was cited in 48% of captures, Yelp in 32%, Thumbtack in 23%. The operator websites that show up are the ones the platforms already endorse.

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.
Block 02 — Six Weeks, Four Audits

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.

Apr 1 · Snapshot
1
dimension probed
10 prompts · 3 engines · 30 captures
Tested: location-intent only
Scope-limited score 57
Reads like a reviews problem. The operator looks strong in their best category — the only one tested.
Apr 4 · Full audit
2
dimensions probed
10 prompts · 3 engines · 29 captures
Added: service-specific queries
Scope-limited score 46
Service queries enter the picture. Pressure washing and gutter cleaning surface as previously hidden weaknesses.
May 2 · Probe
6
dimensions probed
14 prompts · Perplexity probe · 14 captures
Added: cost, urgency, comparison
Scope-limited score 30
Root cause shifts: 9 of 10 gaps now trace to not being listed on a key site. The diagnosis moves from reviews to platform coverage.
May 10 · Full audit
9
dimensions probed
34 prompts · 4 engines · 103 captures
Added: brand-omission axis · journey stage · loyalty
Full-scope baseline 35
Vertical-wide pattern confirmed. 21 of 31 gaps root-caused to platform absence. The May 10 score is the true baseline.

Scores aren't comparable across the four audits: each measured a different set of categories. The Apr 1 snapshot scored 57 on the operator's strongest category alone; the May 10 audit scored 35 across the whole vertical. May 10 is the baseline the 90-day work is measured against.

The methodology lesson: small audits confirm what you already think. Wide audits surface what you don't. A 5–15 prompt audit in a single category never tests the cost, comparison, urgency, or service-specific queries where almost every operator in the vertical is invisible.

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).

Finding 1: The 0.92 discoverability gap

The same operator looks two completely different ways depending on whether the prompt includes their brand name.

Brand-omitted prompts
8%
visibility when AI is not told who to look for
73 captures · 6 mentions · 0 recommendations
Brand-included prompts
100%
visibility when the brand name is in the prompt
30 captures · 30 mentions · 12 recommendations (40% rec rate)
What this means for the vertical
Most window cleaning operators in their region are already strong on reviews. They’ll look fine in any audit that mostly asks brand-validation queries. But buyers who don’t know your name and ask “best window cleaning in [city]” get a list that often doesn’t include you — even when you’re the #1 operator in the market. That gap, not the score, is what relevance engineering closes.

Finding 2: Category performance, by buyer intent

Seven categories tested. Two are strong: review checks and existing customers (both 100% visibility; both are questions from people checking on a business they already know). Five are weak. Cost questions are at absolute zero: 14 prompts asking "how much does window cleaning cost in [city]," and the operator appears in none.

review checks
100% / 100%
loyalty (existing customer)
100% / 33%
comparison ("alternatives to X")
93% / 7%
location ("near me")
17% / 0%
urgency ("emergency / today")
6% / 0%
specific service (gutters, etc.)
6% / 0%
cost
0% / 0%

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.

decision stage
61% / 24%
loyalty (existing customer)
100% / 33%
familiarity (early research)
33% / 0%
consideration ("which company")
8% / 0%
Root cause: source coverage, not reviews
Of 31 identified gaps in the May full audit, 21 trace to a single root cause: not being listed on a key site. Across the vertical, AI cites Angi in 48.5% of captures, Yelp in 32%, Thumbtack in 23%. In the May audits, the anchor operator was rarely named in answers that cited Angi or Thumbtack. The same gap holds for nearly every operator in the vertical that isn’t a top-3 advertiser on those platforms. The fix is structural: get listed, get cited, get quoted.
Block 03 — The Five Patterns

Five patterns every window cleaning operator faces in AI search

These aren't unique to one operator. They surfaced repeatedly across 103 captures, 34 prompts, and 101 named competitors in a single regional market. Each pattern is a structural property of how AI engines handle local home-services queries.
8/10
of top brands recommended <2% of the time
Pattern 01
The mention/recommendation gap
AI engines name 101 different brands in this regional market, but only two are actually recommended at a meaningful rate. The other eight in the top ten get named in passing — mentioned without endorsement, listed without ranking. The bar to appear in an AI answer is low. The bar to be recommended is steep and unevenly distributed.
What to do: Track mentions and recommendations as separate metrics. The first tells you AI found you. The second tells you AI is willing to vouch for you.
48.5%
of AI citations route through Angi alone
Pattern 02
Platform gatekeeping
When AI engines answer window-cleaning queries, they defer to three platforms above all else: Angi (48.5% of citations), Yelp (32%), Thumbtack (23%). Operator websites rank far below in citation share. Of 31 identified gaps in the full audit, 21 trace back to a single root cause: not listed (or poorly listed) on a key source. The implication: even a beautifully built website with strong differentiation cannot win against a competitor with a fully claimed and active Angi profile.
What to do: Treat the top three platforms as primary distribution, not optional directories. Audit your survival rate (% of mentions that survive AI's ranking filter) on each.
6%
visibility on service-specific queries
Pattern 03
The secondary-service blackhole
Most operators sell multiple services — window cleaning, gutter cleaning, pressure washing, solar panel cleaning. In AI search, only the primary service surfaces. Secondary services run at single-digit visibility because most websites list them as homepage bullets rather than dedicated pages. AI cannot extract a structured recommendation from "we also offer pressure washing and gutter cleaning." It needs a page with pricing, process, FAQs, and quotable customer language. The opportunity cost is significant: secondary services are typically higher-margin than the core service.
What to do: Build a dedicated /[service-name] page for any service below 30% recommendation rate. Bullet lists are invisible. Pages are quotable.
0%
recommendation rate on cost queries
Pattern 04
The cost-inquiry blank zone
Across 14 cost-related prompts ("how much does window cleaning cost in [city]", "average price for gutter cleaning") in the full audit, the anchor operator received zero mentions and zero recommendations. This isn't an operator problem — it's a vertical-wide content gap. Local service operators almost universally refuse to publish pricing because they want the lead before the quote. AI engines respond by routing cost queries to platforms that do publish ranges (HomeAdvisor, Thumbtack, Angi). The query intent is high — someone asking about cost is closer to buying — but the operator is invisible at the exact moment the buyer needs them.
What to do: Publish a "what does it cost" page with honest ranges, not exact quotes. The lead-capture loss is far smaller than the cost of being absent on high-intent queries.
0.92
discoverability gap (brand-omitted vs brand-included)
Pattern 05
The brand-name dependency trap
When buyers ask AI by name ("tell me about [business name]"), the operator shows up in 100% of responses. When buyers ask AI without the brand name ("best window cleaning in [city]"), the operator shows up in 8.2%. That 0.92 gap means the business is essentially invisible to the buyers who matter most — those who haven't heard of you yet and are doing genuine comparison shopping. Brand-included visibility is a vanity metric. Brand-omitted visibility is the only number that measures discoverability. Most home-services operators we audit run somewhere between 0.7 and 0.95 on this gap.
What to do: Run at least 60% of your audit prompts without your brand name. The brand-omitted recommendation rate is your true acquisition signal.

Every pattern comes from measured audit data, not projections. Sample sizes range from 14 prompts (cost questions) to 34 prompts (full audit) per pattern.

Block 04 — Apply It

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. All six fit inside a 90-day cycle.

Move 01
Measure discoverability separately from brand-name visibility
The most important metric in our full audit wasn't the overall GEO score. It was the gap between brand-omitted and brand-included prompts. This operator has 100% brand-included visibility and 8.2% brand-omitted visibility. That 0.92 discoverability gap means they're essentially invisible to buyers who don't already know them. Most competitive window cleaning searches don't include a brand name. That's where the business is being lost.
  • 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.
Move 02
Put your differentiator on your site verbatim, then verify AI quotes it
Across all four audits, the business’s 15-years-in-business claim surfaced in 0 of 35 AI mentions. The claim is real. It just wasn't in quotable form on any page. AI engines paraphrase what they can ground in source text. If your differentiator isn't in your copy, it doesn't exist for AI, even when it's genuinely true. Compare: its claim of being voted the city’s best four years running did surface, in 6 of 17 mentions in the April audit. The difference is copy placement and phrasing.
  • 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.
Move 03
Get listed on the key sources driving 21 of your 31 gaps
In our full audit, 21 of 31 identified gaps had a single root cause: not being listed on a key site. AI is looking for this operator on Angi, Thumbtack, and HomeAdvisor to answer buyer questions. When AI cited Angi or Thumbtack in May, the client was rarely in the answer. In the April audit, HomeAdvisor drew 5 AI citations in the market, and the client had no listing there. This isn't a content problem. It's a directory coverage problem. The fix is faster and cheaper than creating new pages.
  • 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).
Move 04
Build dedicated pages for secondary services. Not a bullet list.
Pressure washing ran at 11% recommendation rate in the April audit; gutter cleaning at 22%. Both well behind the overall score. In the full May audit, "service specific" queries showed only 6% visibility across the category. Exterior cleaning operators typically list secondary services as homepage bullets. AI can't extract structured recommendations from bullet lists. A dedicated page with pricing, process steps, an FAQ block, and customer quotes is what changes that.
  • 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.
Move 05
Triage your passing-reference prompts. These are the cheapest conversions.
The April audit surfaced 4 prompts where AI named this operator without endorsing them. On Perplexity, one response read (names and city redacted): "[The business] (voted best window cleaning, offers house washing)" while the primary recommendation went to a competitor described as "[city]'s top-rated pressure washing company with over 700 five-star Google reviews." The problem isn't visibility. AI found them. They need one stronger reason to flip to a recommendation. The fix is content, not directory claims.
  • 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.
Move 06
Re-audit at 90 days. Track recommendation rate and discoverability, not just visibility.
Visibility is the easiest number to report. It's also the one that matters least. A brand can be visible in 60% of responses and recommended in 12%. The May audit tracked recommendation rate per engine, per service category, and per brand-omission axis. That's how you know whether the content changes actually worked or whether you're just seeing noise. In that audit, 95% binomial confidence intervals on every dimension guarded against misreading small-sample fluctuation as meaningful movement.
  • 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.
Who this applies to
If you run a window cleaning, exterior cleaning, or home services business in a regional market with 5 to 30 named local competitors, this pattern almost certainly applies to you. The discoverability gap (visible with your name, invisible without it) and the mention/recommendation gap (AI knows you, AI doesn't endorse you) are the two most common findings in home-services GEO audits. Review density gets you into the AI ecosystem. On-page differentiation, source coverage, and dedicated service pages are what convert that presence into recommendations from buyers who've never heard of you.
Block 05 — What Relevance Engineering Delivers

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.

The arc. Relevance engineering is the discipline of measuring what AI actually recommends, identifying the root cause of where the brand is absent, and engineering the specific signals (source listings, on-page differentiators, service-page depth, schema) that flip a passing mention into a primary recommendation. This is what a $200 audit followed by $150/month tracking is designed to produce.
About BeCited

Want to see your numbers, not someone else’s?

This study used our earlier method (four AI engines, May 2026). See what ChatGPT and Google’s AI tell buyers in your city about your business. The $20 Snapshot asks about 25 of their questions.