Scanned sites / calgaryair.ca / 2026-10-01-1152

calgaryair.ca scan from 10/1/2026, 11:52:35 AM

A newer scan exists. See the latest report for calgaryair.ca.

Scan 2026-10-01-1152

Scanned 10/1/2026, 11:52:35 AM, finished 10/1/2026, 8:29:36 PM. Found on page 5 of brave web search results

Site: https://calgaryair.ca/

Download SQLite databaseEvery page and asset from this scan, with the crawl events, in one file.

71/ 100Needs work

On October 1, 2026 the Site Spider crawled 304 pages and 817 assets of calgaryair.ca, starting from https://calgaryair.ca/. It scored 71 out of 100, a result that needs work. 12 of 16 checks found something to fix, led by meta descriptions (228), sitemap coverage (351), heavy assets (21); 3 checks passed. Most of the points went to meta descriptions (−6.5), heavy assets (−6), sitemap coverage (−6). 1 check 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: Medium4 medium, 3 low and 2 info findings. See the security findings ↓

Pages crawled
304
Assets fetched
817
Status
Completed
Checks with issues
12 of 16
CoverageComplete crawl

1,121 of 1,371 discovered URLs were fetched, 250 blocked by robots.txt. The crawl reached everything it found. HTML only: nothing here ran JavaScript. 37 link destinations on other sites were checked.

  • Title tags116 issues
    116 of 271 pages have title issues. 11 noindex or canonicalized pages excluded.
    −4.1 points
  • Meta descriptions228 issues
    228 of 271 pages have meta description issues. 11 noindex or canonicalized pages excluded.
    −6.5 points
  • Headings178 issues
    178 of 271 pages have heading issues. 11 noindex or canonicalized pages excluded.
    −3.8 points
  • Broken links8 issues
    9 internal links point at 8 broken URLs.
    −0.6 points
  • Links to other sites20 issues
    20 destinations answered with an error, 9 could not be determined (timeouts, rate limits or refusals), of 37 destinations checked.
    −2.9 points
  • Redirects14 issues
    66 redirecting URLs, 0 of them chained.
    −0.2 points
  • Non-200 responses8 issues
    76 URLs did not return a 2xx response. 22 of them are pages, 8 with an error status; the rest are assets or redirects.
    −0.3 points
  • Rate limitedOK
    The site did not rate limit the crawler.
  • Indexability11 issues
    11 of 282 indexable pages have indexability warnings.
    −0.4 points
  • Image alt text227 issues
    227 of 2787 image references have no alt attribute. 15 use an empty alt (decorative), which is fine.
    −0.5 points
  • Heavy assets21 issues
    21 assets larger than 500 KB among 817 fetched assets.
    −6 points
  • Orphan pages71 issues
    71 pages have no internal links pointing at them.
    −1 points
  • Sitemap coverage351 issues
    7 sitemaps listing 493 URLs: 29 crawled pages missing, 250 listed URLs broken or redirecting, 72 reachable only via the sitemap.
    −6 points
  • Internal link countsOK
    Internal link counts for 282 pages.
  • Thin contentOK
    0 of 271 pages have fewer than 200 words. 11 noindex or canonicalized pages excluded.
  • Duplicate contentOK
    0 groups of pages with identical HTML.

Where this scan sits among all scanned sites

1678 sites, median 80%, average 79%

calgaryair.ca scores 71%, higher than 18% of the 1678 scanned sites. See the full ranking.

0511020%: 0 sites1%: 0 sites2%: 0 sites3%: 0 sites4%: 0 sites5%: 0 sites6%: 0 sites7%: 0 sites8%: 0 sites9%: 0 sites10%: 0 sites11%: 0 sites12%: 0 sites13%: 0 sites14%: 0 sites15%: 0 sites16%: 0 sites17%: 0 sites18%: 0 sites19%: 0 sites20%: 0 sites21%: 1 site22%: 0 sites23%: 0 sites24%: 0 sites25%: 0 sites26%: 0 sites27%: 0 sites28%: 1 site29%: 0 sites30%: 0 sites31%: 0 sites32%: 0 sites33%: 0 sites34%: 0 sites35%: 2 sites36%: 1 site37%: 2 sites38%: 2 sites39%: 0 sites40%: 2 sites41%: 1 site42%: 0 sites43%: 1 site44%: 0 sites45%: 3 sites46%: 2 sites47%: 3 sites48%: 2 sites49%: 5 sites50%: 3 sites51%: 5 sites52%: 7 sites53%: 6 sites54%: 6 sites55%: 4 sites56%: 5 sites57%: 6 sites58%: 11 sites59%: 6 sites60%: 9 sites61%: 11 sites62%: 15 sites63%: 15 sites64%: 10 sites65%: 18 sites66%: 19 sites67%: 31 sites68%: 26 sites69%: 24 sites70%: 38 sites71%: 37 sites72%: 48 sites73%: 45 sites74%: 46 sites75%: 53 sites76%: 66 sites77%: 60 sites78%: 77 sites79%: 61 sites80%: 81 sites81%: 102 sites82%: 80 sites83%: 78 sites84%: 73 sites85%: 58 sites86%: 59 sites87%: 53 sites88%: 58 sites89%: 50 sites90%: 32 sites91%: 34 sites92%: 22 sites93%: 11 sites94%: 12 sites95%: 7 sites96%: 7 sites97%: 7 sites98%: 2 sites99%: 2 sites100%: 54 sites71% here100%90%80%70%60%50%40%30%20%10%0%

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

Start page (centre)OKRedirectErrorOrphanLinked from most pagesOne inbound link or noneRings = clicks from the start page. Size = inbound links. Drag to pan, scroll to zoom, click a page to see only its links.

Fix plan

Written by gpt-4o-mini from the scan findings

Several key issues need fixing for improved SEO. Top priorities include addressing broken links, improving title tags and meta descriptions, and resolving heavy asset sizes. These changes will enhance site performance and user experience.

  1. 1

    Fix Broken Links

    Why: Broken links hurt user experience and SEO.

    How: Update or remove links that point to 8 broken URLs.

    Checks: broken-links

  2. 2

    Revise Title Tags

    Why: Improper title tags degrade relevance and rankings.

    How: Fix 116 pages with title tag issues; ensure appropriate length and relevance.

    Checks: titles

  3. 3

    Improve Meta Descriptions

    Why: Meta description issues affect click-through rates.

    How: Revise 228 meta descriptions to be concise and relevant.

    Checks: meta-descriptions

  4. 4

    Resolve Heavy Assets

    Why: Large assets slow down page load times.

    How: Optimize or compress 21 assets greater than 500 KB.

    Checks: heavy-assets

  5. 5

    Add Missing Headings

    Why: Pages without headings lose structure and SEO value.

    How: Add H1 tags to 178 pages where they are missing.

    Checks: headings

  6. 6

    Fix Orphan Pages

    Why: Orphan pages cannot be indexed properly.

    How: Link to 71 orphan pages from other relevant pages.

    Checks: orphan-pages

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 crawl

Your website has several security vulnerabilities that could allow interception of traffic and reduce the effectiveness of protections against attacks. Critical headers are missing, outdated libraries are used, and sensitive information is disclosed in the robots.txt file. Implementing recommended fixes will enhance your site's security.

  • 0 high
  • 4 medium
  • 3 low
  • 2 info
  1. 1

    Missing HTTP Strict Transport Security (HSTS)Medium

    Why it matters: Without HSTS, visitors typing the URL without 'https://' could be intercepted.

    Fix: Add the header 'Strict-Transport-Security: max-age=31536000; includeSubDomains; preload' to all responses.

    Evidence: HTTP Strict Transport Security

  2. 2

    Missing Content Security Policy (CSP)Medium

    Why it matters: Absence of a CSP allows unrestricted loading of resources, increasing XSS risks.

    Fix: Include the header 'Content-Security-Policy: default-src 'self';' in all responses.

    Evidence: Content Security Policy

  3. 3

    Missing X-Frame-Options HeaderMedium

    Why it matters: Lack of this header allows for potential clickjacking attacks.

    Fix: Add the header 'X-Frame-Options: DENY' to all HTML responses.

    Evidence: Clickjacking protection

  4. 4

    Vulnerable JavaScript LibrariesMedium

    Why it matters: Using outdated libraries exposes the site to known vulnerabilities.

    Fix: Upgrade jQuery to 3.5.0 or higher and Bootstrap to 4.3.1 or higher.

    Evidence: Vulnerable JavaScript libraries

  5. 5

    Missing X-Content-Type-Options HeaderLow

    Why it matters: Without this header, the browser may incorrectly interpret files, increasing risk.

    Fix: Add the header 'X-Content-Type-Options: nosniff' in all HTML responses.

    Evidence: MIME sniffing protection

  6. 6

    Missing Referrer Policy HeaderLow

    Why it matters: No referrer-policy means full URL data may be shared with third-party sites.

    Fix: Set the header 'Referrer-Policy: no-referrer' for all pages.

    Evidence: Referrer policy

  7. 7

    Third-Party Scripts without Subresource IntegrityLow

    Why it matters: Scripts from other domains could be altered, compromising security.

    Fix: Use Subresource Integrity (SRI) for all third-party scripts or implement a CSP.

    Evidence: Third-party scripts

  8. 8

    Missing Permissions Policy HeaderInfo

    Why it matters: This absence allows unnecessary access to browser features potentially abused by scripts.

    Fix: Add the header 'Permissions-Policy: geolocation=(self), camera=(), microphone=()' to all HTML pages.

    Evidence: Permissions policy

  9. 9

    Sensitive Paths in robots.txtInfo

    Why it matters: Public robots.txt may expose sensitive paths to potential attackers.

    Fix: Restrict access to sensitive paths via proper server-side authentication.

    Evidence: Sensitive paths in robots.txt

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://calgaryair.ca/ → no strict-transport-security
    • https://calgaryair.ca/company/ → no strict-transport-security
    • https://calgaryair.ca/about-us/ → no strict-transport-security
    • https://calgaryair.ca/contact-us/ → no strict-transport-security
    • https://calgaryair.ca/faq/ → no strict-transport-security
    • https://calgaryair.ca/reviews/ → no strict-transport-security
    • https://calgaryair.ca/services/ → no strict-transport-security
    • https://calgaryair.ca/gas-lines/ → no strict-transport-security
    • https://calgaryair.ca/gas-lines-installation/ → no strict-transport-security
    • https://calgaryair.ca/gas-lines-repair/ → no strict-transport-security
    • https://calgaryair.ca/gas-lines-replacement/ → no strict-transport-security
    • https://calgaryair.ca/gas-lines-maintenance/ → no strict-transport-security
  • FoundContent Security PolicyMedium

    None of the 282 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://calgaryair.ca/ → no content-security-policy
    • https://calgaryair.ca/company/ → no content-security-policy
    • https://calgaryair.ca/about-us/ → no content-security-policy
    • https://calgaryair.ca/contact-us/ → no content-security-policy
    • https://calgaryair.ca/faq/ → no content-security-policy
    • https://calgaryair.ca/reviews/ → no content-security-policy
    • https://calgaryair.ca/services/ → no content-security-policy
    • https://calgaryair.ca/gas-lines/ → no content-security-policy
    • https://calgaryair.ca/gas-lines-installation/ → no content-security-policy
    • https://calgaryair.ca/gas-lines-repair/ → no content-security-policy
    • https://calgaryair.ca/gas-lines-replacement/ → no content-security-policy
    • https://calgaryair.ca/gas-lines-maintenance/ → 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://calgaryair.ca/ → no x-frame-options
    • https://calgaryair.ca/company/ → no x-frame-options
    • https://calgaryair.ca/about-us/ → no x-frame-options
    • https://calgaryair.ca/contact-us/ → no x-frame-options
    • https://calgaryair.ca/faq/ → no x-frame-options
    • https://calgaryair.ca/reviews/ → no x-frame-options
    • https://calgaryair.ca/services/ → no x-frame-options
    • https://calgaryair.ca/gas-lines/ → no x-frame-options
    • https://calgaryair.ca/gas-lines-installation/ → no x-frame-options
    • https://calgaryair.ca/gas-lines-repair/ → no x-frame-options
    • https://calgaryair.ca/gas-lines-replacement/ → no x-frame-options
    • https://calgaryair.ca/gas-lines-maintenance/ → 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://calgaryair.ca/ → no x-content-type-options
    • https://calgaryair.ca/company/ → no x-content-type-options
    • https://calgaryair.ca/about-us/ → no x-content-type-options
    • https://calgaryair.ca/contact-us/ → no x-content-type-options
    • https://calgaryair.ca/faq/ → no x-content-type-options
    • https://calgaryair.ca/reviews/ → no x-content-type-options
    • https://calgaryair.ca/services/ → no x-content-type-options
    • https://calgaryair.ca/gas-lines/ → no x-content-type-options
    • https://calgaryair.ca/gas-lines-installation/ → no x-content-type-options
    • https://calgaryair.ca/gas-lines-repair/ → no x-content-type-options
    • https://calgaryair.ca/gas-lines-replacement/ → no x-content-type-options
    • https://calgaryair.ca/gas-lines-maintenance/ → 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://calgaryair.ca/ → no referrer-policy
    • https://calgaryair.ca/company/ → no referrer-policy
    • https://calgaryair.ca/about-us/ → no referrer-policy
    • https://calgaryair.ca/contact-us/ → no referrer-policy
    • https://calgaryair.ca/faq/ → no referrer-policy
    • https://calgaryair.ca/reviews/ → no referrer-policy
    • https://calgaryair.ca/services/ → no referrer-policy
    • https://calgaryair.ca/gas-lines/ → no referrer-policy
    • https://calgaryair.ca/gas-lines-installation/ → no referrer-policy
    • https://calgaryair.ca/gas-lines-repair/ → no referrer-policy
    • https://calgaryair.ca/gas-lines-replacement/ → no referrer-policy
    • https://calgaryair.ca/gas-lines-maintenance/ → 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://calgaryair.ca/ → no permissions-policy
    • https://calgaryair.ca/company/ → no permissions-policy
    • https://calgaryair.ca/about-us/ → no permissions-policy
    • https://calgaryair.ca/contact-us/ → no permissions-policy
    • https://calgaryair.ca/faq/ → no permissions-policy
    • https://calgaryair.ca/reviews/ → no permissions-policy
    • https://calgaryair.ca/services/ → no permissions-policy
    • https://calgaryair.ca/gas-lines/ → no permissions-policy
    • https://calgaryair.ca/gas-lines-installation/ → no permissions-policy
    • https://calgaryair.ca/gas-lines-repair/ → no permissions-policy
    • https://calgaryair.ca/gas-lines-replacement/ → no permissions-policy
    • https://calgaryair.ca/gas-lines-maintenance/ → no permissions-policy
  • FoundVulnerable JavaScript librariesMedium

    3 libraries with published vulnerabilities: jQuery 3.3.1, jQuery 1.9.1, Bootstrap 4.1.0. Whether they are exploitable depends on how the site uses them, but each has a fixed release.

    • jQuery 3.3.1 in https://calgaryair.ca/wp-content/themes/calgaryair_mytheme/js/jquery-3.3.1.min.…: CVE-2019-11358 (prototype pollution), CVE-2020-11022, CVE-2020-11023 (XSS via HTML passed to DOM methods); fixed in 3.5.0
    • jQuery 1.9.1 in https://calgaryair.ca/wp-content/themes/calgaryair_mytheme/js/bootstrap.min.js: CVE-2015-9251 (XSS via cross-domain AJAX), CVE-2019-11358 (prototype pollution), CVE-2020-11022, CVE-2020-11023 (XSS via HTML passed to DOM methods); fixed in 3.5.0
    • Bootstrap 4.1.0 in https://calgaryair.ca/wp-content/themes/calgaryair_mytheme/js/bootstrap.min.js: CVE-2018-14040, CVE-2018-14041, CVE-2018-14042, CVE-2019-8331 (XSS through data attributes in tooltip, popover, collapse and scrollspy); fixed in 4.3.1
  • NoteThird-party scripts

    Scripts run from 6 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 (80 script tags)
    • unpkg.com (40 script tags)
    • chat.housecallpro.com (40 script tags)
    • www.google.com (40 script tags)
    • img1.wsimg.com (40 script tags)
    • cdn.trustindex.io (3 script tags)
  • NoteSensitive paths in robots.txt

    robots.txt lists 1 path that look private. robots.txt is public and does not restrict access, so it doubles as a map for anyone probing the site; those paths need real access control.

    • Disallow: /wp-admin/
7 checks passed
  • OKHTTPS

    All 282 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.

  • OKCookie flags

    All 1 cookie carry Secure, HttpOnly and SameSite flags.

  • OKMixed content

    No HTTPS page loads a script, stylesheet, font or image over plain HTTP.

  • OKForms over HTTPS

    47 forms found, all on HTTPS pages posting to HTTPS addresses.

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

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 calgaryair.ca

Their neighbours in the SEO rank table, which orders every scanned site by health score.

This report was produced by the DIY SEO Hub Site Spider crawling calgaryair.ca from its pages as published, the way a search engine does. It shows summary figures only.

Own calgaryair.ca?

calgaryair.ca scan 2026-10-01-1152 | DIY SEO Hub