Scanned sites / gnhroofing.ca / 2026-10-03-0758
gnhroofing.ca scan from 10/3/2026, 7:58:22 AM
Scan 2026-10-03-0758
Scanned 10/3/2026, 7:58:22 AM, finished 10/3/2026, 8:29:19 AM. Found on page 4 of brave web search results
Site: https://gnhroofing.ca/
Download SQLite databaseEvery page and asset from this scan, with the crawl events, in one file.
On October 3, 2026 the Site Spider crawled 120 pages and 451 assets of gnhroofing.ca, starting from https://gnhroofing.ca/. It scored 81 out of 100, a good result. 12 of 23 checks found something to fix, led by heavy assets (26), links to other sites (12), meta descriptions (42); 4 checks passed. Most of the points went to heavy assets (−6), links to other sites (−4), meta descriptions (−3.1). 7 checks found something the score does not count, listed as noted. The list below shows each check's result, the fix plan, when present, explains what to do first, and the security review at the end of the page covers headers, transport, libraries and exposed files.
Security review: Medium3 medium, 3 low and 1 info findings. See the security findings ↓
- Pages crawled
- 120
- Assets fetched
- 451
- Status
- Completed
- Checks with issues
- 12 of 23
571 of 571 discovered URLs were fetched. The crawl reached everything it found. HTML only: nothing here ran JavaScript. 69 link destinations on other sites were checked.
- Title tags17 issues17 of 91 pages have title issues. 18 noindex or canonicalized pages excluded.−1.6 points
- Meta descriptions42 issues42 of 91 pages have meta description issues. 18 noindex or canonicalized pages excluded.−3.1 points
- Headings8 issues8 of 91 pages have heading issues. 18 noindex or canonicalized pages excluded.−0.4 points
- Broken links3 issues111 internal links point at 3 broken URLs.−0.6 points
- Links to other sites12 issues12 destinations answered with an error, 23 could not be determined (timeouts, rate limits or refusals), of 69 destinations checked.−4 points
- Redirects9 issues9 redirecting URLs, 4 of them chained.−0.3 points
- Non-200 responses3 issues13 URLs did not return a 2xx response. 11 of them are pages, 3 with an error status; the rest are assets or redirects.−0.3 points
- Rate limitedOKThe site did not rate limit the crawler.
- IndexabilityOK0 of 109 indexable pages have indexability warnings.
- Image alt textOK0 of 1960 image references have no alt attribute. 641 use an empty alt (decorative), which is fine.
- Heavy assets26 issues26 assets larger than 500 KB among 451 fetched assets. 3 documents over that size are listed but not counted: downloads are not page weight.−6 points
- Orphan pages24 issues24 pages have no internal links pointing at them.−0.9 points
- Sitemap coverage24 issues6 sitemaps listing 91 URLs: 0 crawled pages missing, 0 listed URLs broken or redirecting, 24 reachable only via the sitemap.−1.3 points
- Internal link counts3 notedInternal link counts for 109 pages; 3 worth a look.
- Thin content4 issues4 of 91 pages have fewer than 200 words. 18 noindex or canonicalized pages excluded.−0.3 points
- Duplicate content3 issues1 group of pages with identical HTML.−0.2 points
- URL format23 noted23 of 120 page URLs are harder to read, share or cache than they need to be.
- Canonicals18 noted18 of 109 pages have a canonical worth checking.
- Robots directives109 noted109 pages carry a robots directive; 0 carry none.
- Anchor text43 noted43 destinations are linked without useful anchor text, or with nofollow.
- Title and heading structure29 noted29 of 91 pages could use the title, heading and snippet space better. 18 noindex or canonicalized pages excluded.
- Image weight and alt length150 noted143 images over 100 KB; 7 with alt text over 100 characters.
- Response anomaliesOKNo redirect loops, header redirects or pages served as something other than HTML.
Where this scan sits among all scanned sites
2066 sites, median 79%, average 78%
gnhroofing.ca scores 81%, higher than 56% of the 2066 scanned sites. See the full ranking.
Green 90% and up (Excellent), lime 75 to 89 (Good), amber 50 to 74 (Needs work), red below 50 (Poor).
Internal link map
Loading the link map...
Fix plan
Written by gpt-4o-mini from the scan findingsWritten from an earlier version of the analysis (rules v4). The findings on this page have been recomputed since, so counts and labels here may differ from what the plan describes. The advice still points at the same checks.
The website shows several issues that need addressing, with broken links and redirects being the top priorities. Focus on fixing these to enhance user experience and SEO performance.
- 1
Fix Broken Links
Why: Broken links hurt user experience and SEO ranking.
How: Identify the broken URLs and update or remove links accordingly.
Checks: broken-links
- 2
Address Redirect Chains
Why: Chained redirects slow down site load time and confuse search engines.
How: Reduce chains by linking directly to the final destination.
Checks: redirects
- 3
Resolve Non-200 Responses
Why: Non-200 status codes impede accessibility and ranking.
How: Check the affected URLs and restore or redirect them correctly.
Checks: status-codes
- 4
Improve Title Tags
Why: Optimized title tags positively influence click-through rates.
How: Shorten long title tags below 60 characters for clarity.
Checks: titles
- 5
Revise Meta Descriptions
Why: Meta descriptions help attract clicks from SERPs.
How: Update or create meta descriptions under 160 characters, ensuring uniqueness.
Checks: meta-descriptions
- 6
Optimize Heavy Assets
Why: Large assets can slow site loading times.
How: Compress large images and documents to enhance performance.
Evidence: 584 KB of image, loaded by 109 pages, so every visitor to any of them downloads it.
109 pages affected
Depends on: If it is a download rather than part of the page, weight matters less; move it out of the page instead.
Checks: heavy-assets
Generated automatically; verify each change against your own site before relying on it.
Security review
Written by gpt-4o-mini from 16 checks over the crawlYour website lacks several important security headers, making it potentially vulnerable to various attacks. Implementing these headers will enhance security by preventing unauthorized access and data leakage.
- 0 high
- 3 medium
- 3 low
- 1 info
- 1
Missing HTTP Strict Transport Security (HSTS)Medium
Why it matters: Without HSTS, first-time visitors using HTTP can be intercepted.
Fix: Add the header: Strict-Transport-Security: max-age=31536000; includeSubDomains
Evidence: HTTP Strict Transport Security
- 2
Missing Content Security Policy (CSP)Medium
Why it matters: Absence of CSP allows scripts to load from untrusted sources.
Fix: Add the header: Content-Security-Policy: default-src 'self';
Evidence: Content Security Policy
- 3
Missing X-Frame-OptionsMedium
Why it matters: Lack of this header exposes your site to clickjacking attacks.
Fix: Add the header: X-Frame-Options: DENY
Evidence: Clickjacking protection
- 4
Missing X-Content-Type-OptionsLow
Why it matters: This header prevents browsers from interpreting files as a different MIME type.
Fix: Add the header: X-Content-Type-Options: nosniff
Evidence: MIME sniffing protection
- 5
Missing Referrer PolicyLow
Why it matters: Lack of a defined policy may expose sensitive URL information.
Fix: Add the header: Referrer-Policy: no-referrer
Evidence: Referrer policy
- 6
Third-party Scripts without Subresource IntegrityLow
Why it matters: Scripts from external domains are vulnerable to tampering.
Fix: Consider implementing Subresource Integrity (SRI) for third-party scripts.
Evidence: Third-party scripts
- 7
Missing Permissions PolicyInfo
Why it matters: Missing this header could allow scripts to exploit unnecessary features.
Fix: Add the header: Permissions-Policy: geo=(), microphone=(), camera=()
Evidence: Permissions policy
What the checks found
- FoundHTTP Strict Transport SecurityMedium
No HTML page sends strict-transport-security. Without it a visitor who types the address without https:// can be intercepted on the first request.
- https://gnhroofing.ca/ → no strict-transport-security
- https://gnhroofing.ca/contact-us/ → no strict-transport-security
- https://gnhroofing.ca/services/roofing/ → no strict-transport-security
- https://gnhroofing.ca/services/roofing-repair/ → no strict-transport-security
- https://gnhroofing.ca/services/roofing-replacements/ → no strict-transport-security
- https://gnhroofing.ca/services/new-construction/ → no strict-transport-security
- https://gnhroofing.ca/services/siding/ → no strict-transport-security
- https://gnhroofing.ca/services/exteriors/ → no strict-transport-security
- https://gnhroofing.ca/services/leaf-guard/ → no strict-transport-security
- https://gnhroofing.ca/services/gutter-eavestroughs-fascia-soffit/ → no strict-transport-security
- https://gnhroofing.ca/services/enhanced-services/ → no strict-transport-security
- https://gnhroofing.ca/services/solar-attic-vents/ → no strict-transport-security
- FoundContent Security PolicyMedium
None of the 109 HTML pages send a Content-Security-Policy header or meta tag, so the browser has no restriction on where scripts, styles and frames may load from.
- https://gnhroofing.ca/ → no content-security-policy
- https://gnhroofing.ca/contact-us/ → no content-security-policy
- https://gnhroofing.ca/services/roofing/ → no content-security-policy
- https://gnhroofing.ca/services/roofing-repair/ → no content-security-policy
- https://gnhroofing.ca/services/roofing-replacements/ → no content-security-policy
- https://gnhroofing.ca/services/new-construction/ → no content-security-policy
- https://gnhroofing.ca/services/siding/ → no content-security-policy
- https://gnhroofing.ca/services/exteriors/ → no content-security-policy
- https://gnhroofing.ca/services/leaf-guard/ → no content-security-policy
- https://gnhroofing.ca/services/gutter-eavestroughs-fascia-soffit/ → no content-security-policy
- https://gnhroofing.ca/services/enhanced-services/ → no content-security-policy
- https://gnhroofing.ca/services/solar-attic-vents/ → no content-security-policy
- FoundClickjacking protectionMedium
No HTML page sends x-frame-options. Without X-Frame-Options (or a CSP frame-ancestors directive) the pages can be embedded in a frame on another site and overlaid with invisible controls.
- https://gnhroofing.ca/ → no x-frame-options
- https://gnhroofing.ca/contact-us/ → no x-frame-options
- https://gnhroofing.ca/services/roofing/ → no x-frame-options
- https://gnhroofing.ca/services/roofing-repair/ → no x-frame-options
- https://gnhroofing.ca/services/roofing-replacements/ → no x-frame-options
- https://gnhroofing.ca/services/new-construction/ → no x-frame-options
- https://gnhroofing.ca/services/siding/ → no x-frame-options
- https://gnhroofing.ca/services/exteriors/ → no x-frame-options
- https://gnhroofing.ca/services/leaf-guard/ → no x-frame-options
- https://gnhroofing.ca/services/gutter-eavestroughs-fascia-soffit/ → no x-frame-options
- https://gnhroofing.ca/services/enhanced-services/ → no x-frame-options
- https://gnhroofing.ca/services/solar-attic-vents/ → no x-frame-options
- FoundMIME sniffing protectionLow
No HTML page sends x-content-type-options. Without X-Content-Type-Options: nosniff a browser may run a file as a script because of its contents rather than its declared type.
- https://gnhroofing.ca/ → no x-content-type-options
- https://gnhroofing.ca/contact-us/ → no x-content-type-options
- https://gnhroofing.ca/services/roofing/ → no x-content-type-options
- https://gnhroofing.ca/services/roofing-repair/ → no x-content-type-options
- https://gnhroofing.ca/services/roofing-replacements/ → no x-content-type-options
- https://gnhroofing.ca/services/new-construction/ → no x-content-type-options
- https://gnhroofing.ca/services/siding/ → no x-content-type-options
- https://gnhroofing.ca/services/exteriors/ → no x-content-type-options
- https://gnhroofing.ca/services/leaf-guard/ → no x-content-type-options
- https://gnhroofing.ca/services/gutter-eavestroughs-fascia-soffit/ → no x-content-type-options
- https://gnhroofing.ca/services/enhanced-services/ → no x-content-type-options
- https://gnhroofing.ca/services/solar-attic-vents/ → no x-content-type-options
- FoundReferrer policyLow
No HTML page sends referrer-policy. Without a Referrer-Policy the full page address, including any query string, is sent to every site a visitor clicks through to.
- https://gnhroofing.ca/ → no referrer-policy
- https://gnhroofing.ca/contact-us/ → no referrer-policy
- https://gnhroofing.ca/services/roofing/ → no referrer-policy
- https://gnhroofing.ca/services/roofing-repair/ → no referrer-policy
- https://gnhroofing.ca/services/roofing-replacements/ → no referrer-policy
- https://gnhroofing.ca/services/new-construction/ → no referrer-policy
- https://gnhroofing.ca/services/siding/ → no referrer-policy
- https://gnhroofing.ca/services/exteriors/ → no referrer-policy
- https://gnhroofing.ca/services/leaf-guard/ → no referrer-policy
- https://gnhroofing.ca/services/gutter-eavestroughs-fascia-soffit/ → no referrer-policy
- https://gnhroofing.ca/services/enhanced-services/ → no referrer-policy
- https://gnhroofing.ca/services/solar-attic-vents/ → no referrer-policy
- FoundPermissions policyInfo
No HTML page sends permissions-policy. A Permissions-Policy header turns off browser features the site does not use (camera, microphone, geolocation), limiting what an injected script could do.
- https://gnhroofing.ca/ → no permissions-policy
- https://gnhroofing.ca/contact-us/ → no permissions-policy
- https://gnhroofing.ca/services/roofing/ → no permissions-policy
- https://gnhroofing.ca/services/roofing-repair/ → no permissions-policy
- https://gnhroofing.ca/services/roofing-replacements/ → no permissions-policy
- https://gnhroofing.ca/services/new-construction/ → no permissions-policy
- https://gnhroofing.ca/services/siding/ → no permissions-policy
- https://gnhroofing.ca/services/exteriors/ → no permissions-policy
- https://gnhroofing.ca/services/leaf-guard/ → no permissions-policy
- https://gnhroofing.ca/services/gutter-eavestroughs-fascia-soffit/ → no permissions-policy
- https://gnhroofing.ca/services/enhanced-services/ → no permissions-policy
- https://gnhroofing.ca/services/solar-attic-vents/ → no permissions-policy
- NoteThird-party scripts
Scripts run from 2 other domains without Subresource Integrity, so a compromise of any of them changes what runs on this site. (Tag managers and analytics rarely support SRI; a Content-Security-Policy that names these hosts is the usual control.)
- www.googletagmanager.com (40 script tags)
- www.google.com (40 script tags)
8 checks passed, 1 not applicable
- OKHTTPS
All 109 crawled pages were served over HTTPS.
- OKSoftware version disclosure
The Server header names a product without a version, and there is no X-Powered-By header.
- OKMixed content
No HTTPS page loads a script, stylesheet, font or image over plain HTTP.
- OKForms over HTTPS
38 forms found, all on HTTPS pages posting to HTTPS addresses.
- OKVulnerable JavaScript libraries
1 library version recognised, none with known vulnerabilities.
- OKKeys and secrets in page code
No API keys, tokens or private keys were found in the sampled HTML and scripts.
- OKExposed files and listings
None of the crawled URLs is a configuration file, backup, dump, repository folder or directory listing.
- OKSensitive paths in robots.txt
robots.txt does not point at admin, backup or private paths.
- Not applicableCookie flags
The crawl set no cookies, so there are no cookie flags to check.
A passive review of what the crawl recorded: response headers, page and script contents and the URLs it found. It does not probe the site, test TLS settings or look for files that were not linked. Generated automatically; verify each finding against your own site before acting on it.
Sites scoring near gnhroofing.ca
Their neighbours in the SEO rank table, which orders every scanned site by health score.
- www.haircuttery.com81/100 · rank 813 · 1,507 pages
- smoothstonelandscaping.com81/100 · rank 813 · 87 pages
- ekdentalgroup.com81/100 · rank 813 · 245 pages
- www.theebyco.com81/100 · rank 813 · 13 pages
- www.spokaneelite.com81/100 · rank 813 · 26 pages
- www.calgarylaw.com81/100 · rank 813 · 65 pages
This report was produced by the DIY SEO Hub Site Spider crawling gnhroofing.ca from its pages as published, the way a search engine does. It shows summary figures only.
Own gnhroofing.ca?
- Claim this site to manage the listing, hide it from the public lists, or keep it.
- Want it gone instead? Ask through the support form or e-mail support@diyseohub.com, naming gnhroofing.ca. Removal needs no account and no proof of purchase.