Scanned sites / calgarystories.com / 2026-10-01-0411

calgarystories.com scan from 10/1/2026, 4:11:36 AM

Scan 2026-10-01-0411

Scanned 10/1/2026, 4:11:36 AM, finished 10/1/2026, 6:53:26 AM. Found on page 3 of brave web search results

Site: https://calgarystories.com/

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

84/ 100Good

On October 1, 2026 the Site Spider crawled 132 pages and 956 assets of calgarystories.com, starting from https://calgarystories.com/. It scored 84 out of 100, a good result. 12 of 16 checks found something to fix, led by meta descriptions (121), heavy assets (137), links to other sites (22); 3 checks passed. Most of the points went to meta descriptions (−7.8), heavy assets (−6), links to other sites (−4). 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: Medium3 medium, 3 low and 1 info findings. See the security findings ↓

Pages crawled
132
Assets fetched
956
Status
Completed
Checks with issues
12 of 16
CoverageJob finished, partial coverage

1,088 of 1,132 discovered URLs were fetched, 44 blocked by robots.txt, 326 left out by the 5,000-page and 1,000-asset budget. The job finished, but the crawl did not reach everything it found. HTML only: nothing here ran JavaScript. 300 link destinations on other sites were checked, 647 left unchecked.

  • Title tags7 issues
    7 of 122 pages have title issues. 2 noindex or canonicalized pages excluded.
    −0.6 points
  • Meta descriptions121 issues
    121 of 122 pages have meta description issues. 2 noindex or canonicalized pages excluded.
    −7.8 points
  • Headings8 issues
    8 of 122 pages have heading issues. 2 noindex or canonicalized pages excluded.
    −0.4 points
  • Broken links3 issues
    3 internal links point at 3 broken URLs.
    −0.5 points
  • Links to other sites22 issues
    22 destinations answered with an error, 71 could not be determined (timeouts, rate limits or refusals), 647 were left unchecked by the per-scan cap, of 300 destinations checked.
    −4 points
  • Redirects5 issues
    6 redirecting URLs, 0 of them chained.
    −0.2 points
  • Non-200 responses3 issues
    9 URLs did not return a 2xx response. 8 of them are pages, 3 with an error status; the rest are assets or redirects.
    −0.2 points
  • Rate limitedOK
    The site did not rate limit the crawler.
  • IndexabilityOK
    0 of 122 indexable pages have indexability warnings. 2 pages noindex by design.
  • Image alt textOK
    0 of 1279 image references have no alt attribute. 1021 use an empty alt (decorative), which is fine.
  • Heavy assets137 issues
    137 assets larger than 500 KB among 956 fetched assets.
    −6 points
  • Orphan pages1 issue
    1 page have no internal links pointing at them.
  • Sitemap coverage5 issues
    4 sitemaps listing 118 URLs: 4 crawled pages missing, 0 listed URLs broken or redirecting, 1 reachable only via the sitemap.
    −0.2 points
  • Internal link countsOK
    Internal link counts for 124 pages.
  • Thin content2 issues
    2 of 122 pages have fewer than 200 words. 2 noindex or canonicalized pages excluded.
    −0.1 points
  • Duplicate content3 issues
    1 group of pages with identical HTML.
    −0.2 points

Where this scan sits among all scanned sites

1612 sites, median 80%, average 79%

calgarystories.com scores 84%, higher than 68% of the 1612 scanned sites. See the full ranking.

049980%: 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%: 0 sites42%: 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%: 3 sites56%: 5 sites57%: 5 sites58%: 10 sites59%: 5 sites60%: 9 sites61%: 11 sites62%: 15 sites63%: 15 sites64%: 10 sites65%: 18 sites66%: 18 sites67%: 31 sites68%: 25 sites69%: 22 sites70%: 35 sites71%: 37 sites72%: 47 sites73%: 37 sites74%: 46 sites75%: 52 sites76%: 60 sites77%: 56 sites78%: 74 sites79%: 56 sites80%: 79 sites81%: 98 sites82%: 79 sites83%: 78 sites84%: 71 sites85%: 55 sites86%: 57 sites87%: 52 sites88%: 56 sites89%: 46 sites90%: 31 sites91%: 34 sites92%: 21 sites93%: 10 sites94%: 13 sites95%: 7 sites96%: 6 sites97%: 6 sites98%: 2 sites99%: 2 sites100%: 53 sites84% 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

Your site has several SEO issues needing attention, particularly in broken links, redirects, and meta descriptions. Prioritize fixing these to enhance user experience and search visibility.

  1. 1

    Fix Broken Links

    Why: Broken links lead to poor user experience and can affect SEO rankings.

    How: Update or remove the internal links pointing to broken URLs found during the crawl.

    Checks: broken-links

  2. 2

    Review Redirects

    Why: Unnecessary redirects slow page loading and dilute link equity.

    How: Check and minimize redirects by ensuring links point directly to final destinations.

    Checks: redirects

  3. 3

    Resolve Non-200 Responses

    Why: URLs not returning a 2xx response can lead to a negative user experience.

    How: Fix or remove URLs that return errors or unexpected statuses.

    Checks: status-codes

  4. 4

    Add Missing Meta Descriptions

    Why: Meta descriptions influence click-through rates from search results.

    How: Create engaging meta descriptions for the 121 pages that currently lack them.

    Checks: meta-descriptions

  5. 5

    Add H1 Tags

    Why: H1 tags are crucial for SEO and content hierarchy.

    How: Add an H1 tag to the 8 pages missing it to improve SEO.

    Checks: headings

  6. 6

    Optimize Heavy Assets

    Why: Large asset sizes can significantly slow your website.

    How: Compress identified heavy assets and replace them on the respective pages.

    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 crawl

The website calgarystories.com lacks several important security headers, which could lead to various vulnerabilities, including man-in-the-middle attacks and the risk of clickjacking. Implementing the suggested headers will significantly enhance security.

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

    Missing HTTP Strict Transport Security (HSTS)Medium

    Why it matters: Without HSTS, attackers can intercept the first request if a user types the URL without HTTPS.

    Fix: Add the header: Strict-Transport-Security: max-age=63072000; includeSubDomains; preload

    Evidence: HTTP Strict Transport Security

  2. 2

    Missing Content Security Policy (CSP)Medium

    Why it matters: A lack of CSP allows scripts and resources to be loaded from any source, increasing vulnerability to XSS attacks.

    Fix: Implement a CSP header: Content-Security-Policy: default-src 'self'; script-src 'self';

    Evidence: Content Security Policy

  3. 3

    Missing X-Frame-Options HeaderMedium

    Why it matters: Without this header, pages can be embedded in frames, risking clickjacking.

    Fix: Add the header: X-Frame-Options: DENY

    Evidence: Clickjacking protection

  4. 4

    Missing X-Content-Type-Options HeaderLow

    Why it matters: This header prevents browsers from interpreting files as a different MIME type than declared, mitigating potential attacks.

    Fix: Add the header: X-Content-Type-Options: nosniff

    Evidence: MIME sniffing protection

  5. 5

    Missing Referrer-Policy HeaderLow

    Why it matters: Not specifying a referrer policy can lead to sensitive URL information being sent to external sites.

    Fix: Add the header: Referrer-Policy: no-referrer

    Evidence: Referrer policy

  6. 6

    Server Banner DisclosureLow

    Why it matters: Disclosing server versions enables attackers to exploit known vulnerabilities.

    Fix: Configure the server to suppress version numbers in HTTP headers.

    Evidence: Software version disclosure

  7. 7

    Missing Permissions-Policy HeaderInfo

    Why it matters: A permissions policy can restrict browser features and mitigate risks from injected scripts.

    Fix: Add the header: Permissions-Policy: fullscreen=(), geolocation=()

    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://calgarystories.com/ → no strict-transport-security
    • https://calgarystories.com/category/best-of-calgary/ → no strict-transport-security
    • https://calgarystories.com/about-us/brand-toolkit/ → no strict-transport-security
    • https://calgarystories.com/things-to-do-in-calgary/ → no strict-transport-security
    • https://calgarystories.com/marketing/ → no strict-transport-security
    • https://calgarystories.com/best-vintage-thrift-stores-in-calgary/ → no strict-transport-security
    • https://calgarystories.com/best-seafood-calgary/ → no strict-transport-security
    • https://calgarystories.com/best-live-music-venues-in-calgary/ → no strict-transport-security
    • https://calgarystories.com/best-pizza-calgary/ → no strict-transport-security
    • https://calgarystories.com/best-hotels-in-calgary/ → no strict-transport-security
    • https://calgarystories.com/best-party-rentals-calgary/ → no strict-transport-security
    • https://calgarystories.com/best-home-inspectors-in-calgary/ → no strict-transport-security
  • FoundContent Security PolicyMedium

    None of the 124 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://calgarystories.com/ → no content-security-policy
    • https://calgarystories.com/category/best-of-calgary/ → no content-security-policy
    • https://calgarystories.com/about-us/brand-toolkit/ → no content-security-policy
    • https://calgarystories.com/things-to-do-in-calgary/ → no content-security-policy
    • https://calgarystories.com/marketing/ → no content-security-policy
    • https://calgarystories.com/best-vintage-thrift-stores-in-calgary/ → no content-security-policy
    • https://calgarystories.com/best-seafood-calgary/ → no content-security-policy
    • https://calgarystories.com/best-live-music-venues-in-calgary/ → no content-security-policy
    • https://calgarystories.com/best-pizza-calgary/ → no content-security-policy
    • https://calgarystories.com/best-hotels-in-calgary/ → no content-security-policy
    • https://calgarystories.com/best-party-rentals-calgary/ → no content-security-policy
    • https://calgarystories.com/best-home-inspectors-in-calgary/ → 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://calgarystories.com/ → no x-frame-options
    • https://calgarystories.com/category/best-of-calgary/ → no x-frame-options
    • https://calgarystories.com/about-us/brand-toolkit/ → no x-frame-options
    • https://calgarystories.com/things-to-do-in-calgary/ → no x-frame-options
    • https://calgarystories.com/marketing/ → no x-frame-options
    • https://calgarystories.com/best-vintage-thrift-stores-in-calgary/ → no x-frame-options
    • https://calgarystories.com/best-seafood-calgary/ → no x-frame-options
    • https://calgarystories.com/best-live-music-venues-in-calgary/ → no x-frame-options
    • https://calgarystories.com/best-pizza-calgary/ → no x-frame-options
    • https://calgarystories.com/best-hotels-in-calgary/ → no x-frame-options
    • https://calgarystories.com/best-party-rentals-calgary/ → no x-frame-options
    • https://calgarystories.com/best-home-inspectors-in-calgary/ → 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://calgarystories.com/ → no x-content-type-options
    • https://calgarystories.com/category/best-of-calgary/ → no x-content-type-options
    • https://calgarystories.com/about-us/brand-toolkit/ → no x-content-type-options
    • https://calgarystories.com/things-to-do-in-calgary/ → no x-content-type-options
    • https://calgarystories.com/marketing/ → no x-content-type-options
    • https://calgarystories.com/best-vintage-thrift-stores-in-calgary/ → no x-content-type-options
    • https://calgarystories.com/best-seafood-calgary/ → no x-content-type-options
    • https://calgarystories.com/best-live-music-venues-in-calgary/ → no x-content-type-options
    • https://calgarystories.com/best-pizza-calgary/ → no x-content-type-options
    • https://calgarystories.com/best-hotels-in-calgary/ → no x-content-type-options
    • https://calgarystories.com/best-party-rentals-calgary/ → no x-content-type-options
    • https://calgarystories.com/best-home-inspectors-in-calgary/ → 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://calgarystories.com/ → no referrer-policy
    • https://calgarystories.com/category/best-of-calgary/ → no referrer-policy
    • https://calgarystories.com/about-us/brand-toolkit/ → no referrer-policy
    • https://calgarystories.com/things-to-do-in-calgary/ → no referrer-policy
    • https://calgarystories.com/marketing/ → no referrer-policy
    • https://calgarystories.com/best-vintage-thrift-stores-in-calgary/ → no referrer-policy
    • https://calgarystories.com/best-seafood-calgary/ → no referrer-policy
    • https://calgarystories.com/best-live-music-venues-in-calgary/ → no referrer-policy
    • https://calgarystories.com/best-pizza-calgary/ → no referrer-policy
    • https://calgarystories.com/best-hotels-in-calgary/ → no referrer-policy
    • https://calgarystories.com/best-party-rentals-calgary/ → no referrer-policy
    • https://calgarystories.com/best-home-inspectors-in-calgary/ → 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://calgarystories.com/ → no permissions-policy
    • https://calgarystories.com/category/best-of-calgary/ → no permissions-policy
    • https://calgarystories.com/about-us/brand-toolkit/ → no permissions-policy
    • https://calgarystories.com/things-to-do-in-calgary/ → no permissions-policy
    • https://calgarystories.com/marketing/ → no permissions-policy
    • https://calgarystories.com/best-vintage-thrift-stores-in-calgary/ → no permissions-policy
    • https://calgarystories.com/best-seafood-calgary/ → no permissions-policy
    • https://calgarystories.com/best-live-music-venues-in-calgary/ → no permissions-policy
    • https://calgarystories.com/best-pizza-calgary/ → no permissions-policy
    • https://calgarystories.com/best-hotels-in-calgary/ → no permissions-policy
    • https://calgarystories.com/best-party-rentals-calgary/ → no permissions-policy
    • https://calgarystories.com/best-home-inspectors-in-calgary/ → no permissions-policy
  • FoundSoftware version disclosureLow

    Responses reveal the exact server or framework version, which lets an attacker look up known vulnerabilities for it without guessing.

    • server: Apache (932 responses)
    • server: nginx/1.29.8 (156 responses)
  • NoteThird-party scripts

    Scripts run from 1 other domain 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 (17 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/
6 checks passed, 1 not applicable
  • OKHTTPS

    All 124 crawled pages were served over HTTPS.

  • OKMixed content

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

  • OKForms over HTTPS

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

  • OKVulnerable JavaScript libraries

    2 library versions 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.

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

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 calgarystories.com from its pages as published, the way a search engine does. It shows summary figures only.

Own calgarystories.com?

  • 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 calgarystories.com. Removal needs no account and no proof of purchase.
calgarystories.com scan 2026-10-01-0411 | DIY SEO Hub