Website and Google Business Profile assessment for a local business
| Report no. | RS-DEMO-01 |
|---|---|
| Issued | September 20, 2026 |
| Checks run | 64 of 73 |
| Sources | Google · site crawl |
| Access level | Public data only |
Main photo from your Google listing.
| Address | 1200 Sample Ave, Norcross, GA |
|---|---|
| Website | northwindhvac.example |
| Category | Air conditioning repair service |
| Rating | 4.9 · 191 reviews |
4.9 stars from 191 reviews says the work is good. But people decide who to call before they read reviews, and what holds you back is what your listing and your website show: 38 checks of the 64 we could run found a problem.
| Section | Score | Checks passed | ||
|---|---|---|---|---|
| 01 | Your websiteTechnical and on-page SEO, content, AI readiness | 51 / 100 | 17 of 34 | |
| 02 | Your Google Business ProfileLocal SEO: visibility, listing, reviews | 30 / 100 | 5 of 19 | |
| 03 | Data consistencyWhether your site and your listing tell the same story | 39 / 100 | 4 of 11 |
Each section score is the share of checks passed, weighted by how much each one affects whether customers find you.
38 issues found. Your reputation is excellent, and each of these still sends some of the people searching for your services to someone else. That shows up in your revenue every month. We estimated how much, from how many people search for what you do in Norcross and where Google places you.
See what this costs me each month ↓What a customer sees on the home page, on a phone, which is where most of them arrive.
| Measured | Your site | Expected |
|---|---|---|
| Phone visible without scrolling | yes | yes |
| Tap-to-call link | yes | yes |
| Contact form reachable | yes | yes |
| Prices or fees shown anywhere | none | at least one |
| Images loaded per page | 230+ | under 60 |
| Ref. | Check | Finding | Expected | Status |
|---|---|---|---|---|
| 1.2.01 | Secure connectionHTTPS and certificate validity | The site opens over HTTPS | HTTPS everywhere | Pass |
| 1.2.02 | Mobile renderingviewport and adaptive layout | Viewport set correctly, layout adapts | adaptive | Pass |
| 1.2.03 | Page weightimages loaded per page | 230+ images on every page, including galleries below the visible area 230+ img/page | under 60 | Attention |
| 1.2.04 | Broken linksinternal links returning an error | None found on the home page | 0 | Pass |
| 1.2.05 | Safe browsingGoogle security blacklist | Not flagged | not listed | Pass |
| Ref. | Check | Finding | Expected | Status |
|---|---|---|---|---|
| 1.3.01 | Sitemappresence, size, declaration | Present, 25 URLs with lastmod dates 25 URLs | present | Pass |
| 1.3.02 | robots.txtstructure of crawl rules | Built from 100 Allow lines instead of one rule. Any new page stays outside the list until someone adds it by hand. 100 Allow lines | rule-based | Attention |
| 1.3.03 | Page headingsH1 present on every page | 4 pages carry no H1 at all /faqs/projects/brands-we-carry/before-after | 1 per page | Fail |
| 1.3.04 | Home page titlelength in characters | 79 characters. Google cuts at about 60, so the end never appears in results. 79 chars | under 60 | Attention |
| 1.3.05 | Breadcrumbstrail and BreadcrumbList markup | Neither a trail nor BreadcrumbList markup on the 25 pages crawled. Results show a bare URL instead of a readable path. | present | Attention |
| 1.3.06 | Canonical tagsduplicate protection | Correct on every page checked | correct | Pass |
| 1.3.07 | Missing page behaviourresponse on a dead URL | Returns 404 without redirecting | 404 | Pass |
| 1.3.08 | Meta descriptionsthe text Google shows under your link | Home page has one. 9 of 25 pages have none, so Google writes its own snippet for them. /p1/p2/p3/p4 | one per page | Attention |
| 1.3.09 | Indexable pagesnoindex tags and blocked pages | All 25 pages crawled are open to indexing. | all | Pass |
| 1.3.10 | Internal linksorphan pages and navigation | No orphan pages found among the 25 pages crawled. | no orphans | Pass |
| Ref. | Check | Finding | Expected | Status |
|---|---|---|---|---|
| 1.4.01 | Unique text per pagecross-page comparison | 96% of text blocks repeat between /duluth and /buford /duluth ↔ /buford · 96%/duluth ↔ /furnace-installation · 92% | under 30% | Fail |
| 1.4.02 | Promised service without a pageheadline against site structure | The home page headline says TRUSTED AIR CONDITIONING REPAIR. No page carries “air conditioning repair” in its address, title or heading. air conditioning repair: no page | page exists | Fail |
| 1.4.03 | Thin pagesword count per page | 2 pages hold less than 250 words /brands-we-carry, 197 words/before-after, 164 words | 400+ words | Attention |
| 1.4.04 | Image alt textimages described for search and screen readers | 225 of 5750 images across the pages crawled have no alt text 225/5750 | all described | Attention |
| 1.4.05 | Informational contentpages answering questions before the sale | None. The blog address redirects to the home page. /blog → redirect to / | present | Attention |
| 1.4.06 | Spellingvisible text on the home page | No errors found | 0 errors | Pass |
| Ref. | Check | Finding | Expected | Status |
|---|---|---|---|---|
| 1.5.01 | Structured dataJSON-LD types found | Service, FAQPage, ProfessionalService present | LocalBusiness + Service | Pass |
| 1.5.02 | Self-issued review markupaggregateRating on your own organisation | Your pages rate you 4.9 from 218 in your own markup. Google's rules do not allow self-serving review markup. aggregateRating 4.9 / 218 | absent | Fail |
| 1.5.03 | Facts agree across pagesfounding year, claims, figures | Your pages give different founding years 19931998 | one answer | Fail |
| 1.5.05 | Quotable passagespages that answer a question directly | None found, so there is nothing an assistant can lift and attribute to you | 4 or more | Fail |
| Ref. | Check | Finding | Expected | Status |
|---|---|---|---|---|
| 1.6.01 | Privacy policypresent and reachable | Present, linked from the home page | present | Pass |
| 1.6.02 | Accessibilityimages described, contrast, labels | On the home page: 9 images without alt text. In the US these are the most common basis for an accessibility complaint. | no gaps | Attention |
| 1.6.03 | Link previewOpen Graph and Twitter card | Filled, with an image. Your link shows as a card, not a bare URL. | filled | Pass |
| 1.6.04 | Email spoofing protectionSPF and DMARC records | Both found on your domain | both present | Pass |
| 1.6.05 | Analytics and ad tagsmeasurement installed on the site | Google Analytics found. No Meta pixel and no Google Ads tag. | all three | Attention |
We build you a new site on your own photos and words, on your own domain, with the pages your trade actually needs. Then we work on it every month so it never drifts back. Your current site stays exactly where it is until you have seen the new one and said yes.
| 1 | Maplewood Comfort |
| 2 | Redline Mechanical |
| 3 | Keystone Comfort Services |
| 4 | Cedar Creek Heating |
| 5 | Granite State Air |
| 6 | Ironwood Air & Heat |
| 7 | Eastgate Air Solutions · 131 reviews |
| 8 | Oakridge Climate Co. |
| 9 | Blue Pine Heating & Cooling |
| 10 | Silver Maple HVAC |
| 11 | Brightline Air Services · no reviews |
| 12 | Summit Comfort Air |
| 13 | Riverbend HVAC Co. |
| 14 | Harbor Heating & Air |
| 15 | Northwind Heating & Air |
| 1 | Redline Mechanical |
| 2 | Maplewood Comfort |
| 3 | Keystone Comfort Services |
| 4 | Ironwood Air & Heat |
| 5 | Oakridge Climate Co. |
| 6 | Summit Comfort Air |
| 7 | Cedar Creek Heating |
| 8 | Riverbend HVAC Co. |
| 9 | Silver Maple HVAC |
| 10 | Granite State Air |
| 20 results returned. You are not one of them. |
| Ref. | Check | Finding | Expected | Status |
|---|---|---|---|---|
| 2.1.01 | Position on your own categorysearch for your category and city | Place 15 of 20 on “air conditioning repair service norcross ga” #15 | top 3 | Fail |
| 2.1.02 | Position on a related searchsecond wording of your service | Not in the 20 results Google returned for “hvac contractor norcross ga” not in 20 | top 3 | Fail |
| 2.1.03 | Weaker listings ranked above youlistings with fewer reviews placed higher | 1 listing with fewer reviews than yours is placed above you Brightline Air Services, 0 reviews, #11 | none | Attention |
| Ref. | Check | Finding | Expected | Status |
|---|---|---|---|---|
| 2.3.01 | Opening hoursas displayed on the listing | Your listing does not show round-the-clock hours while your site promises 24/7 service. site: 24/7 | all 7 days | Fail |
| 2.3.02 | Secondary categoriesadditional categories claimed | None. Every category that fits your business is another set of searches, and your listing enters none of them. 0 additional | 4 to 8 | Fail |
| 2.3.03 | Primary category vs the listings Google showscomparison against search results | None of the 8 listings Google shows first share your primary category. 8 of them use HVAC contractor. | matches the leaders | Fail |
| 2.3.04 | Service listservices published on the listing | Empty. This is free space where the words a customer types are matched directly. 0 services | 12 or more | Fail |
| 2.3.05 | Attributespublic attributes filled in | 1 attribute visible. Payment methods, parking and accessibility are what customers filter by. 1 attribute | 8 or more | Fail |
| 2.3.07 | Link trackingtagging on the website link | The website link carries no tag, so visits from Google Maps are invisible in your analytics | tagged | Attention |
| 2.3.08 | Profile ownershipclaimed and verified by the owner | Claimed by an owner account | claimed | Pass |
| 2.3.09 | Business descriptionlength of the profile description | 412 of 750 characters used 412 chars | 750 characters | Attention |
| 2.3.12 | Website linklisted on the profile | Listed | listed | Pass |
| 2.3.13 | Business statusas shown on the listing | Shown as open for business | operational | Pass |
Google shows five reviews at a time. This is all of them. 5 low ratings out of 191.
Topics counted by Google across your reviews. The ones customers name most are the words they search with.
| Ref. | Check | Finding | Expected | Status |
|---|---|---|---|---|
| 2.4.01 | Review volumeagainst nearby businesses in your category | 191 reviews against a median of 925 among the 7 listings Google showed for “air conditioning repair service norcross ga” | within range | Fail |
| 2.4.02 | Review pacehow recently new reviews arrive | The newest review Google shows us is 2 months old | monthly | Attention |
| 2.4.03 | Who uploaded your photosowner photos against customer photos | Of the 10 most recent photos, 7 were uploaded by customers and 3 by you | mostly yours | Attention |
| 2.4.04 | Low ratings answeredone and two star reviews with an owner reply | 4 of 5 carry a reply. 1 has been sitting unanswered. | all answered | Attention |
| 2.4.05 | Ratingaverage star rating | 4.9 from 191 reviews | 4.5 or higher | Pass |
| 2.4.06 | Photos on the profilephotos on the listing | 186 photos on the listing 186 photos | 40 or more | Pass |
We fill in every field this section just showed you as empty, and we keep it filled. Categories chosen against what actually ranks in Norcross. Services written out. Attributes, hours, description. Eight posts a month. Every new review answered the same day, nights and weekends included, in your voice.
Google compares what it finds about you in different places, and so do AI assistants. Where the answers differ, the safe move for them is to show someone else.
| Fact | On your website | On your Google profile | Result |
|---|---|---|---|
| Opening hours | 24/7 on the site | not open 24 hours | conflict |
| Review count | 218 in page markup | 191 actual | conflict |
| Year founded | 1993 and 1998 on different pages | not shown | conflict |
| Address | street address not found | 1200 Sample Ave | partial |
| Business name | Northwind Heating & Air | identical | match |
| Phone number | same number on the site | identical | match |
| Ref. | Service | Finding | Expected | Status |
|---|---|---|---|---|
| 3.2.01 | Main serviceyour primary category on Google | No page exists on the site for air conditioning repair service air conditioning repair service: no page | page exists | Fail |
| 3.2.02 | Urgent servicepromised as available now or 24/7 | Emergency or same-day service is promised on the home page, and no page carries it | page exists | Fail |
| 3.2.03 | Other listed servicespages and internal links | Every additional category has a page | page exists | Pass |
| Ref. | Check | Finding | Expected | Status |
|---|---|---|---|---|
| 3.3.02 | Social profileslinked from the site | 6 accounts linked | 2 or more | Pass |
| 3.3.03 | Apple Mapslisting present | No listing found. iPhones open Apple Maps by default. | present | Attention |
One set of facts, everywhere. Your hours, your address, your services and your history say the same thing on your site, on your listing and in every directory that carries you. Then it is checked every month, because this is exactly the kind of thing that drifts the moment nobody is watching.
See the plans →People in Norcross who searched for exactly what you do and hired someone else. Not because of your work: 4.9 stars from 191 reviews says the work is good. Because of where Google placed you, and what your listing and your site showed them.
| Step | Value | Source |
|---|---|---|
| People searching for your services in Norcross each month | 1,300 | measured |
| On the map | ||
| Your listing's position on your own category | 15th of 20 | measured |
| Share who open a listing at 15th · at 7th to 4th | 0.4% · 1.6% to 4.5% | First Page Sage 2026, BrightLocal 2025 |
| Listing visits you are not getting | 16 to 53 | calculated |
| Of those, call or book | 25% | Birdeye 2026, LocaliQ 2025 |
| In regular search | ||
| Your website's position for the same searches | not in top 20 | measured |
| Share who click a site at 7th to 4th | 0.4% to 1.1% | First Page Sage 2026 |
| Website visits you are not getting | 5 to 14 | calculated |
| Of those, call or send a form | 7% | Birdeye 2026, LocaliQ 2025 |
| Both together | ||
| Of all these enquiries, become a paid job | 40% | ServiceTitan, Invoca 2026 |
| First job, average | $350 | Angi 2026, HVAC repair |
| Jobs going elsewhere each month | 2 to 6 · $600 to $2,000 | |
Most of the loss is on the map, not on your website. That is normal for local services: in regular search an AI answer, ads and the map sit above every website, so sites get few clicks. We count only the first job, not what that customer spends later, and we never count the top three places on the map. This is an estimate, not a promise. Searches and positions are measured, every rate is a published benchmark for your trade.
Our AI assistant has already read this whole report. On a free five-minute call it walks you through what the score means, where the money goes and what to fix first. No small talk, no pressure. Ask whatever you want to know, or end the call whenever you like.
That is the part nobody can buy.
Based on this report, Northwind Heating & Air qualifies for every plan below. The rest of this report is work, and that is ours.
How the service works, on roanone.com →Your website, rebuilt and looked after every month.
Your website and your Google profile, both run for you.
Everything, plus your reputation and your competitors watched.
| Where customers find you | Core | Growth | Pro |
|---|---|---|---|
| Your website | |||
| Answers from AI assistants | |||
| Your Google profile | — | ||
| Your reviews on Google | — | ||
| Your reviews on Yelp, Facebook, Apple Maps, Bing | — | — | |
| Five competitors, watched and reported every week | — | — | |
| Your rankings across the whole city | — | — | |
| Spanish-speaking customers | — | — |
This report covered your website and your Google Business Profile. It did not cover:
Could not be completed on this run: mobile speed: Google PageSpeed did not answer in time. 9 checks of 73 were not measured this time. They score nothing in either direction.
Method. Produced on September 20, 2026 from publicly available data: your Google Maps listing; the listings of nearby businesses in your category; a check of northwindhvac.example covering the home page, its HTTP response, structured data and tags; DNS records for your domain. Limits. We had no access to your Google Business Profile dashboard, so some fields are judged by how Google displays them publicly, and your dashboard may hold more than the listing shows. Checks we could not complete are marked Not measured and score nothing in either direction. Figures are stated only where they were measured.
Want to understand what these checks mean? Read our plain-English guides to local SEO and AI search →