Scanned sites / familybraces.ca / 2026-09-17-0513
familybraces.ca scan from 9/17/2026, 5:13:32 AM
Scan 2026-09-17-0513
Scanned 9/17/2026, 5:13:32 AM, finished 9/17/2026, 5:27:25 AM. Found with openstreetmap overpass
Site: https://familybraces.ca/
Download SQLite databaseEvery page and asset from this scan, with the crawl events, in one file.
On September 17, 2026 the Site Spider crawled 79 pages and 638 assets of familybraces.ca, starting from https://familybraces.ca/. It scored 79 out of 100, a good result. 9 of 14 checks found something to fix, led by image alt text (104), meta descriptions (57), title tags (22); 5 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, 1 low and 1 info findings. See the security findings ↓
- Pages crawled
- 79
- Assets fetched
- 638
- Status
- Completed
- Checks with issues
- 9 of 14
- Title tags22 issues22 of 65 pages have title issues. 1 noindex or canonicalized page excluded.
- Meta descriptions57 issues57 of 65 pages have meta description issues. 1 noindex or canonicalized page excluded.
- Headings6 issues6 of 65 pages have heading issues. 1 noindex or canonicalized page excluded.
- Broken linksOK0 internal links point at 0 broken URLs.
- Redirects12 issues14 redirecting URLs, 0 of them chained.
- Non-200 responsesOK129 URLs did not return a 2xx response.
- Rate limitedOKThe site did not rate limit the crawler.
- Indexability1 issue1 of 66 indexable pages have indexability warnings.
- Image alt text104 issues104 of 232 image references have no alt attribute. 95 use an empty alt (decorative), which is fine.
- Heavy assets8 issues8 assets larger than 500 KB among the 100 heaviest.
- Orphan pages9 issues9 pages have no internal links pointing at them.
- Sitemap coverage16 issues6 sitemaps listing 61 URLs: 6 crawled pages missing, 1 listed URL broken or redirecting, 9 reachable only via the sitemap.
- Thin contentOK0 of 65 pages have fewer than 200 words. 1 noindex or canonicalized page excluded.
- Duplicate contentOK0 groups of pages with identical HTML.
Where this scan sits among all scanned sites
1058 sites, median 82%, average 80%
familybraces.ca scores 79%, higher than 37% of the 1058 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 findingsYour site has a good health score but needs improvements in redirects, non-200 responses, titles, meta descriptions, and headings. Addressing these will improve user experience and SEO performance.
- 1
Fix Redirects
Why: 14 redirecting URLs can lead to slow load times.
How: Update links or remove unnecessary redirects in your CMS.
Checks: redirects
- 2
Resolve Non-200 Responses
Why: 129 URLs not returning 2xx can harm SEO and user experience.
How: Identify and fix these URLs or ensure they return valid content.
Checks: status-codes
- 3
Improve Title Tags
Why: 22 pages have title issues affecting search visibility.
How: Edit page titles to be concise and relevant (under 60 characters).
Checks: titles
- 4
Enhance Meta Descriptions
Why: 57 pages have missing or poor meta descriptions, impacting click-through rates.
How: Provide descriptive, engaging meta descriptions (around 155 characters).
Checks: meta-descriptions
- 5
Update Headings
Why: 6 pages lack H1 headings, which are crucial for SEO.
How: Add H1 tags to pages that are missing them.
Checks: headings
- 6
Add Alt Text to Images
Why: 104 images lack alt attributes, affecting accessibility and SEO.
How: Update images with relevant alt text in your CMS.
Checks: images-alt
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 crawlThe security review of familybraces.ca identifies critical headers missing that can expose users to risks such as data interception and clickjacking. Additionally, a Google API key is publicly visible, which requires tighter access controls.
- 0 high
- 4 medium
- 1 low
- 1 info
- 1
Missing HTTP Strict Transport Security (HSTS)Medium
Why it matters: Without HSTS, users can be intercepted on their first request when typing the site address without HTTPS.
Fix: Add the header: Strict-Transport-Security: max-age=31536000; includeSubDomains
Evidence: HTTP Strict Transport Security
- 2
Missing Content Security Policy (CSP)Medium
Why it matters: Lack of CSP allows scripts, styles, and frames to load from untrusted sources, increasing XSS risks.
Fix: Add the header: Content-Security-Policy: default-src 'self'
Evidence: Content Security Policy
- 3
Missing Clickjacking Protection (X-Frame-Options)Medium
Why it matters: Without this protection, pages could be embedded in malicious sites, risking user interaction deception.
Fix: Add the header: X-Frame-Options: DENY
Evidence: Clickjacking protection
- 4
Leaked Google API KeyMedium
Why it matters: A Google API key is publicly exposed, making it vulnerable to abuse if not properly restricted.
Fix: Restrict the API key in the Google Cloud console by HTTP referrer.
Evidence: Keys and secrets in page code
- 5
Missing Referrer PolicyLow
Why it matters: Without a Referrer Policy, full page addresses are sent to other sites, potentially leaking sensitive info.
Fix: Add the header: Referrer-Policy: no-referrer
Evidence: Referrer policy
- 6
Missing Permissions PolicyInfo
Why it matters: Without it, browser features remain active that the site does not use, making it vulnerable to injected scripts.
Fix: Add the header: Permissions-Policy: geolocation=(self), 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://familybraces.ca/ → no strict-transport-security
- https://familybraces.ca/book-online/ → no strict-transport-security
- https://familybraces.ca/locations-overview/ → no strict-transport-security
- https://familybraces.ca/locations/beacon-hill/ → no strict-transport-security
- https://familybraces.ca/locations/deerfoot-city/ → no strict-transport-security
- https://familybraces.ca/locations/shawnessy/ → no strict-transport-security
- https://familybraces.ca/locations/mckenzie/ → no strict-transport-security
- https://familybraces.ca/locations/westhills/ → no strict-transport-security
- https://familybraces.ca/locations/east-hills/ → no strict-transport-security
- https://familybraces.ca/blog/ → no strict-transport-security
- https://familybraces.ca/orthodontist/ → no strict-transport-security
- https://familybraces.ca/terms-and-conditions/ → no strict-transport-security
- FoundContent Security PolicyMedium
None of the 66 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://familybraces.ca/ → no content-security-policy
- https://familybraces.ca/book-online/ → no content-security-policy
- https://familybraces.ca/locations-overview/ → no content-security-policy
- https://familybraces.ca/locations/beacon-hill/ → no content-security-policy
- https://familybraces.ca/locations/deerfoot-city/ → no content-security-policy
- https://familybraces.ca/locations/shawnessy/ → no content-security-policy
- https://familybraces.ca/locations/mckenzie/ → no content-security-policy
- https://familybraces.ca/locations/westhills/ → no content-security-policy
- https://familybraces.ca/locations/east-hills/ → no content-security-policy
- https://familybraces.ca/blog/ → no content-security-policy
- https://familybraces.ca/orthodontist/ → no content-security-policy
- https://familybraces.ca/terms-and-conditions/ → 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://familybraces.ca/ → no x-frame-options
- https://familybraces.ca/book-online/ → no x-frame-options
- https://familybraces.ca/locations-overview/ → no x-frame-options
- https://familybraces.ca/locations/beacon-hill/ → no x-frame-options
- https://familybraces.ca/locations/deerfoot-city/ → no x-frame-options
- https://familybraces.ca/locations/shawnessy/ → no x-frame-options
- https://familybraces.ca/locations/mckenzie/ → no x-frame-options
- https://familybraces.ca/locations/westhills/ → no x-frame-options
- https://familybraces.ca/locations/east-hills/ → no x-frame-options
- https://familybraces.ca/blog/ → no x-frame-options
- https://familybraces.ca/orthodontist/ → no x-frame-options
- https://familybraces.ca/terms-and-conditions/ → no x-frame-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://familybraces.ca/ → no referrer-policy
- https://familybraces.ca/book-online/ → no referrer-policy
- https://familybraces.ca/locations-overview/ → no referrer-policy
- https://familybraces.ca/locations/beacon-hill/ → no referrer-policy
- https://familybraces.ca/locations/deerfoot-city/ → no referrer-policy
- https://familybraces.ca/locations/shawnessy/ → no referrer-policy
- https://familybraces.ca/locations/mckenzie/ → no referrer-policy
- https://familybraces.ca/locations/westhills/ → no referrer-policy
- https://familybraces.ca/locations/east-hills/ → no referrer-policy
- https://familybraces.ca/blog/ → no referrer-policy
- https://familybraces.ca/orthodontist/ → no referrer-policy
- https://familybraces.ca/terms-and-conditions/ → 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://familybraces.ca/ → no permissions-policy
- https://familybraces.ca/book-online/ → no permissions-policy
- https://familybraces.ca/locations-overview/ → no permissions-policy
- https://familybraces.ca/locations/beacon-hill/ → no permissions-policy
- https://familybraces.ca/locations/deerfoot-city/ → no permissions-policy
- https://familybraces.ca/locations/shawnessy/ → no permissions-policy
- https://familybraces.ca/locations/mckenzie/ → no permissions-policy
- https://familybraces.ca/locations/westhills/ → no permissions-policy
- https://familybraces.ca/locations/east-hills/ → no permissions-policy
- https://familybraces.ca/blog/ → no permissions-policy
- https://familybraces.ca/orthodontist/ → no permissions-policy
- https://familybraces.ca/terms-and-conditions/ → no permissions-policy
- FoundKeys and secrets in page codeMedium
1 credential-like value found in code served to every visitor: Google API key.
- Google API key AIzaSy…oc (39 chars) in https://familybraces.ca/: browser keys are expected in pages, but must be restricted by HTTP referrer and API in the Google Cloud console
- 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/
9 checks passed
- OKHTTPS
All 66 crawled pages were served over HTTPS.
- OKMIME sniffing protection
x-content-type-options is set on all 66 HTML pages.
- OKSoftware version disclosure
The Server header names a product without a version, and there is no X-Powered-By header.
- OKCookie flags
All 1 cookie carry Secure, HttpOnly and SameSite flags.
- OKMixed content
No HTTPS page loads a script, stylesheet, font or image over plain HTTP.
- OKForms over HTTPS
7 forms found, all on HTTPS pages posting to HTTPS addresses.
- OKVulnerable JavaScript libraries
2 library versions 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.
- OKThird-party scripts
The sampled pages load no scripts from other domains.
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 familybraces.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.