Scanned sites / strands.ca

SEO report for strands.ca

The latest Site Spider scan of strands.ca, with 1 scan on record. Each scan is at its own address, for example /domain/strands-ca/2026-10-01-0332.

Latest scan

Scanned 10/1/2026, 3:32:26 AM, finished 10/1/2026, 5:37:16 AM. Found on page 5 of brave web search results

Site: https://strands.ca/

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

76/ 100Good

On October 1, 2026 the Site Spider crawled 82 pages and 515 assets of strands.ca, starting from https://strands.ca/. It scored 76 out of 100, a good result. 13 of 16 checks found something to fix, led by meta descriptions (58), heavy assets (8), headings (54); 2 checks passed. Most of the points went to meta descriptions (−5.9), heavy assets (−4.8), headings (−4.2). 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: Medium5 medium and 3 low findings. See the security findings ↓

Pages crawled
82
Assets fetched
515
Status
Completed
Checks with issues
13 of 16
CoverageComplete crawl

597 of 597 discovered URLs were fetched. The crawl reached everything it found. HTML only: nothing here ran JavaScript. 24 link destinations on other sites were checked.

  • Title tags12 issues
    12 of 58 pages have title issues. 20 noindex or canonicalized pages excluded.
    −1.5 points
  • Meta descriptions58 issues
    58 of 58 pages have meta description issues. 20 noindex or canonicalized pages excluded.
    −5.9 points
  • Headings54 issues
    54 of 58 pages have heading issues. 20 noindex or canonicalized pages excluded.
    −4.2 points
  • Broken links1 issue
    1 internal link point at 1 broken URL.
    −0.3 points
  • Links to other sites3 issues
    3 destinations answered with an error, 4 could not be determined (timeouts, rate limits or refusals), of 24 destinations checked.
    −1.2 points
  • Redirects3 issues
    55 redirecting URLs, 1 of them chained.
    −0.2 points
  • Non-200 responses1 issue
    62 URLs did not return a 2xx response. 4 of them are pages, 1 with an error status; the rest are assets or redirects.
    −0.1 points
  • Rate limitedOK
    The site did not rate limit the crawler.
  • Indexability2 issues
    2 of 59 indexable pages have indexability warnings. 19 pages noindex by design. 2 noindex pages are listed in the sitemap, which asks search engines both to visit and to ignore them.
    −0.3 points
  • Image alt text3 issues
    3 of 705 image references have no alt attribute. 122 use an empty alt (decorative), which is fine.
  • Heavy assets8 issues
    8 assets larger than 500 KB among 515 fetched assets. 1 document over that size is listed but not counted: downloads are not page weight.
    −4.8 points
  • Orphan pages25 issues
    25 pages have no internal links pointing at them.
    −1.3 points
  • Sitemap coverage26 issues
    11 sitemaps listing 60 URLs: 1 crawled page missing, 0 listed URLs broken or redirecting, 23 reachable only via the sitemap.
    −2 points
  • Internal link countsOK
    Internal link counts for 78 pages.
  • Thin content35 issues
    35 of 58 pages have fewer than 200 words. 20 noindex or canonicalized pages excluded.
    −3.6 points
  • Duplicate contentOK
    0 groups of pages with identical HTML.

Where this site sits among all scanned sites

1746 sites, median 80%, average 79%

strands.ca scores 76%, higher than 32% of the 1746 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%: 1 site40%: 2 sites41%: 1 site42%: 0 sites43%: 1 site44%: 0 sites45%: 3 sites46%: 2 sites47%: 3 sites48%: 2 sites49%: 6 sites50%: 4 sites51%: 5 sites52%: 7 sites53%: 6 sites54%: 7 sites55%: 4 sites56%: 6 sites57%: 6 sites58%: 11 sites59%: 6 sites60%: 9 sites61%: 11 sites62%: 15 sites63%: 16 sites64%: 12 sites65%: 20 sites66%: 19 sites67%: 33 sites68%: 27 sites69%: 25 sites70%: 39 sites71%: 37 sites72%: 49 sites73%: 49 sites74%: 48 sites75%: 55 sites76%: 71 sites77%: 61 sites78%: 82 sites79%: 60 sites80%: 85 sites81%: 102 sites82%: 82 sites83%: 81 sites84%: 76 sites85%: 59 sites86%: 64 sites87%: 55 sites88%: 60 sites89%: 53 sites90%: 32 sites91%: 35 sites92%: 24 sites93%: 14 sites94%: 12 sites95%: 9 sites96%: 7 sites97%: 8 sites98%: 2 sites99%: 2 sites100%: 54 sites76% 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's health is decent, but there are critical fixes needed for SEO performance. Implement recommendations for broken links, redirects, title tags, meta descriptions, headings, and thin content.

  1. 1

    Fix Broken Links

    Why: To improve user experience and search engine crawling.

    How: Update or remove the broken link at https://strands.ca/product-list/full-width/ pointing to the non-existing URL.

    Checks: broken-links

  2. 2

    Resolve Redirect Issues

    Why: Reducing unnecessary redirects improves site speed and crawl efficiency.

    How: Eliminate the chain redirect for https://strands.ca/2021/04/why-choose-strands-artistic-hair/ and ensure it redirects directly to the final URL.

    Checks: redirects

  3. 3

    Update Title Tags

    Why: Unique title tags enhance relevance and click-through rates in search results.

    How: Revise title tags to ensure all 12 pages have unique, descriptive titles.

    Checks: titles

  4. 4

    Create Meta Descriptions

    Why: Meta descriptions assist in improving click-through rates from search engines.

    How: Write unique meta descriptions for all pages lacking them, particularly the 24 completely missing ones.

    Checks: meta-descriptions

  5. 5

    Add H1 Headings

    Why: H1 tags structure content and signal importance to search engines.

    How: Add a descriptive H1 heading to the 54 pages missing them.

    Checks: headings

  6. 6

    Enhance Thin Content

    Why: Improving content depth signals quality to search engines.

    How: Expand on the 35 pages with fewer than 200 words to provide more valuable information.

    Checks: thin-content

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 strands.ca has several security issues that need immediate attention. Key problems include the absence of HTTP Strict Transport Security (HSTS) and proper Cookie flags, as well as mixed content being loaded over HTTP, potentially exposing users to attacks. It's crucial to address these to enhance the site's security.

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

    Missing HTTP Strict Transport Security (HSTS)Medium

    Why it matters: Lack of HSTS allows interception of user requests when accessing the site via HTTP.

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

    Evidence: HTTP Strict Transport Security

  2. 2

    Missing Clickjacking ProtectionMedium

    Why it matters: Without X-Frame-Options, the site can be embedded in malicious frames, risking user actions.

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

    Evidence: Clickjacking protection

  3. 3

    Cookies Lack Protective FlagsMedium

    Why it matters: Cookies without Secure, HttpOnly, and SameSite flags can be accessed by malicious scripts.

    Fix: Set Cookie headers as follows: Set-Cookie: PHPSESSID=your_value; Secure; HttpOnly; SameSite=Strict. Apply similar changes to 'wordpress_test_cookie'.

    Evidence: Cookie flags

  4. 4

    Mixed Content IssuesMedium

    Why it matters: Loading resources over HTTP can lead to content tampering and blocks by browsers.

    Fix: Ensure all resources are loaded over HTTPS instead of HTTP.

    Evidence: Mixed content

  5. 5

    Vulnerable JavaScript LibrariesMedium

    Why it matters: Using jQuery 2.0.1 exposes the site to known vulnerabilities.

    Fix: Upgrade jQuery to at least version 3.5.0.

    Evidence: Vulnerable JavaScript libraries

  6. 6

    Missing MIME Sniffing ProtectionLow

    Why it matters: Without X-Content-Type-Options, browsers might incorrectly interpret files' content types.

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

    Evidence: MIME sniffing protection

  7. 7

    Missing Referrer PolicyLow

    Why it matters: The absence of a referrer policy can leak sensitive URL information when users navigate away.

    Fix: Add the header: Referrer-Policy: strict-origin-when-cross-origin

    Evidence: Referrer policy

  8. 8

    Server Version DisclosureLow

    Why it matters: Revealing server version helps attackers target known vulnerabilities.

    Fix: Remove or modify the following headers: Server: and X-Powered-By:

    Evidence: Software version disclosure

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://strands.ca/ → no strict-transport-security
    • https://strands.ca/pricing-list/ → no strict-transport-security
    • https://strands.ca/products-2/ → no strict-transport-security
    • https://strands.ca/hairstyle-home/ → no strict-transport-security
    • https://strands.ca/hair-salon/ → no strict-transport-security
    • https://strands.ca/about-us/ → no strict-transport-security
    • https://strands.ca/parallax-showcase/ → no strict-transport-security
    • https://strands.ca/portfolio-gallery/ → no strict-transport-security
    • https://strands.ca/instagram/ → no strict-transport-security
    • https://strands.ca/contact-us/ → no strict-transport-security
    • https://strands.ca/blog/ → no strict-transport-security
    • https://strands.ca/2022/02/why-choose-strands-artistic-hair/ → no strict-transport-security
  • FoundClickjacking protectionMedium

    8 of 78 HTML pages send 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://strands.ca/ → no x-frame-options
    • https://strands.ca/pricing-list/ → no x-frame-options
    • https://strands.ca/products-2/ → no x-frame-options
    • https://strands.ca/hairstyle-home/ → no x-frame-options
    • https://strands.ca/hair-salon/ → no x-frame-options
    • https://strands.ca/about-us/ → no x-frame-options
    • https://strands.ca/parallax-showcase/ → no x-frame-options
    • https://strands.ca/portfolio-gallery/ → no x-frame-options
    • https://strands.ca/instagram/ → no x-frame-options
    • https://strands.ca/contact-us/ → no x-frame-options
    • https://strands.ca/blog/ → no x-frame-options
    • https://strands.ca/2022/02/why-choose-strands-artistic-hair/ → 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://strands.ca/ → no x-content-type-options
    • https://strands.ca/pricing-list/ → no x-content-type-options
    • https://strands.ca/products-2/ → no x-content-type-options
    • https://strands.ca/hairstyle-home/ → no x-content-type-options
    • https://strands.ca/hair-salon/ → no x-content-type-options
    • https://strands.ca/about-us/ → no x-content-type-options
    • https://strands.ca/parallax-showcase/ → no x-content-type-options
    • https://strands.ca/portfolio-gallery/ → no x-content-type-options
    • https://strands.ca/instagram/ → no x-content-type-options
    • https://strands.ca/contact-us/ → no x-content-type-options
    • https://strands.ca/blog/ → no x-content-type-options
    • https://strands.ca/2022/02/why-choose-strands-artistic-hair/ → no x-content-type-options
  • FoundReferrer policyLow

    6 of 78 HTML pages send 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://strands.ca/ → no referrer-policy
    • https://strands.ca/pricing-list/ → no referrer-policy
    • https://strands.ca/products-2/ → no referrer-policy
    • https://strands.ca/hairstyle-home/ → no referrer-policy
    • https://strands.ca/hair-salon/ → no referrer-policy
    • https://strands.ca/about-us/ → no referrer-policy
    • https://strands.ca/parallax-showcase/ → no referrer-policy
    • https://strands.ca/portfolio-gallery/ → no referrer-policy
    • https://strands.ca/instagram/ → no referrer-policy
    • https://strands.ca/contact-us/ → no referrer-policy
    • https://strands.ca/blog/ → no referrer-policy
    • https://strands.ca/2022/02/why-choose-strands-artistic-hair/ → no referrer-policy
  • FoundPermissions policyInfo

    72 of 78 HTML pages send 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://strands.ca/wp/wp-login.php?redirect_to=https%3A%2F%2Fstrands.ca%2Fhome-page%2Fhome-page-revolution-slider%2F → no permissions-policy
    • https://strands.ca/wp/wp-login.php?redirect_to=https%3A%2F%2Fstrands.ca%2Four-company%2F → no permissions-policy
    • https://strands.ca/wp/wp-login.php?redirect_to=https%3A%2F%2Fstrands.ca%2Four-blog%2F → no permissions-policy
    • https://strands.ca/wp/wp-login.php?redirect_to=https%3A%2F%2Fstrands.ca%2Fhome-page%2F → no permissions-policy
    • https://strands.ca/wp/wp-login.php?action=lostpassword → no permissions-policy
    • https://strands.ca/wp/wp-login.php → 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: nginx (597 responses)
    • x-powered-by: PHP/7.4.33 (100 responses)
  • FoundCookie flagsMedium

    2 of 2 cookies are missing protective flags. Without HttpOnly a script can read the cookie; without Secure it travels over plain HTTP; without SameSite it is sent on cross-site requests.

    • PHPSESSID (set by https://strands.ca/) lacks Secure, HttpOnly, SameSite
    • wordpress_test_cookie (set by https://strands.ca/wp/wp-login.php?redirect_to=https%3A%2F%2Fstrands.ca%2Fhome-…) lacks SameSite
  • FoundMixed contentMedium

    845 resources on HTTPS pages are loaded over plain HTTP, 106 of them scripts or stylesheets that browsers block or that can be tampered with in transit.

    • https://strands.ca/ loads stylesheet http://strands.ca/wp/wp-content/uploads/elementor/google-fonts/css/roboto.css?ver=1756417…
    • https://strands.ca/ loads stylesheet http://strands.ca/wp/wp-content/uploads/elementor/google-fonts/css/robotoslab.css?ver=175…
    • https://strands.ca/ loads image http://staging.strands.ca/wp/wp-content/uploads/2021/01/strands-logo-1.png
    • https://strands.ca/ loads image http://strands.ca/wp/wp-content/uploads/2022/02/strands-logo-white-mobile.png
    • https://strands.ca/ loads image http://staging.strands.ca/wp/wp-content/uploads/2021/01/strands-logo-black-mobile.png
    • https://strands.ca/ loads image http://strands.ca/wp/wp-content/uploads/2026/01/savings.jpg
    • https://strands.ca/pricing-list/ loads stylesheet http://strands.ca/wp/wp-content/uploads/elementor/google-fonts/css/roboto.css?ver=1756417…
    • https://strands.ca/pricing-list/ loads stylesheet http://strands.ca/wp/wp-content/uploads/elementor/google-fonts/css/robotoslab.css?ver=175…
    • https://strands.ca/pricing-list/ loads image http://staging.strands.ca/wp/wp-content/uploads/2021/01/strands-logo-1.png
    • https://strands.ca/pricing-list/ loads image http://strands.ca/wp/wp-content/uploads/2021/01/strands-logo-1.png
    • https://strands.ca/pricing-list/ loads image http://staging.strands.ca/wp/wp-content/uploads/2021/01/strands-logo-black-mobile.png
    • https://strands.ca/products-2/ loads stylesheet http://strands.ca/wp/wp-content/uploads/elementor/google-fonts/css/roboto.css?ver=1756417…
  • FoundVulnerable JavaScript librariesMedium

    1 library with published vulnerabilities: jQuery 2.0.1. Whether they are exploitable depends on how the site uses them, but each has a fixed release.

    • jQuery 2.0.1 in https://strands.ca/wp/wp-content/plugins/booked/assets/js/spin.jquery.js?ver=2.…: 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
  • 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 (40 script tags)
    • app.promotionengine.com (40 script tags)
    • www.google.com (1 script tag)
  • 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: /_private
5 checks passed
  • OKHTTPS

    All 78 crawled pages were served over HTTPS.

  • OKContent Security Policy

    A Content-Security-Policy is set on 8 of 78 pages.

  • OKForms over HTTPS

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

Earlier scans of strands.ca

No other scans of this site yet.

Sites scoring near strands.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 strands.ca from its pages as published, the way a search engine does. It shows summary figures only.

Own strands.ca?

strands.ca SEO report | DIY SEO Hub