Catalog / gottafixitroofing.com
65

SEO audit for gottafixitroofing.com

Roof repair & replacement in Virginia & North Carolina.

other

Health 65/100 (fair) · 24 pages crawled · generated 2026-08-26

Download Markdown report (feed to ChatGPT / Claude / Cursor)
Screenshot of gottafixitroofing.com
24
pages crawled
23
indexable pages
0
errors
89
warnings
190
notices
1
orphan pages
0
broken links
Category breakdown
CategoryScoreErrorsWarningsNotices
Agent Readiness 71 0 23 41
Images 71 0 23 0
Meta Description 73 0 22 0
Titles 79 0 17 0
Links 98 0 2 0
Budget 99 0 1 0
Indexability 99 0 1 1
Cache 100 0 0 1
Content 100 0 0 26
Crawlability 100 0 0 1
Headings 100 0 0 1
Performance 100 0 0 71
Security 100 0 0 25
Social 100 0 0 23
Findings

Warnings (8 rules)

warning Control has no accessible name

Rule agent.control_no_name · Agent Readiness · 23 occurrence(s)

warning Noindex page receives internal links (crawl-budget waste)

Rule budget.noindex_linked · Budget · 1 occurrence(s)

  • https://gottafixitroofing.com/wp-admin/ — this noindex page has 1 internal inlink(s) — Googlebot follows them, fetches the page, then drops it unindexed, spending crawl budget for no indexing benefit (and the links leak equity). Remove/redirect the links, or drop the noindex if the page should be indexed. Linked from: https://gottafixitroofing.com/sample-page/.

warning Images missing alt text

Rule images.missing_alt · Images · 23 occurrence(s)

warning Page is noindex

Rule index.noindex · Indexability · 1 occurrence(s)

warning Orphan page (no internal inlinks)

Rule links.orphan · Links · 1 occurrence(s)

warning Internal link points to a redirect

Rule links.redirect_target · Links · 1 occurrence(s)

warning Title likely truncated in SERP (too wide)

Rule title.too_long · Titles · 17 occurrence(s)

Notices (15 rules)

notice Heading levels skip a level

Rule agent.heading_skip · Agent Readiness · 17 occurrence(s)

notice No llms.txt for AI agents

Rule agent.llms_txt_missing · Agent Readiness · 1 occurrence(s)

notice No main landmark for AI agents

Rule agent.no_main_landmark · Agent Readiness · 23 occurrence(s)

notice Page served uncached (no-store/private or CDN bypass)

Rule cache.not_cacheable · Cache · 1 occurrence(s)

notice Low text-to-HTML ratio

Rule content.low_ratio · Content · 23 occurrence(s)

notice Main text is hard to read (low Flesch Reading Ease)

Rule content.readability_poor · Content · 3 occurrence(s)

  • https://gottafixitroofing.com/commercial-roofing/ — this page reads as difficult (Flesch Reading Ease 47, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://gottafixitroofing.com/project-gallery/ — this page reads as difficult (Flesch Reading Ease 49, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://gottafixitroofing.com/shingle-roofing/ — this page reads as difficult (Flesch Reading Ease 49, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.

notice noarchive directive (blocks cached copy)

Rule directives.noarchive · Indexability · 1 occurrence(s)

  • https://gottafixitroofing.com/wp-admin/ — a noarchive directive is present — it blocks a cached copy of the page. Google retired cached links in 2024 so the impact is small, but confirm it's intentional.

notice Multiple <h1> elements

Rule h1.multiple · Headings · 1 occurrence(s)

notice Missing Open Graph tags

Rule og.missing · Social · 23 occurrence(s)

notice Legacy image format (jpg/png/gif) with no next-gen fallback

Rule perf.images_legacy_format · Performance · 23 occurrence(s)

notice No ETag header (no conditional GET for unchanged pages)

Rule perf.no_etag · Performance · 24 occurrence(s)

  • https://gottafixitroofing.com/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://gottafixitroofing.com/about-gotta-fix-it-roofing/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://gottafixitroofing.com/commercial-roofing/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://gottafixitroofing.com/flat-rubber-roofing/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://gottafixitroofing.com/free-christmas-roof-program/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://gottafixitroofing.com/get-a-free-estimate/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://gottafixitroofing.com/metal-roofing/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://gottafixitroofing.com/project-gallery/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://gottafixitroofing.com/questions-we-hear-a-lot-faqs/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://gottafixitroofing.com/roof-inspections/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://gottafixitroofing.com/roof-repair-leak-detection/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://gottafixitroofing.com/roof-replacement/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://gottafixitroofing.com/roofing-at-lake-gaston-virginia-and-north-carolina/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://gottafixitroofing.com/roofing-in-eastern-north-carolina/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://gottafixitroofing.com/roofing-in-littleton-north-carolina/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://gottafixitroofing.com/roofing-in-northern-and-central-north-carolina/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://gottafixitroofing.com/roofing-in-roanoke-rapids-north-carolina/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://gottafixitroofing.com/roofing-in-south-hill-virginia/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://gottafixitroofing.com/roofing-in-southside-and-central-virginia/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://gottafixitroofing.com/roofing-on-the-virginia-and-north-carolina-coast/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://gottafixitroofing.com/sample-page/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://gottafixitroofing.com/shingle-roofing/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://gottafixitroofing.com/storm-damage-repair/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://gottafixitroofing.com/wp-admin/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.

notice No Last-Modified header (no conditional GET for unchanged pages)

Rule perf.no_last_modified · Performance · 24 occurrence(s)

  • https://gottafixitroofing.com/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://gottafixitroofing.com/about-gotta-fix-it-roofing/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://gottafixitroofing.com/commercial-roofing/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://gottafixitroofing.com/flat-rubber-roofing/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://gottafixitroofing.com/free-christmas-roof-program/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://gottafixitroofing.com/get-a-free-estimate/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://gottafixitroofing.com/metal-roofing/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://gottafixitroofing.com/project-gallery/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://gottafixitroofing.com/questions-we-hear-a-lot-faqs/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://gottafixitroofing.com/roof-inspections/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://gottafixitroofing.com/roof-repair-leak-detection/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://gottafixitroofing.com/roof-replacement/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://gottafixitroofing.com/roofing-at-lake-gaston-virginia-and-north-carolina/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://gottafixitroofing.com/roofing-in-eastern-north-carolina/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://gottafixitroofing.com/roofing-in-littleton-north-carolina/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://gottafixitroofing.com/roofing-in-northern-and-central-north-carolina/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://gottafixitroofing.com/roofing-in-roanoke-rapids-north-carolina/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://gottafixitroofing.com/roofing-in-south-hill-virginia/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://gottafixitroofing.com/roofing-in-southside-and-central-virginia/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://gottafixitroofing.com/roofing-on-the-virginia-and-north-carolina-coast/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://gottafixitroofing.com/sample-page/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://gottafixitroofing.com/shingle-roofing/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://gottafixitroofing.com/storm-damage-repair/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://gottafixitroofing.com/wp-admin/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.

notice URL redirects to another URL

Rule redirect.single · Crawlability · 1 occurrence(s)

notice Missing recommended security headers

Rule security.missing_headers · Security · 24 occurrence(s)

notice target=_blank link without rel=noopener (tab-napping)

Rule security.unsafe_cross_origin_links · Security · 1 occurrence(s)

  • https://gottafixitroofing.com/ — 2 external link(s) use target="_blank" without rel="noopener" — the opened page can hijack your tab (reverse tab-napping). Add rel="noopener noreferrer".
Pages (showing 24 of 24)
URLStatusIndexableWordsIn-links
https://gottafixitroofing.com/
Roof repair & replacement in Virginia & North Carolina.
200 yes 800 24
https://gottafixitroofing.com/about-gotta-fix-it-roofing/
About Gotta Fix It Roofing | Gotta Fix It Roofing | Roofers in Virginia & North Carolina
200 yes 591 23
https://gottafixitroofing.com/commercial-roofing/
Commercial Roofing | Gotta Fix It Roofing | Roofers in Virginia & North Carolina
200 yes 623 23
https://gottafixitroofing.com/flat-rubber-roofing/
Flat & Rubber Roofing | Gotta Fix It Roofing | Roofers in Virginia & North Carolina
200 yes 650 23
https://gottafixitroofing.com/free-christmas-roof-program/
Free Christmas Roof Program | Gotta Fix It Roofing | Roofers in Virginia & North Carolina
200 yes 549 23
https://gottafixitroofing.com/get-a-free-estimate/
Get a Free Estimate | Gotta Fix It Roofing | Roofers in Virginia & North Carolina
200 yes 299 23
https://gottafixitroofing.com/metal-roofing/
Metal Roofing | Gotta Fix It Roofing | Roofers in Virginia & North Carolina
200 yes 723 23
https://gottafixitroofing.com/project-gallery/
Project Gallery | Gotta Fix It Roofing | Roofers in Virginia & North Carolina
200 yes 296 23
https://gottafixitroofing.com/questions-we-hear-a-lot-faqs/
Questions We Hear a Lot (FAQs) | Gotta Fix It Roofing | Roofers in Virginia & North Carolina
200 yes 674 23
https://gottafixitroofing.com/roof-inspections/
Roof Inspections | Gotta Fix It Roofing | Roofers in Virginia & North Carolina
200 yes 623 23
https://gottafixitroofing.com/roof-repair-leak-detection/
Roof Repair & Leak Detection | Gotta Fix It Roofing | Roofers in Virginia & North Carolina
200 yes 639 23
https://gottafixitroofing.com/roof-replacement/
Roof Replacement | Gotta Fix It Roofing | Roofers in Virginia & North Carolina
200 yes 677 23
https://gottafixitroofing.com/roofing-at-lake-gaston-virginia-and-north-carolina/
Roofing at Lake Gaston, Virginia and North Carolina | Gotta Fix It Roofing | Roofers in Virginia & North Carolina
200 yes 581 23
https://gottafixitroofing.com/roofing-in-eastern-north-carolina/
Roofing in Eastern North Carolina | Gotta Fix It Roofing | Roofers in Virginia & North Carolina
200 yes 687 23
https://gottafixitroofing.com/roofing-in-littleton-north-carolina/
Roofing in Littleton, North Carolina | Gotta Fix It Roofing | Roofers in Virginia & North Carolina
200 yes 559 23
https://gottafixitroofing.com/roofing-in-northern-and-central-north-carolina/
Roofing in Northern and Central North Carolina | Gotta Fix It Roofing | Roofers in Virginia & North Carolina
200 yes 669 23
https://gottafixitroofing.com/roofing-in-roanoke-rapids-north-carolina/
Roofing in Roanoke Rapids, North Carolina | Gotta Fix It Roofing | Roofers in Virginia & North Carolina
200 yes 590 23
https://gottafixitroofing.com/roofing-in-south-hill-virginia/
Roofing in South Hill, Virginia | Gotta Fix It Roofing | Roofers in Virginia & North Carolina
200 yes 539 23
https://gottafixitroofing.com/roofing-in-southside-and-central-virginia/
Roofing in Southside and Central Virginia | Gotta Fix It Roofing | Roofers in Virginia & North Carolina
200 yes 664 23
https://gottafixitroofing.com/roofing-on-the-virginia-and-north-carolina-coast/
Roofing on the Virginia and North Carolina Coast | Gotta Fix It Roofing | Roofers in Virginia & North Carolina
200 yes 791 23
https://gottafixitroofing.com/shingle-roofing/
Shingle Roofing | Gotta Fix It Roofing | Roofers in Virginia & North Carolina
200 yes 615 23
https://gottafixitroofing.com/storm-damage-repair/
Storm Damage Repair | Gotta Fix It Roofing | Roofers in Virginia & North Carolina
200 yes 783 23
https://gottafixitroofing.com/wp-admin/
Log In ‹ Gotta Fix It Roofing | Roofers in Virginia & North Carolina — WordPress
200 no 29 1
https://gottafixitroofing.com/sample-page/
Sample Page | Gotta Fix It Roofing | Roofers in Virginia & North Carolina
200 yes 326 0

Audit your own site — free

157 checks, internal PageRank, render-diff. No signup, results in ~30s.

Scan your site →