Scanned sites / www.dentalchoice.ca / 2026-09-19-0027
www.dentalchoice.ca scan from 9/19/2026, 12:27:53 AM
Scan 2026-09-19-0027
Scanned 9/19/2026, 12:27:53 AM, finished 9/19/2026, 12:45:00 AM. Found with openstreetmap overpass
Site: https://www.dentalchoice.ca/
Download SQLite databaseEvery page and asset from this scan, with the crawl events, in one file.
On September 19, 2026 the Site Spider crawled 841 pages and 520 assets of www.dentalchoice.ca, starting from https://www.dentalchoice.ca/. It scored 79 out of 100, a good result. 12 of 14 checks found something to fix, led by redirects (438), image alt text (397), orphan pages (177); 2 checks passed. 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
- 841
- Assets fetched
- 520
- Status
- Completed
- Checks with issues
- 12 of 14
- Title tags35 issues35 of 346 pages have title issues. 36 noindex or canonicalized pages excluded.
- Meta descriptions142 issues142 of 346 pages have meta description issues. 36 noindex or canonicalized pages excluded.
- Headings31 issues31 of 346 pages have heading issues. 36 noindex or canonicalized pages excluded.
- Broken links6 issues11 internal links point at 6 broken URLs.
- Redirects438 issues424 redirecting URLs, 48 of them chained.
- Non-200 responses37 issues461 URLs did not return a 2xx response.
- Rate limitedOKThe site did not rate limit the crawler.
- Indexability7 issues7 of 375 indexable pages have indexability warnings. 7 pages noindex by design.
- Image alt text397 issues397 of 3879 image references have no alt attribute. 1581 use an empty alt (decorative), which is fine.
- Heavy assets43 issues43 assets larger than 500 KB among the 100 heaviest.
- Orphan pages177 issues177 pages have no internal links pointing at them.
- Sitemap coverage172 issues8 sitemaps listing 320 URLs: 23 crawled pages missing, 0 listed URLs broken or redirecting, 149 reachable only via the sitemap.
- Thin content15 issues15 of 346 pages have fewer than 200 words. 36 noindex or canonicalized pages excluded.
- Duplicate contentOK0 groups of pages with identical HTML.
Where this scan sits among all scanned sites
1096 sites, median 82%, average 80%
www.dentalchoice.ca scores 79%, higher than 37% of the 1096 scanned sites. See the full ranking.
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...
Fix plan
Written by gpt-4o-mini from the scan findingsThe website has several issues needing attention, particularly around broken links, redirects, title tags, and meta descriptions. Addressing these will enhance user experience and SEO performance.
- 1
Fix Broken Links
Why: Broken links lead to poor user experience and lower SEO rankings.
How: Update or remove the 11 links pointing to broken URLs listed in the findings.
Checks: broken-links
- 2
Resolve Redirect Chains
Why: Redirect chains slow down page load times and can confuse users.
How: Reduce the 48 chained redirects to direct paths by updating URLs to point directly to final destinations.
Checks: redirects
- 3
Address Non-200 Responses
Why: URLs not returning a 2xx status disrupt access and SEO.
How: Investigate the 461 URLs and correct the status codes to ensure they respond with 200.
Checks: status-codes
- 4
Improve Title Tags
Why: Title issues can affect click-through rates and search rankings.
How: Edit the 35 pages to ensure titles are under 60 characters and relevant.
Checks: titles
- 5
Enhance Meta Descriptions
Why: Missing or poor meta descriptions can reduce visibility in search results.
How: Add or revise the 142 meta descriptions to ensure they provide an accurate summary of the pages.
Checks: meta-descriptions
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 crawlYour website has several important security issues, including missing protections against clickjacking and cross-site scripting. Implementing security headers will help prevent attacks and improve overall security. Additionally, an outdated JavaScript library poses vulnerability risks. Consider updating it as soon as possible.
- 0 high
- 4 medium
- 3 low
- 1 info
- 1
Missing HTTP Strict Transport Security (HSTS)Medium
Why it matters: Without HSTS, visitors can be intercepted on their first request if they type the URL without 'https://'.
Fix: Add the header 'Strict-Transport-Security: max-age=31536000; includeSubDomains; preload'.
Evidence: HTTP Strict Transport Security
- 2
Missing Content Security Policy (CSP)Medium
Why it matters: No CSP means scripts and styles can load from any source, increasing attack risks.
Fix: Add a CSP header, e.g., 'Content-Security-Policy: default-src https:; script-src 'self';'.
Evidence: Content Security Policy
- 3
Missing Clickjacking Protection (X-Frame-Options)Medium
Why it matters: Without X-Frame-Options, pages can be embedded in frames maliciously.
Fix: Add 'X-Frame-Options: DENY' to your response headers.
Evidence: Clickjacking protection
- 4
Outdated JavaScript LibraryMedium
Why it matters: Using jQuery 2.9.30 has known vulnerabilities; risks depend on site usage.
Fix: Upgrade jQuery to version 3.5.0 or later.
Evidence: Vulnerable JavaScript libraries
- 5
Missing MIME Sniffing Protection (X-Content-Type-Options)Low
Why it matters: Without this header, browsers may execute files incorrectly based on content.
Fix: Include 'X-Content-Type-Options: nosniff' in your response headers.
Evidence: MIME sniffing protection
- 6
Missing Referrer PolicyLow
Why it matters: Absent a referrer policy, full page addresses are leaked when visitors navigate away.
Fix: Add 'Referrer-Policy: no-referrer' or another appropriate policy in response headers.
Evidence: Referrer policy
- 7
Exposed Server BannerLow
Why it matters: Revealing server/version info helps attackers identify vulnerabilities.
Fix: Update server configurations to hide this information, or use a reverse proxy.
Evidence: Software version disclosure
- 8
Missing Permissions PolicyInfo
Why it matters: A Permissions-Policy can limit features used by scripts, reducing their capabilities.
Fix: Include 'Permissions-Policy: geolocation=(), microphone=(), camera=()' in your headers.
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://www.dentalchoice.ca/ → no strict-transport-security
- https://www.dentalchoice.ca/locations/calgary/ → no strict-transport-security
- https://www.dentalchoice.ca/locations/edmonton/ → no strict-transport-security
- https://www.dentalchoice.ca/locations/red-deer/ → no strict-transport-security
- https://www.dentalchoice.ca/services/ → no strict-transport-security
- https://www.dentalchoice.ca/periodontics/ → no strict-transport-security
- https://www.dentalchoice.ca/services/general-dentistry/vivos-sleep-apnea-treatment/ → no strict-transport-security
- https://www.dentalchoice.ca/services/solea-laser-treatment/ → no strict-transport-security
- https://www.dentalchoice.ca/oral-surgery/ → no strict-transport-security
- https://www.dentalchoice.ca/invisalign/ → no strict-transport-security
- https://www.dentalchoice.ca/about/ → no strict-transport-security
- https://www.dentalchoice.ca/our-dentists/ → no strict-transport-security
- FoundContent Security PolicyMedium
None of the 382 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://www.dentalchoice.ca/ → no content-security-policy
- https://www.dentalchoice.ca/locations/calgary/ → no content-security-policy
- https://www.dentalchoice.ca/locations/edmonton/ → no content-security-policy
- https://www.dentalchoice.ca/locations/red-deer/ → no content-security-policy
- https://www.dentalchoice.ca/services/ → no content-security-policy
- https://www.dentalchoice.ca/periodontics/ → no content-security-policy
- https://www.dentalchoice.ca/services/general-dentistry/vivos-sleep-apnea-treatment/ → no content-security-policy
- https://www.dentalchoice.ca/services/solea-laser-treatment/ → no content-security-policy
- https://www.dentalchoice.ca/oral-surgery/ → no content-security-policy
- https://www.dentalchoice.ca/invisalign/ → no content-security-policy
- https://www.dentalchoice.ca/about/ → no content-security-policy
- https://www.dentalchoice.ca/our-dentists/ → 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://www.dentalchoice.ca/ → no x-frame-options
- https://www.dentalchoice.ca/locations/calgary/ → no x-frame-options
- https://www.dentalchoice.ca/locations/edmonton/ → no x-frame-options
- https://www.dentalchoice.ca/locations/red-deer/ → no x-frame-options
- https://www.dentalchoice.ca/services/ → no x-frame-options
- https://www.dentalchoice.ca/periodontics/ → no x-frame-options
- https://www.dentalchoice.ca/services/general-dentistry/vivos-sleep-apnea-treatment/ → no x-frame-options
- https://www.dentalchoice.ca/services/solea-laser-treatment/ → no x-frame-options
- https://www.dentalchoice.ca/oral-surgery/ → no x-frame-options
- https://www.dentalchoice.ca/invisalign/ → no x-frame-options
- https://www.dentalchoice.ca/about/ → no x-frame-options
- https://www.dentalchoice.ca/our-dentists/ → 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://www.dentalchoice.ca/ → no x-content-type-options
- https://www.dentalchoice.ca/locations/calgary/ → no x-content-type-options
- https://www.dentalchoice.ca/locations/edmonton/ → no x-content-type-options
- https://www.dentalchoice.ca/locations/red-deer/ → no x-content-type-options
- https://www.dentalchoice.ca/services/ → no x-content-type-options
- https://www.dentalchoice.ca/periodontics/ → no x-content-type-options
- https://www.dentalchoice.ca/services/general-dentistry/vivos-sleep-apnea-treatment/ → no x-content-type-options
- https://www.dentalchoice.ca/services/solea-laser-treatment/ → no x-content-type-options
- https://www.dentalchoice.ca/oral-surgery/ → no x-content-type-options
- https://www.dentalchoice.ca/invisalign/ → no x-content-type-options
- https://www.dentalchoice.ca/about/ → no x-content-type-options
- https://www.dentalchoice.ca/our-dentists/ → 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://www.dentalchoice.ca/ → no referrer-policy
- https://www.dentalchoice.ca/locations/calgary/ → no referrer-policy
- https://www.dentalchoice.ca/locations/edmonton/ → no referrer-policy
- https://www.dentalchoice.ca/locations/red-deer/ → no referrer-policy
- https://www.dentalchoice.ca/services/ → no referrer-policy
- https://www.dentalchoice.ca/periodontics/ → no referrer-policy
- https://www.dentalchoice.ca/services/general-dentistry/vivos-sleep-apnea-treatment/ → no referrer-policy
- https://www.dentalchoice.ca/services/solea-laser-treatment/ → no referrer-policy
- https://www.dentalchoice.ca/oral-surgery/ → no referrer-policy
- https://www.dentalchoice.ca/invisalign/ → no referrer-policy
- https://www.dentalchoice.ca/about/ → no referrer-policy
- https://www.dentalchoice.ca/our-dentists/ → 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://www.dentalchoice.ca/ → no permissions-policy
- https://www.dentalchoice.ca/locations/calgary/ → no permissions-policy
- https://www.dentalchoice.ca/locations/edmonton/ → no permissions-policy
- https://www.dentalchoice.ca/locations/red-deer/ → no permissions-policy
- https://www.dentalchoice.ca/services/ → no permissions-policy
- https://www.dentalchoice.ca/periodontics/ → no permissions-policy
- https://www.dentalchoice.ca/services/general-dentistry/vivos-sleep-apnea-treatment/ → no permissions-policy
- https://www.dentalchoice.ca/services/solea-laser-treatment/ → no permissions-policy
- https://www.dentalchoice.ca/oral-surgery/ → no permissions-policy
- https://www.dentalchoice.ca/invisalign/ → no permissions-policy
- https://www.dentalchoice.ca/about/ → no permissions-policy
- https://www.dentalchoice.ca/our-dentists/ → 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: cloudflare (1361 responses)
- x-powered-by: WP Rocket/3.21.0.1 (1 response)
- FoundVulnerable JavaScript librariesMedium
1 library with published vulnerabilities: jQuery 2.9.30. Whether they are exploitable depends on how the site uses them, but each has a fixed release.
- jQuery 2.9.30 in https://www.dentalchoice.ca/wp-content/plugins/gravityforms/js/placeholders.jqu…: 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 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.)
- pfx.leadmanagerfx.com (40 script tags)
- cdn.callrail.com (40 script tags)
- unpkg.com (40 script tags)
- code.jquery.com (41 script tags)
- cdn.jsdelivr.net (44 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/
5 checks passed, 1 not applicable
- OKHTTPS
All 382 crawled pages were served over HTTPS.
- OKMixed content
No HTTPS page loads a script, stylesheet, font or image over plain HTTP.
- OKForms over HTTPS
87 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.
- 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.
This report was produced by the DIY SEO Hub Site Spider crawling www.dentalchoice.ca from its public pages. Anyone can run a scan of any site they own or are authorised to check. Is this your site? Claim it to manage the listing, or ask for removal through the support form.