Full guide, print-ready, no card. Drop your email and the PDF downloads. We send fix #1 of 7 as a follow-up.
No spam. Unsubscribe in any email. Used to send your fix #1 follow-up + the monthly newsletter if you stay.
Published by Mentioned. Open methodology. Free. CC-BY-4.0.
Last quarter a HVAC owner-operator with 4 trucks and 11 years in business ran their first AI visibility audit. They had solid Google rankings. They assumed ChatGPT and Perplexity would mention them the same way.
They scored 32 out of 100.
When they checked a competitor in the same service area, that competitor scored 79.
The gap: 47 points. The difference: one was getting customer leads from AI search. One was invisible.
This is not an edge case. Our dataset of 137 audits across HVAC, plumbing, electrical, and roofing shows the same pattern repeating. Median score: 32. Top performer: 79. The gap is structural, not noise.
Here is what's happening. AI search grew from roughly 4% of queries in early 2025 to an estimated 22% by May 2026. Google still dominates overall, but the direction is clear. Within 18 months, AI search will likely handle 35-40% of intent-driven queries in local services.
The catch: AI search does not work like Google search.
When a homeowner Googles "best HVAC near me," Google returns local business listings filtered by proximity, reviews, and ratings. You have had two decades to optimize for this format.
When that homeowner asks ChatGPT or Perplexity "Who should I hire for HVAC service," the AI reads its training data looking for mentions of your company. It does not crawl your Google Business Profile. It does not read your Yelp page. It looks for citations: local news stories, trade publications, blog posts, community mentions.
If your company is not cited in those sources (or cited in ways the AI actually understands), you do not get recommended.
Most contractors score between 30 and 40. They are invisible when homeowners ask AI for recommendations. The gap is fixable without big budgets or long timelines. It takes strategy, measurement, and 3-4 focused weeks of execution.
This guide walks you through the mechanics of AI visibility, shows you exactly what moves the needle, and gives you a week-by-week plan to close the gap. The methodology is open. The audit is free. The opportunity is real.
A mid-market contractor ran their first AI visibility audit. They had solid Google rankings. They assumed ChatGPT and Perplexity would mention them the same way.
They scored 32 out of 100.
When they checked a competitor in the same service area, that competitor scored 79.
The gap: 47 points. The difference: one was getting customer leads from AI search. One was invisible.
This is the state of the trade contractor's visibility in 2026. And it's not an edge case.
We have run audits across HVAC, plumbing, electrical, roofing, and related trades. The results follow a clear pattern.
Here is the distribution from our audit dataset:
| Percentile | Score | What It Means | |-----------|-------|--------------:| | Median (50th) | 32 | Most contractors score in the functionally invisible range | | 75th percentile | 51 | Three-quarters score below 51 | | 90th percentile | 63 | Only 10% reach marginally visible territory | | 95th percentile | 73 | Top 5% get genuine AI search traffic | | Top performers | 79-92 | Dominant in AI search, consistently recommended |
The gap between median and top performer is 47 points. That is a structural advantage, not noise.
AI search grew from roughly 4% of queries in early 2025 to an estimated 22% by May 2026. Google still dominates overall, but the direction is clear. Within 18 months, AI search will likely handle 35-40% of intent-driven queries in local services.
The catch: AI search does not work like Google search.
When a homeowner Googles "best HVAC near me," Google returns local business listings filtered by proximity, reviews, and ratings. You have had two decades to optimize for this format.
When that homeowner asks ChatGPT or Perplexity "Who should I hire for HVAC service," the AI reads its training data looking for mentions of your company. It does not crawl your Google Business Profile. It does not read your Yelp page. It looks for citations: local news stories, trade publications, blog posts, community mentions.
If your company is not cited in those sources (or cited in ways the AI actually understands), you do not get recommended.
This is why the contractor with the 32 score is invisible. They have never been mentioned by name in any source the AI engines read.
The contractor with the 79 score has been cited in local news, trade publications, and homeowner communities. The AI models recognize them as established and worth recommending.
Not all mentions count equally.
A mention in an HVAC trade publication carries more weight than a random forum comment. A local news story mentioning your company carries more weight than a comment on your own social media. Misspellings, alternate company names, and vague references do not count.
Run an audit and you will see patterns:
The contractors scoring above 70 are not doing anything exotic. They are simply:
The ones below 35 are usually missing all three.
Work through the math for a plumber in a mid-market. Assume 60 inbound leads per month from all sources.
Contractor A (score 79 in AI search):
Contractor B (score 32 in AI search):
The difference: $90,000 per year from being visible in AI. And that gap grows as AI search share increases.
In 18 months, when AI search share hits 35-40% of intent queries, Contractor A's AI lead flow could match or exceed their Google flow. Contractor B is still at zero.
This is not a "rebuild your entire online presence" situation. The contractors scoring 79 are not running massive ad spend or mega-budgets.
They are consistently showing up in the right places with the same name.
The typical path from 32 to 65+ looks like this:
By month 3, you have moved from invisible to marginal. By month 6, you can hit 60+.
That is not reinventing your business. That is 3-4 strategic hours plus compounding.
You cannot improve what you do not measure.
Most contractors do not know their AI visibility score. They assume it is fine because Google rankings are solid. Then they are puzzled when competitors seem to "always show up" when prospects ask AI for recommendations.
The first step is a real audit. One that checks all four major AI engines with the same prompts, measures citation consistency, and gives you a number.
Your score is a fact. Once you know it, the gap becomes actionable.
Key takeaway: Most trade contractors score 30-40 on AI visibility (median 32 vs top performer 79), leaving $90k+ per year on the table, but closing the gap takes only 3-4 strategic hours over 90 days without big budgets.
Action items:
When you type "best HVAC contractor in Providence" into ChatGPT, you are not triggering a Google search under the hood. You are triggering a retrieval chain that works in three parallel layers. Understanding these layers is the difference between thinking AI visibility is random and knowing exactly what moves the needle.
Every AI engine retrieves citations from three distinct sources. Each source weights differently depending on the engine.
Source 1: Training data
ChatGPT, Gemini, and Claude were all trained on massive internet snapshots taken on specific dates. ChatGPT's knowledge cutoff is April 2024. Gemini is April 2024. Claude is February 2025. This training data includes:
If your business did not exist online or had zero citations by the training date, you will not appear in the training-data layer at all. A new contractor who launched their website in May 2024 will not show up in ChatGPT's training data. This is why newer businesses see AI visibility lag.
Source 2: Real-time web search
All major AI engines now include real-time web search to fill gaps and catch recent changes. When you ask ChatGPT a local service query, it runs a live search on Google's index and retrieves the top 20-30 results for that query. The AI then pulls citations from those results.
This is where recency matters most. If you published a blog post last week answering "furnace replacement cost in Providence", and that post ranks on page 1 of Google for that query, it will be pulled into the AI response. Same for fresh Google reviews, recent news mentions, or a Reddit post from yesterday.
The formula is simple: search rank on Google plus freshness plus mention specificity equals citation weight in real-time retrieval.
Source 3: Knowledge graphs and structured data
All four major engines now parse structured data (JSON-LD schema markup) directly from websites and trust it heavily. When ChatGPT encounters your homepage with clean HVACBusiness schema including your phone, address, rating, and service area, it treats that structured data as authoritative.
This is why schema markup moved the needle so hard. Unstructured text on a webpage means AI engine must interpret and guess. Structured data means AI engine can cite you with certainty.
Contractors are named less often than they should be given their market size. Here is why.
Tier 1: Training data distribution
Many contractor websites are essentially invisible to training data snapshots. They rank poorly on Google, have minimal external citations, and exist in crawl-dark corners. Meanwhile, venture-backed SaaS companies, national home service chains, and affiliate review sites get massive crawl priority.
When ChatGPT's April 2024 training snapshot included "best HVAC in [city]", the results were dominated by Angi (formerly Angie's List), HVAC.com, and national chains. Local contractors appeared only if they happened to rank on page 1 of Google for that query. Most did not.
Tier 2: Query specificity
Trade contractors answer specific problems. "I need a heat pump installed" is different from "I want HVAC service." But AI engines are trained mostly on generic queries like "best HVAC near me" or "top-rated plumber [city]". Contractors who rank for the generic query make the training data cut. The ones who rank only for specific long-tail queries (e.g., "emergency plumber 3am") do not.
Tier 3: Citation structure
The sources AI engines trust most are:
Contractors who exist on exactly zero of these sources will not appear in the first retrieved set, even if they have a perfectly built website. An unknown contractor with zero external citations and only their own website will be invisible. A contractor with 30 Google reviews, a GBP listing, and a trade directory claim will be named.
This is not a quality judgment. It is a trust judgment. AI engines weight external citations more than self-published data.
The four major AI engines vary in how heavily they rely on each source.
ChatGPT (OpenAI)
ChatGPT relies more heavily on its April 2024 training data because that was the last snapshot. It uses real-time search to verify that a cited business still exists and to pull fresh reviews. Structured data helps, but ChatGPT names only businesses it has high confidence in from its training window.
Implication for contractors: If you were not visible by April 2024, you have to rebuild through real-time search (recent blog content, fresh reviews, new citations) and structured data credibility. Building new presence signals takes time.
Perplexity
Perplexity prioritizes real-time retrieval over training data. Every query runs a live search. It also cites sources transparently, which means it pulls heavily from anything that ranks on the first page of Google for your query.
Implication: Perplexity is faster to update than ChatGPT. A contractor who ranks on page 1 of Google for "emergency plumber [city]" or "heat pump install [city]" will see Perplexity citations surface, even if they were invisible months ago.
Gemini (Google)
Gemini weights structured data (JSON-LD schema markup) very heavily because Google owns schema.org. A contractor with clean schema on their homepage will see Gemini citation strength gain.
Gemini also pulls heavily from Google Business Profile, Google Maps, and Google reviews because these are Google-owned sources. It is the most self-referential engine in this sense.
Implication: For contractors, Gemini responds fastest to schema markup and GBP investment. A fully-built GBP plus clean schema can build your Gemini presence within weeks.
Claude (Anthropic)
Claude has the most recent training data of any engine (February 2025 versus April 2024 for ChatGPT). It relies less on real-time search. If you built your presence between April 2024 and February 2025, Claude may already know about you.
Claude also has a smaller user base for local service queries. It is worth getting right for brand consistency, but it will not drive the volume that ChatGPT or Gemini will.
Here is what actually happens when someone asks ChatGPT "best HVAC contractor in Providence":
Notice what was not in that chain: paid placement, keyword density on your website, social media follower count, or how long you have been in business. AI engines use entirely different signals than Google Maps or Google Ads.
Mentioned's audit methodology tests contractors across multiple query types and patterns, not just the obvious ones. Here is why specificity matters:
| Query | Reason | Signal Strength | |-------|--------|-----------------| | "best HVAC in [city]" | Generic, high volume | Strong | | "HVAC repair near me" | Local intent | Strong | | "emergency furnace repair [city]" | High-intent, specific service | High | | "heat pump installation [city]" | Service-specific | High | | "HVAC contractor [zip code]" | Geo-specific | Medium | | "who should I call for AC install [city]" | Natural language | Medium | | "24-hour HVAC [city]" | Availability-specific | Medium | | "EPA certified furnace install [city]" | Credential-specific | Medium | | Other variations | Trap queries, mobile vs desktop, voice search | Medium to Low |
A contractor might be named for "best HVAC in [city]" but invisible for "emergency furnace repair [city]". The gap tells you where to build content and schema. If you are visible for most of these prompt variations, you are gaining coverage. If you are visible for only the broadest queries, you have gaps.
This is why generic "AEO consulting" is weak. It tracks one or two queries. The real game is coverage across multiple query types.
New contractors often ask: "I was not in ChatGPT's April 2024 training. Am I locked out?"
No. Here is why.
Training data weight decreases over time as real-time search fills the gaps. By mid-2026, ChatGPT's April 2024 snapshot is 14 months old. For local service, recency preference means fresh reviews, new citations, and recent blog content outweigh the training baseline.
A contractor who launched in May 2024 can build presence if they:
The real lag is not training data. The real lag is information density. New contractors start with zero citations. Building citations takes time and consistent execution.
Our dataset of 137 contractor audits shows:
That 47-point gap is not random. It maps precisely to the sources AI engines pull from.
Top 10% contractors have:
Bottom 50% contractors have:
The contractors in the bottom 50% are not bad at their trade. They are invisible in the sources AI engines trust.
Key takeaway: AI search is a retrieval chain pulling from three sources (training data, real-time search, structured data), weighted differently by each engine, and contractors are systematically underweighted because they rarely appear in the high-trust sources (trade directories, review aggregators, news, schema) that AI engines rely on most.
Action items:
Every AI Visibility Score breaks into four dimensions. Think of them as the four walls of your house. One wall missing and the whole structure leaks. All four walled in tight and you are invisible no longer.
The dimensions are:
Add them up and you get a number between 0 and 100. Brackets are:
Let us walk through each dimension.
Citation presence is simple: does your business exist in the places AI engines pull from?
AI engines do not dream up business names. They pull from training data, real-time sources, and trusted databases. They need your business to be mentioned somewhere they look.
The sources that count:
What a 7/10 presence looks like: You have claimed Google Business Profile. You are on BBB and Yelp with 40+ combined reviews. You are on your two most important trade-specific directories. You have no schema markup yet. You have zero press mentions but a few Reddit mentions. Score: roughly 38-45 overall (mid-visible range).
What a 3/10 presence looks like: You have an unclaimed Google Business Profile (or claimed but bare). You are on Yelp but not BBB. You are not on any trade directories. Zero schema. Zero press. Contractors in your market have never heard of you online. Score: roughly 8-15 overall (invisible).
Real example (anonymized illustrative case): A plumber in a mid-sized midwest market. Ran his business for 11 years. Had 35 Google reviews from 2018-2019. Had claimed GBP but photos were from 2015 – no truck, no team, no service work. Not on PHCC directory. Not on American Standard Pro or Kohler Pro. Zero blog presence. Zero press. When we ran his audit, Perplexity returned three competitors for "emergency plumber in [his city]". He was not mentioned. His citation presence score was 12/100. Revenue was leaking silently.
The first 30 days of his fix: claim GBP fully, get 15 new Google reviews, get on PHCC directory, add Plumber schema to homepage. Citation presence jumped to 38/100. Within six weeks, he was showing up in Perplexity search results. His phone started ringing again.
Citation accuracy measures one thing: do all your mentions say the same thing about you?
This is where most contractors leak points invisibly.
AI engines do not know which version of you is right. They see contradiction and downgrade you. Your name listed as "Smith Heating" on Google, "Smith Heating & AC" on BBB, and "S. Smith HVAC" on PHCC. Your phone is listed as (401) 555-1234 on your website and 401-555-1234 on HVAC.com (note the format). Your address is "123 Main Street, Suite 100" on Google but "123 Main St #100" on Yelp.
Each contradiction costs you points. And you do not know it is happening because you never search for yourself and see all four simultaneously.
Accuracy scoring breaks down like this:
A perfect accuracy score is 25/25 points. Almost no contractor has it.
What a 7/10 accuracy looks like: Your name is consistent everywhere. Your phone has minor formatting differences (parentheses vs hyphens) but the number is the same. Your address has one typo on one directory. You are missing from two obscure directories but the ones AI engines check are clean. Score impact: roughly 12-15 accuracy points (out of 25). Combined with good presence, you land in visible range.
What a 3/10 accuracy looks like: Your name varies (sometimes "LLC" is appended, sometimes not). Your phone number changed three years ago but you never updated Yelp. Your address is listed with two different zip codes on different directories. Your website says you serve 12 cities but your GBP service area is blank. Accuracy score: 3-5 points. This alone tanks you into invisible range even if presence is decent.
Here is the audit you can run right now. No tool required.
Three-directory NAP check:
Do they match exactly? Same name spelling. Same phone format. Same address spelling and zip code. Same service area or cities listed.
If any of the three differ, you have an accuracy problem. That is 25% of your score in jeopardy.
Competitive position is the toughest dimension because it is purely relative.
Your citation presence could be flawless. Your accuracy could be perfect. But if every competitor is on 50 directories and you are on 12, you lose.
AI engines run local queries like this: "Who are the best HVAC contractors in Providence?" The engine pulls all known HVAC businesses in that market, scores them on the four dimensions, and returns the top 3-5 by composite score.
Being first, second, or third matters. Being fifth does not get mentioned. Being tenth does not exist.
Competitive position scoring works like this:
The hard truth: you cannot control what competitors do. You can only control whether you execute better.
What a 7/10 competitive position looks like: You are visible in 2 of 3 AI search results. You are usually second or third when you show up, not first. Your competitors have slightly better presence but worse accuracy. Your reviews are more recent. You have schema, they do not. Score: roughly 15-18 out of 25 competitive points.
What a 3/10 competitive position looks like: You never appear in AI results. Your top three competitors are always mentioned instead of you. They are on 8 directories, you are on 2. They have 150 reviews, you have 12. They have schema, you do not. Score: roughly 2-5 competitive points.
Real data point: We audited 137 trade contractors across all four trades. Median score was 32 (firmly at-risk). The highest score observed in our dataset was 79 points. The contractors showing up reliably in ChatGPT, Perplexity, and Gemini sat in the 70+ range. The difference between invisible and visible contractors in the same market was not genius. It was consistency on execution. Every one of the visible contractors had presence, accuracy, recent reviews, and schema. Most of the invisible ones were missing 2 of those 4 things.
The gap between bottom-quartile and top-quartile contractors in our dataset averaged 47 points. That is the ceiling and floor. If you can move yourself from the floor (invisible) to the middle (visible), you land in the top 30% of your trade in your market.
Structured data is the smallest dimension by weight but the highest ROI lever.
One piece of correct schema markup can move you several points with zero citations added.
Structured data is information on your website that tells AI engines (and Google, and every bot) what your business actually does. It is the language machines read.
The scoring breaks down:
Add them up: 10 points possible.
What a 7/10 structured data looks like: You have HVACBusiness schema on your homepage with correct NAP, hours, service area, and aggregate rating. Your top three service pages (AC repair, furnace install, heat pump) have Offer schema. You have manufacturer certifications in the data. You are missing FAQ schema and breadcrumbs. Score: roughly 6-7 out of 10 structured data points.
What a 3/10 looks like: You have generic LocalBusiness schema on your homepage. It is missing service area and rating. Your service pages have zero schema. No FAQ. No offer markup. Score: roughly 2-3 out of 10.
In our dataset, contractors with trade-specific schema consistently outperformed those with generic schema on AI visibility.
Here is how a score comes together in reality. Take a roofing contractor in the southeast:
Total: 70 points – technically Elite, but on the razor's edge. Miss one more directory and he drops to Visible. One citation error and he falls into At Risk.
Now the contractor spends four weeks fixing it:
New score: 97 points. Elite tier. Practically guaranteed to show up in AI search for his market.
The work is not magic. It is systematic. You identify what is missing, you fix it, your score moves.
Across 137 audits, the missing pieces break down this way:
These five account for roughly 80% of the gap between Visible and Invisible contractors. Fix all five and you move 20+ points. Fix three of them and you move 12-15 points.
When you run an audit (free at mentionedinai.com), the report breaks down:
Read it like a mechanic's report. Presence gap? List which directories you are missing and the time to claim each. Accuracy gap? The specific inconsistencies are called out by directory. Competitive position? You get named your top three competitors and their scores. Structured data? Exact schema recommendations.
Most contractors can digest their full score breakdown in 15 minutes. Most can execute their top 5 fixes in 40 hours over 60 days.
The contractors who move 15-30 points are usually the ones who execute the specific fix list, not the ones who "try to improve" or "work with a consultant who takes six months."
Key takeaway: Your AI Visibility Score is built on four measurable dimensions — presence, accuracy, competitive position, and structured data — and every point can be earned through systematic execution on a specific fix list.
Action items:
You have heard of schema markup. Most contractors never implement it. That gap is costing you points on visibility audits—the single biggest lift available without hiring an SEO agency or waiting months for content rankings.
Here is what is happening: AI engines (ChatGPT, Perplexity, Claude, Gemini) scrape your website's metadata to determine if you are trustworthy enough to cite. They look for structured data signals that say "this business is real, licensed, and credible." If your schema is missing or broken, the AI sees your business as generic. If it is clean, the AI sees you as someone worth quoting.
This chapter walks you through adding JSON-LD schema to your website in under two hours. You will know exactly which schema types matter for your trade, how to format them, and where they go. No hiring required.
Schema markup is machine-readable metadata you paste into your website's HTML. Search engines and AI engines use it to understand what your business does, where you operate, your credentials, and your service scope. Think of it as a digital business card that machines can read as structured data instead of guessing from sentences.
For trade contractors, schema accomplishes three critical things:
Licensing and credentials — You tell the machine explicitly: "Licensed in [state], license #[number], bonded, insured." The machine believes you because it is in structured format, not a marketing claim.
Service scope — You list the exact services you provide: heat pump installation, emergency repair, maintenance plans. The AI knows what you do instead of inferring from body text.
Citation confidence — When an AI engine sees clean schema, it trusts your data enough to cite you by name instead of saying "HVAC companies generally..."
We have observed contractors with incomplete or missing schema add structured data and see their audit scores improve in the next cycle. No content changes. Just data structure put in front of the machines that matter.
For trade contractors, you need these schema types:
LocalBusiness — Your core identity. Name, phone, address, hours, service area.
HVACBusiness, PlumbingService, or ElectricalService — Trade-specific type that inherits from LocalBusiness. Adds license details, service categories, warranty info.
AggregateRating — If you have reviews (Google Reviews, Yelp, BBB), this signals trust to AI engines. 4.8 stars out of 147 reviews hits different than no rating data.
If you are in multiple cities or have multiple service areas, add areaServed to tell the machine your geographic scope. Perplexity specifically looks for geographic schema when a user asks "best HVAC in [city]."
If you are on WordPress with Yoast SEO or RankMath, schema is already installed at the plugin level. But nine out of ten contractors never touch the schema settings, which means generic defaults are running—no license info, no service categories, no areaServed geographic data.
If you are on a custom site or Lovable-built site (React prototype), schema needs to be manually added. Most React builders do not auto-generate schema because it is static metadata, not interactive UI.
Check your site right now. Open your homepage in a browser, right-click, hit "View Page Source," then search for "@context": "https://schema.org". If you find nothing, your schema is missing or broken.
This is the template for HVACBusiness. Modify the values for your business and drop it into your site's section or ask your developer to paste it.
``json
{
"@context": "https://schema.org/",
"@type": "HVACBusiness",
"name": "Your HVAC Company Name",
"image": "https://yoursite.com/logo.png",
"description": "Your 1-line service description. Ex: Emergency HVAC repair, maintenance, and installation.",
"url": "https://yoursite.com",
"telephone": "+1-555-123-4567",
"priceRange": "$$",
"areaServed": [
{
"@type": "State",
"name": "Your State"
},
{
"@type": "City",
"name": "City One"
},
{
"@type": "City",
"name": "City Two"
}
],
"address": {
"@type": "PostalAddress",
"streetAddress": "123 Main Street",
"addressLocality": "Your City",
"addressRegion": "ST",
"postalCode": "12345",
"addressCountry": "US"
},
"makesOffer": [
{
"@type": "Offer",
"name": "Emergency HVAC Repair",
"description": "24/7 emergency service for broken heating and cooling systems."
},
{
"@type": "Offer",
"name": "Maintenance Plans",
"description": "Monthly maintenance subscriptions.",
"price": "14.00",
"priceCurrency": "USD"
}
],
"sameAs": [
"https://www.facebook.com/yourpage",
"https://www.instagram.com/yourprofile"
],
"aggregateRating": {
"@type": "AggregateRating",
"ratingValue": "4.8",
"reviewCount": "147"
}
}
`
Paste this into your site's
inside a