Scanned sites / lethbridgemassage.com

SEO report for lethbridgemassage.com DR 6

The latest Site Spider scan of lethbridgemassage.com, with 1 scan on record. Each scan is at its own address, for example /domain/lethbridgemassage-com/2026-11-02-0857.

DR is Ahrefs Domain Rating (0-100, backlink strength), used under its Domain Rating License.

Latest scan

Scanned 2026-11-02 08:57:32 UTC, finished 2026-11-02 09:36:57 UTC. Found on page 1 of brave web search results

Site: https://lethbridgemassage.com/

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

75/ 100Good

On November 2, 2026 the Site Spider crawled 34 pages and 253 assets of lethbridgemassage.com, starting from https://lethbridgemassage.com/. It scored 75 out of 100, a good result. 11 of 33 checks found something to fix, led by title tags (21), meta descriptions (24), headings (30); 12 checks passed. Most of the points went to title tags (−6.6), meta descriptions (−6), headings (−5.6). 10 checks found something the score does not count, listed as noted. 4 checks were not run because the crawl fetched nothing for them. 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 1 info findings. See the security findings ↓

Pages crawled
34
Assets fetched
253
Status
Completed
Checks with issues
11 of 33
CoverageComplete crawl

287 of 298 discovered URLs were fetched, 11 blocked by robots.txt. The crawl reached everything it found. HTML only: nothing here ran JavaScript. 15 link destinations on other sites were checked.

  • Title tags21 issues
    21 of 30 pages have title issues. 2 noindex or canonicalized pages excluded.
    −6.6 points
  • Meta descriptions24 issues
    24 of 30 pages have meta description issues. 2 noindex or canonicalized pages excluded.
    −6 points
  • Headings30 issues
    30 of 30 pages have heading issues. 2 noindex or canonicalized pages excluded.
    −5.6 points
  • Broken links1 issue
    32 internal links point at 1 broken URL.
    −0.6 points
  • Links to other sites1 issue
    1 destination answered with an error, 5 could not be determined (timeouts, rate limits or refusals), of 15 destinations checked.
    −0.4 points
  • Redirects1 issue
    2 redirecting URLs, 0 of them chained.
    −0.1 points
  • Non-200 responses1 issue
    5 URLs did not return a 2xx response. 2 of them are pages, 1 with an error status; the rest are assets or redirects.
    −0.3 points
  • Rate limitedOK
    The site did not rate limit the crawler.
  • Indexability1 issue
    1 of 32 indexable pages have indexability warnings.
    −0.3 points
  • Image alt text8 issues
    8 of 212 image references have no alt attribute. 26 use an empty alt (decorative), which is fine.
    −0.2 points
  • Heavy assets7 issues
    7 assets larger than 500 KB among 253 fetched assets.
    −4.2 points
  • Orphan pagesOK
    0 pages have no internal links pointing at them.
  • Sitemap coverage2 issues
    5 sitemaps listing 28 URLs: 2 crawled pages missing, 0 listed URLs broken or redirecting, 0 reachable only via the sitemap.
    −0.4 points
  • Internal link countsOK
    Internal link counts for 32 pages; none is a dead end or buried.
  • Thin contentOK
    0 of 30 pages have fewer than 200 words. 2 noindex or canonicalized pages excluded.
  • Duplicate contentOK
    0 groups of pages with identical HTML.
  • URL format5 noted
    5 of 34 page URLs are harder to read, share or cache than they need to be.
  • Canonicals2 noted
    2 of 32 pages have a canonical worth checking.
  • Robots directives32 noted
    32 pages carry a robots directive; 0 carry none.
  • Anchor text18 noted
    18 destinations are linked without useful anchor text, or with nofollow.
  • Title and heading structure30 noted
    30 of 30 pages could use the title, heading and snippet space better. 2 noindex or canonicalized pages excluded.
  • Image weight and alt length36 noted
    17 images over 100 KB; 19 with alt text over 100 characters.
  • Response anomalies1 noted
    1 URL answered in a way worth looking at.
  • HTML and head validationOK
    All 32 pages keep their head tags in <head>, once each, under Googlebot's 2 MB.
  • hreflang4 noted
    2 of 29 pages with hreflang have problems: 4 findings.
  • Structured dataOK
    32 of 30 indexable pages carry structured data: BreadcrumbList (31), ListItem (31), ImageObject (30), WebSite (13), Organization (13). 0 pages with errors a rich result would fail on.
  • Near duplicatesOK
    No near duplicates among 30 pages with enough text to compare.
  • Soft 404sOK
    None of 32 pages answering 200 reads like an error page.
  • AccessibilityNot checked
    Not checked: the accessibility audit runs in the browser. Tick "Include JavaScript rendering checks" when you request a scan to run it.
  • Link positions2 noted
    2 of 30 linked pages are linked only from the template, never from another page's content.
  • PaginationOK
    3 pages in pagination sequences; 0 with problems.
  • Headers and cookiesOK
    0 cookies set by the site; 12 response headers recorded across 287 URLs.
  • Orphans in searchNot checked
    Not checked: import a Search Console Pages export on the scan page to find pages Google shows that the site does not link to.
  • Link ScoreOK
    Link Score (internal PageRank, 0-100) for 32 pages; 0 hold almost none (10 or less).
  • JavaScript renderingNot checked
    Not checked: this scan did not render pages. Tick "Include JavaScript rendering checks" when you request a scan to compare the served HTML with what a browser builds.
  • PageSpeed InsightsNot checked
    Not checked yet: PageSpeed Insights runs on the top pages once the crawl has finished.
  • Spelling12 noted
    12 words an English dictionary does not know, on 10 pages. Product names and jargon will appear here too.

Where this site sits among all scanned sites

2598 sites, median 80%, average 78%

lethbridgemassage.com scores 75%, higher than 30% of the 2598 scanned sites. See the full ranking.

0601190%: 0 sites1%: 0 sites2%: 0 sites3%: 0 sites4%: 0 sites5%: 0 sites6%: 0 sites7%: 0 sites8%: 0 sites9%: 1 site10%: 0 sites11%: 0 sites12%: 0 sites13%: 0 sites14%: 1 site15%: 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%: 1 site38%: 3 sites39%: 2 sites40%: 3 sites41%: 1 site42%: 2 sites43%: 3 sites44%: 1 site45%: 5 sites46%: 5 sites47%: 5 sites48%: 5 sites49%: 7 sites50%: 6 sites51%: 6 sites52%: 8 sites53%: 8 sites54%: 10 sites55%: 10 sites56%: 8 sites57%: 12 sites58%: 18 sites59%: 9 sites60%: 15 sites61%: 13 sites62%: 20 sites63%: 29 sites64%: 21 sites65%: 31 sites66%: 40 sites67%: 39 sites68%: 37 sites69%: 48 sites70%: 48 sites71%: 74 sites72%: 73 sites73%: 77 sites74%: 75 sites75%: 85 sites76%: 94 sites77%: 106 sites78%: 116 sites79%: 106 sites80%: 119 sites81%: 113 sites82%: 117 sites83%: 117 sites84%: 118 sites85%: 97 sites86%: 87 sites87%: 84 sites88%: 68 sites89%: 71 sites90%: 46 sites91%: 57 sites92%: 40 sites93%: 28 sites94%: 21 sites95%: 14 sites96%: 16 sites97%: 15 sites98%: 7 sites99%: 2 sites100%: 69 sites75% 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

The site has several key issues that need attention, including broken links, redirect handling, missing meta descriptions, heading structure, and heavy assets. Addressing these will improve user experience and SEO performance.

  1. 1

    Fix Broken Links

    Why: 32 links point to a broken URL, impacting user experience and SEO.

    How: Identify and update the broken links to direct users to valid pages.

    Checks: broken-links

  2. 2

    Consolidate Redirects

    Why: 2 redirects could cause confusion and slow down page loading.

    How: Remove unnecessary redirects, updating links to point directly to final URLs instead.

    Checks: redirects

  3. 5

    Optimize Heavy Assets

    Why: Large files slow down the site, affecting user experience.

    How: Compress and optimize large assets, specifically the identified heavy images and stylesheets.

    Evidence: 268 KB of script, loaded by 32 pages, so every visitor to any of them downloads it.

    32 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 crawl

The website lacks critical security headers and has mixed content issues. This exposes users to interception risks and potential clickjacking. Additionally, a Google API key is exposed, which could lead to misuse. Implementing these fixes will enhance site security.

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

    Missing HTTP Strict Transport Security (HSTS)Medium

    Why it matters: Without HSTS, visitors can be intercepted if they enter the site without HTTPS.

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

    Evidence: HTTP Strict Transport Security

  2. 2

    Lack of Content Security Policy (CSP)Medium

    Why it matters: No CSP means scripts can be loaded from any source, increasing XSS risk.

    Fix: Add the header: Content-Security-Policy: default-src 'self'

    Evidence: Content Security Policy

  3. 3

    Missing X-Frame-Options HeaderMedium

    Why it matters: Without this, the pages can be embedded in frames, leading to clickjacking.

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

    Evidence: Clickjacking protection

  4. 4

    Exposed Google API KeyMedium

    Why it matters: A public API key can lead to unauthorized use and potential charges.

    Fix: Restrict the API key in the Google Cloud console by HTTP referrer.

    Evidence: Keys and secrets in page code

  5. 5

    Missing X-Content-Type-Options HeaderLow

    Why it matters: This can allow browsers to misinterpret content types, risking script execution.

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

    Evidence: MIME sniffing protection

  6. 6

    Missing Referrer PolicyLow

    Why it matters: No referrer policy means full URLs are shared with other sites, risking privacy.

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

    Evidence: Referrer policy

  7. 7

    Mixed Content IssuesLow

    Why it matters: Resources loaded over HTTP can degrade the security of the HTTPS page.

    Fix: Change all HTTP resource URLs to HTTPS.

    Evidence: Mixed content

  8. 8

    Missing Permissions PolicyInfo

    Why it matters: Lacking a permissions policy allows injected scripts to access browser features.

    Fix: Add the header: Permissions-Policy: geolocation=(), 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://lethbridgemassage.com/ → no strict-transport-security
    • https://lethbridgemassage.com/services/ → no strict-transport-security
    • https://lethbridgemassage.com/craniosacral-therapy/ → no strict-transport-security
    • https://lethbridgemassage.com/hot-stone/ → no strict-transport-security
    • https://lethbridgemassage.com/myofascial-cupping/ → no strict-transport-security
    • https://lethbridgemassage.com/deep-tissue/ → no strict-transport-security
    • https://lethbridgemassage.com/therapeutic-massage-2/ → no strict-transport-security
    • https://lethbridgemassage.com/relaxation-massage/ → no strict-transport-security
    • https://lethbridgemassage.com/harmony-landing/ → no strict-transport-security
    • https://lethbridgemassage.com/blog/ → no strict-transport-security
    • https://lethbridgemassage.com/2026/10/28/why-does-my-jaw-click-when-im-stressed-the-link-between-tmj-neck-pain-and-cran… → no strict-transport-security
    • https://lethbridgemassage.com/2026/10/21/the-chinooks-sinuses-and-sciatica-the-hidden-link-between-lethbridge-barometri… → no strict-transport-security
  • FoundContent Security PolicyMedium

    None of the 32 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://lethbridgemassage.com/ → no content-security-policy
    • https://lethbridgemassage.com/services/ → no content-security-policy
    • https://lethbridgemassage.com/craniosacral-therapy/ → no content-security-policy
    • https://lethbridgemassage.com/hot-stone/ → no content-security-policy
    • https://lethbridgemassage.com/myofascial-cupping/ → no content-security-policy
    • https://lethbridgemassage.com/deep-tissue/ → no content-security-policy
    • https://lethbridgemassage.com/therapeutic-massage-2/ → no content-security-policy
    • https://lethbridgemassage.com/relaxation-massage/ → no content-security-policy
    • https://lethbridgemassage.com/harmony-landing/ → no content-security-policy
    • https://lethbridgemassage.com/blog/ → no content-security-policy
    • https://lethbridgemassage.com/2026/10/28/why-does-my-jaw-click-when-im-stressed-the-link-between-tmj-neck-pain-and-cran… → no content-security-policy
    • https://lethbridgemassage.com/2026/10/21/the-chinooks-sinuses-and-sciatica-the-hidden-link-between-lethbridge-barometri… → 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://lethbridgemassage.com/ → no x-frame-options
    • https://lethbridgemassage.com/services/ → no x-frame-options
    • https://lethbridgemassage.com/craniosacral-therapy/ → no x-frame-options
    • https://lethbridgemassage.com/hot-stone/ → no x-frame-options
    • https://lethbridgemassage.com/myofascial-cupping/ → no x-frame-options
    • https://lethbridgemassage.com/deep-tissue/ → no x-frame-options
    • https://lethbridgemassage.com/therapeutic-massage-2/ → no x-frame-options
    • https://lethbridgemassage.com/relaxation-massage/ → no x-frame-options
    • https://lethbridgemassage.com/harmony-landing/ → no x-frame-options
    • https://lethbridgemassage.com/blog/ → no x-frame-options
    • https://lethbridgemassage.com/2026/10/28/why-does-my-jaw-click-when-im-stressed-the-link-between-tmj-neck-pain-and-cran… → no x-frame-options
    • https://lethbridgemassage.com/2026/10/21/the-chinooks-sinuses-and-sciatica-the-hidden-link-between-lethbridge-barometri… → 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://lethbridgemassage.com/ → no x-content-type-options
    • https://lethbridgemassage.com/services/ → no x-content-type-options
    • https://lethbridgemassage.com/craniosacral-therapy/ → no x-content-type-options
    • https://lethbridgemassage.com/hot-stone/ → no x-content-type-options
    • https://lethbridgemassage.com/myofascial-cupping/ → no x-content-type-options
    • https://lethbridgemassage.com/deep-tissue/ → no x-content-type-options
    • https://lethbridgemassage.com/therapeutic-massage-2/ → no x-content-type-options
    • https://lethbridgemassage.com/relaxation-massage/ → no x-content-type-options
    • https://lethbridgemassage.com/harmony-landing/ → no x-content-type-options
    • https://lethbridgemassage.com/blog/ → no x-content-type-options
    • https://lethbridgemassage.com/2026/10/28/why-does-my-jaw-click-when-im-stressed-the-link-between-tmj-neck-pain-and-cran… → no x-content-type-options
    • https://lethbridgemassage.com/2026/10/21/the-chinooks-sinuses-and-sciatica-the-hidden-link-between-lethbridge-barometri… → 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://lethbridgemassage.com/ → no referrer-policy
    • https://lethbridgemassage.com/services/ → no referrer-policy
    • https://lethbridgemassage.com/craniosacral-therapy/ → no referrer-policy
    • https://lethbridgemassage.com/hot-stone/ → no referrer-policy
    • https://lethbridgemassage.com/myofascial-cupping/ → no referrer-policy
    • https://lethbridgemassage.com/deep-tissue/ → no referrer-policy
    • https://lethbridgemassage.com/therapeutic-massage-2/ → no referrer-policy
    • https://lethbridgemassage.com/relaxation-massage/ → no referrer-policy
    • https://lethbridgemassage.com/harmony-landing/ → no referrer-policy
    • https://lethbridgemassage.com/blog/ → no referrer-policy
    • https://lethbridgemassage.com/2026/10/28/why-does-my-jaw-click-when-im-stressed-the-link-between-tmj-neck-pain-and-cran… → no referrer-policy
    • https://lethbridgemassage.com/2026/10/21/the-chinooks-sinuses-and-sciatica-the-hidden-link-between-lethbridge-barometri… → 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://lethbridgemassage.com/ → no permissions-policy
    • https://lethbridgemassage.com/services/ → no permissions-policy
    • https://lethbridgemassage.com/craniosacral-therapy/ → no permissions-policy
    • https://lethbridgemassage.com/hot-stone/ → no permissions-policy
    • https://lethbridgemassage.com/myofascial-cupping/ → no permissions-policy
    • https://lethbridgemassage.com/deep-tissue/ → no permissions-policy
    • https://lethbridgemassage.com/therapeutic-massage-2/ → no permissions-policy
    • https://lethbridgemassage.com/relaxation-massage/ → no permissions-policy
    • https://lethbridgemassage.com/harmony-landing/ → no permissions-policy
    • https://lethbridgemassage.com/blog/ → no permissions-policy
    • https://lethbridgemassage.com/2026/10/28/why-does-my-jaw-click-when-im-stressed-the-link-between-tmj-neck-pain-and-cran… → no permissions-policy
    • https://lethbridgemassage.com/2026/10/21/the-chinooks-sinuses-and-sciatica-the-hidden-link-between-lethbridge-barometri… → no permissions-policy
  • FoundMixed contentLow

    64 resources on HTTPS pages are loaded over plain HTTP.

    • https://lethbridgemassage.com/ loads image http://lethbridgemassage.com/wp-content/uploads/2025/02/Screen-Shot-2024-12-17-at-9.20.png
    • https://lethbridgemassage.com/services/ loads image http://lethbridgemassage.com/wp-content/uploads/2025/02/Screen-Shot-2024-12-17-at-9.20.png
    • https://lethbridgemassage.com/craniosacral-therapy/ loads image http://lethbridgemassage.com/wp-content/uploads/2025/02/Screen-Shot-2024-12-17-at-9.20.png
    • https://lethbridgemassage.com/hot-stone/ loads image http://lethbridgemassage.com/wp-content/uploads/2025/02/Screen-Shot-2024-12-17-at-9.20.png
    • https://lethbridgemassage.com/myofascial-cupping/ loads image http://lethbridgemassage.com/wp-content/uploads/2025/02/Screen-Shot-2024-12-17-at-9.20.png
    • https://lethbridgemassage.com/deep-tissue/ loads image http://lethbridgemassage.com/wp-content/uploads/2025/02/Screen-Shot-2024-12-17-at-9.20.png
    • https://lethbridgemassage.com/therapeutic-massage-2/ loads image http://lethbridgemassage.com/wp-content/uploads/2025/02/Screen-Shot-2024-12-17-at-9.20.png
    • https://lethbridgemassage.com/relaxation-massage/ loads image http://lethbridgemassage.com/wp-content/uploads/2025/02/Screen-Shot-2024-12-17-at-9.20.png
    • https://lethbridgemassage.com/harmony-landing/ loads image http://lethbridgemassage.com/wp-content/uploads/2025/02/Screen-Shot-2024-12-17-at-9.20.png
    • https://lethbridgemassage.com/blog/ loads image http://lethbridgemassage.com/wp-content/uploads/2025/02/Screen-Shot-2024-12-17-at-9.20.png
    • https://lethbridgemassage.com/2026/10/28/why-does-my-jaw-click-when-i… loads image http://lethbridgemassage.com/wp-content/uploads/2025/02/Screen-Shot-2024-12-17-at-9.20.png
    • https://lethbridgemassage.com/2026/10/21/the-chinooks-sinuses-and-sci… loads image http://lethbridgemassage.com/wp-content/uploads/2025/02/Screen-Shot-2024-12-17-at-9.20.png
  • FoundKeys and secrets in page codeMedium

    1 credential-like value found in code served to every visitor: Google API key.

    • Google API key AIzaSy…Cg (39 chars) in https://lethbridgemassage.com/: browser keys are expected in pages, but must be restricted by HTTP referrer and API in the Google Cloud console
  • NoteThird-party scripts

    Scripts run from 3 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 (32 script tags)
    • maps.googleapis.com (1 script tag)
    • cdn.trustindex.io (1 script tag)
  • NoteSensitive paths in robots.txt

    robots.txt lists 2 paths 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/
    • Disallow: /wp-includes/
5 checks passed, 1 not applicable
  • OKHTTPS

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

  • OKForms over HTTPS

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

  • OKVulnerable JavaScript libraries

    1 library version recognised, none with known vulnerabilities.

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

Earlier scans of lethbridgemassage.com

No other scans of this site yet.

Sites scoring near lethbridgemassage.com

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

DR is Ahrefs Domain Rating (0-100, backlink strength), used under its Domain Rating License.

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

Own lethbridgemassage.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 lethbridgemassage.com. Removal needs no account and no proof of purchase.