Scanned sites / affinitywpg.ca / 2026-09-14-2258

affinitywpg.ca scan from 2026-09-14 22:58:35 UTC DR 5

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

Scan 2026-09-14-2258

Scanned 2026-09-14 22:58:35 UTC, finished 2026-09-14 23:06:21 UTC. Found with openstreetmap overpass

Site: https://affinitywpg.ca/

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

87/ 100Good

On September 14, 2026 the Site Spider crawled 165 pages and 338 assets of affinitywpg.ca, starting from https://affinitywpg.ca/. It scored 87 out of 100, a good result. 8 of 27 checks found something to fix, led by heavy assets (34), title tags (40), meta descriptions (42); 9 checks passed. Most of the points went to heavy assets (−6), title tags (−2.6), meta descriptions (−2.2). 10 checks found something the score does not count, listed as noted. 10 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: Medium3 medium, 2 low and 1 info findings. See the security findings ↓

Pages crawled
165
Assets fetched
338
Status
Completed
Checks with issues
8 of 27
CoverageComplete crawl

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

  • Title tags40 issues
    40 of 102 pages have title issues. 53 noindex or canonicalized pages excluded.
    −2.6 points
  • Meta descriptions42 issues
    42 of 102 pages have meta description issues. 53 noindex or canonicalized pages excluded.
    −2.2 points
  • Headings2 issues
    2 of 102 pages have heading issues. 53 noindex or canonicalized pages excluded.
    −0.1 points
  • Broken linksOK
    0 internal links point at 0 broken URLs.
  • Links to other sites6 issues
    6 destinations answered with an error, 15 could not be determined (timeouts, rate limits or refusals), of 42 destinations checked.
    −1.5 points
  • Redirects10 issues
    11 redirecting URLs, 0 of them chained.
    −0.3 points
  • Non-200 responses12 noted
    12 URLs did not return a 2xx response. 10 of them are pages, 0 with an error status; the rest are assets or redirects.
  • Rate limitedOK
    The site did not rate limit the crawler.
  • IndexabilityOK
    0 of 104 indexable pages have indexability warnings. 51 pages noindex by design.
  • Image alt textOK
    0 of 202 image references have no alt attribute. 93 use an empty alt (decorative), which is fine.
  • Heavy assets34 issues
    34 assets larger than 500 KB among 338 fetched assets. 1 document over that size is listed but not counted: downloads are not page weight.
    −6 points
  • Orphan pages1 issue
    1 page have no internal links pointing at them.
  • Sitemap coverage16 issues
    5 sitemaps listing 89 URLs: 14 crawled pages missing, 0 listed URLs broken or redirecting, 2 reachable only via the sitemap.
    −0.6 points
  • Internal link counts60 noted
    Internal link counts for 155 pages; 60 worth a look.
  • Thin contentOK
    0 of 102 pages have fewer than 200 words. 53 noindex or canonicalized pages excluded.
  • Duplicate contentOK
    0 groups of pages with identical HTML.
  • URL format23 noted
    23 of 165 page URLs are harder to read, share or cache than they need to be.
  • Canonicals53 noted
    53 of 155 pages have a canonical worth checking.
  • Robots directives155 noted
    155 pages carry a robots directive; 0 carry none.
  • Anchor text4 noted
    4 destinations are linked without useful anchor text, or with nofollow.
  • Title and heading structure73 noted
    73 of 102 pages could use the title, heading and snippet space better. 53 noindex or canonicalized pages excluded.
  • Image weight and alt length4 noted
    4 images over 100 KB; 0 with alt text over 100 characters.
  • Response anomalies5 noted
    5 URLs answered in a way worth looking at.
  • HTML and head validationNot checked
    Not checked: this scan was crawled before this check existed. Scan the site again to run it.
  • hreflangNot checked
    Not checked: this scan was crawled before this check existed. Scan the site again to run it.
  • Structured dataNot checked
    Not checked: this scan was crawled before this check existed. Scan the site again to run it.
  • Near duplicatesNot checked
    Not checked: this scan was crawled before this check existed. Scan the site again to run it.
  • Soft 404sOK
    None of 155 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 positionsNot checked
    Not checked: this scan was crawled before link positions were recorded. Scan the site again to run it.
  • PaginationNot checked
    Not checked: this scan was crawled before this check existed. Scan the site again to run it.
  • Headers and cookiesOK
    0 cookies set by the site; 12 response headers recorded across 503 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 155 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 Insights5 noted
    Mobile performance 49 on average across 5 pages; 5 below Google's good thresholds.
  • SpellingNot checked
    Not checked: this scan was crawled before this check existed. Scan the site again to run it.

Where this scan sits among all scanned sites

2712 sites, median 80%, average 78%

affinitywpg.ca scores 87%, higher than 79% of the 2712 scanned sites. See the full ranking.

0641270%: 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%: 2 sites45%: 6 sites46%: 5 sites47%: 5 sites48%: 6 sites49%: 8 sites50%: 6 sites51%: 6 sites52%: 8 sites53%: 9 sites54%: 10 sites55%: 9 sites56%: 7 sites57%: 16 sites58%: 18 sites59%: 9 sites60%: 15 sites61%: 13 sites62%: 20 sites63%: 29 sites64%: 21 sites65%: 33 sites66%: 40 sites67%: 40 sites68%: 39 sites69%: 50 sites70%: 46 sites71%: 78 sites72%: 74 sites73%: 82 sites74%: 77 sites75%: 87 sites76%: 96 sites77%: 107 sites78%: 123 sites79%: 109 sites80%: 124 sites81%: 120 sites82%: 124 sites83%: 118 sites84%: 127 sites85%: 102 sites86%: 91 sites87%: 91 sites88%: 78 sites89%: 72 sites90%: 53 sites91%: 56 sites92%: 40 sites93%: 28 sites94%: 23 sites95%: 14 sites96%: 17 sites97%: 15 sites98%: 7 sites99%: 2 sites100%: 79 sites87% 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

Written from an earlier version of the analysis. 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 has a solid health score, but there are several key areas for improvement, particularly with redirects, title tags, and missing meta descriptions. Addressing these will enhance user experience and SEO performance.

  1. 1

    Fix Redirect Issues

    Why: Reducing unnecessary redirects improves load speed and enhances user experience.

    How: Update links to point directly to the final URLs instead of going through redirects.

    Checks: redirects

  2. 2

    Resolve Non-200 Responses

    Why: Fixing these URLs ensures users access the correct pages without errors.

    How: Identify and repair faulty URLs or update links that point to them.

    Checks: status-codes

  3. 3

    Optimize Title Tags

    Why: Improving title tags enhances search engine understanding and click-through rates.

    How: Make sure titles are between 30-60 characters and unique for each page.

    Checks: titles

  4. 4

    Revise Missing Meta Descriptions

    Why: Adding descriptive meta tags can increase visibility and CTR from search results.

    How: Create engaging meta descriptions for all pages missing them, up to 160 characters.

    Checks: meta-descriptions

  5. 5

    Add Missing H1 Headings

    Why: H1 headings are crucial for SEO and user navigation.

    How: Insert an H1 heading on the pages that currently lack one.

    Checks: headings

  6. 6

    Update Sitemap Coverage

    Why: Ensuring all indexable pages are in the sitemap aids in better indexing.

    How: Add the identified pages to the sitemap to improve their visibility to search engines.

    Checks: sitemap-coverage

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

This security review identifies several areas where the website can improve its security posture. Key issues include the absence of critical security headers, which leaves the website vulnerable to various attacks. Implementing the suggested fixes will help protect user data and strengthen site integrity.

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

    Missing HTTP Strict Transport Security (HSTS)Medium

    Why it matters: Without HSTS, users may be vulnerable to man-in-the-middle attacks on their first request.

    Fix: Implement the following HTTP header: 'Strict-Transport-Security: max-age=63072000; includeSubDomains'.

    Evidence: HTTP Strict Transport Security

  2. 2

    Absent Content Security Policy (CSP)Medium

    Why it matters: Without CSP, the site is susceptible to cross-site scripting (XSS) and data injection attacks.

    Fix: Add the following HTTP header: 'Content-Security-Policy: default-src 'self';'.

    Evidence: Content Security Policy

  3. 3

    Missing X-Frame-Options HeaderMedium

    Why it matters: Without this header, the site can be embedded in frames, exposing it to clickjacking attacks.

    Fix: Set the following HTTP header: 'X-Frame-Options: DENY'.

    Evidence: Clickjacking protection

  4. 4

    Missing X-Content-Type-Options HeaderLow

    Why it matters: Absence of this header may allow a browser to interpret files as a different type based on content.

    Fix: Add the following HTTP header: 'X-Content-Type-Options: nosniff'.

    Evidence: MIME sniffing protection

  5. 5

    Third-party Scripts Without Subresource IntegrityLow

    Why it matters: Scripts from external sources without integrity checks may lead to security vulnerabilities if those sources are compromised.

    Fix: Implement a robust Content-Security-Policy that includes the trusted domains, or consider using Subresource Integrity (SRI).

    Evidence: Third-party scripts

  6. 6

    Potentially Sensitive Paths in robots.txtInfo

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

    Fix: Consider restricting access to sensitive paths with appropriate access controls instead of relying solely on robots.txt.

    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://affinitywpg.ca/ → no strict-transport-security
    • https://affinitywpg.ca/contact/ → no strict-transport-security
    • https://affinitywpg.ca/about/ → no strict-transport-security
    • https://affinitywpg.ca/our-team/ → no strict-transport-security
    • https://affinitywpg.ca/faq/ → no strict-transport-security
    • https://affinitywpg.ca/services/ → no strict-transport-security
    • https://affinitywpg.ca/services/dental-maintenance-prevention/ → no strict-transport-security
    • https://affinitywpg.ca/services/cosmetic-dentistry/ → no strict-transport-security
    • https://affinitywpg.ca/services/teeth-whitening/ → no strict-transport-security
    • https://affinitywpg.ca/services/veneers/ → no strict-transport-security
    • https://affinitywpg.ca/services/maintenance-dental-cleaning/ → no strict-transport-security
    • https://affinitywpg.ca/services/dental-crowns-bridges/ → no strict-transport-security
  • FoundContent Security PolicyMedium

    None of the 155 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://affinitywpg.ca/ → no content-security-policy
    • https://affinitywpg.ca/contact/ → no content-security-policy
    • https://affinitywpg.ca/about/ → no content-security-policy
    • https://affinitywpg.ca/our-team/ → no content-security-policy
    • https://affinitywpg.ca/faq/ → no content-security-policy
    • https://affinitywpg.ca/services/ → no content-security-policy
    • https://affinitywpg.ca/services/dental-maintenance-prevention/ → no content-security-policy
    • https://affinitywpg.ca/services/cosmetic-dentistry/ → no content-security-policy
    • https://affinitywpg.ca/services/teeth-whitening/ → no content-security-policy
    • https://affinitywpg.ca/services/veneers/ → no content-security-policy
    • https://affinitywpg.ca/services/maintenance-dental-cleaning/ → no content-security-policy
    • https://affinitywpg.ca/services/dental-crowns-bridges/ → 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://affinitywpg.ca/ → no x-frame-options
    • https://affinitywpg.ca/contact/ → no x-frame-options
    • https://affinitywpg.ca/about/ → no x-frame-options
    • https://affinitywpg.ca/our-team/ → no x-frame-options
    • https://affinitywpg.ca/faq/ → no x-frame-options
    • https://affinitywpg.ca/services/ → no x-frame-options
    • https://affinitywpg.ca/services/dental-maintenance-prevention/ → no x-frame-options
    • https://affinitywpg.ca/services/cosmetic-dentistry/ → no x-frame-options
    • https://affinitywpg.ca/services/teeth-whitening/ → no x-frame-options
    • https://affinitywpg.ca/services/veneers/ → no x-frame-options
    • https://affinitywpg.ca/services/maintenance-dental-cleaning/ → no x-frame-options
    • https://affinitywpg.ca/services/dental-crowns-bridges/ → 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://affinitywpg.ca/ → no x-content-type-options
    • https://affinitywpg.ca/contact/ → no x-content-type-options
    • https://affinitywpg.ca/about/ → no x-content-type-options
    • https://affinitywpg.ca/our-team/ → no x-content-type-options
    • https://affinitywpg.ca/faq/ → no x-content-type-options
    • https://affinitywpg.ca/services/ → no x-content-type-options
    • https://affinitywpg.ca/services/dental-maintenance-prevention/ → no x-content-type-options
    • https://affinitywpg.ca/services/cosmetic-dentistry/ → no x-content-type-options
    • https://affinitywpg.ca/services/teeth-whitening/ → no x-content-type-options
    • https://affinitywpg.ca/services/veneers/ → no x-content-type-options
    • https://affinitywpg.ca/services/maintenance-dental-cleaning/ → no x-content-type-options
    • https://affinitywpg.ca/services/dental-crowns-bridges/ → no x-content-type-options
  • NoteThird-party scripts

    Scripts run from 4 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)
    • cdn.callrail.com (40 script tags)
    • cdnjs.cloudflare.com (40 script tags)
    • www.google.com (40 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, 3 not applicable
  • OKHTTPS

    All 155 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

    5 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 applicableReferrer policy

    This scan predates the crawler recording the headers this check needs. Rescan the site to check it.

  • Not applicablePermissions policy

    This scan predates the crawler recording the headers this check needs. Rescan the site to check it.

  • Not applicableCookie flags

    This scan predates the crawler recording the headers this check needs. Rescan the site to check it.

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

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

Own affinitywpg.ca?