Scanned sites / www.brunilaw.com / 2026-10-19-1709

www.brunilaw.com scan from 2026-10-19 17:09:13 UTC DR 0

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

Scan 2026-10-19-1709

Scanned 2026-10-19 17:09:13 UTC, finished 2026-10-19 17:10:41 UTC. Found with openstreetmap overpass

Site: https://www.brunilaw.com/

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

81/ 100Good

On October 19, 2026 the Site Spider crawled 12 pages and 80 assets of www.brunilaw.com, starting from https://www.brunilaw.com/. It scored 81 out of 100, a good result. 3 of 33 checks found something to fix, led by indexability (12), title tags (8), meta descriptions (3); 22 checks passed. Most of the points went to indexability (−10), title tags (−6.7), meta descriptions (−2). 8 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: Medium5 medium, 2 low and 1 info findings. See the security findings ↓

Pages crawled
12
Assets fetched
80
Status
Completed
Checks with issues
3 of 33
CoverageComplete crawl

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

  • Title tags8 issues
    8 of 12 pages have title issues.
    −6.7 points
  • Meta descriptions3 issues
    3 of 12 pages have meta description issues.
    −2 points
  • HeadingsOK
    0 of 12 pages have heading issues.
  • Broken linksOK
    0 internal links point at 0 broken URLs.
  • Links to other sites12 noted
    0 destinations answered with an error, 1 could not be determined (timeouts, rate limits or refusals), of 3 destinations checked.
  • Redirects1 noted
    1 redirecting URL, 0 of them chained.
  • Non-200 responses1 noted
    1 URL did not return a 2xx response. 0 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.
  • Indexability12 issues
    12 of 12 indexable pages have indexability warnings.
    −10 points
  • Image alt textOK
    0 of 50 image references have no alt attribute. 43 use an empty alt (decorative), which is fine.
  • Heavy assetsOK
    0 assets larger than 500 KB among 80 fetched assets.
  • Orphan pagesOK
    0 pages have no internal links pointing at them.
  • Sitemap coverageOK
    2 sitemaps listing 12 URLs: 0 crawled pages missing, 0 listed URLs broken or redirecting, 0 reachable only via the sitemap.
  • Internal link countsOK
    Internal link counts for 12 pages; none is a dead end or buried.
  • Thin contentOK
    0 of 12 pages have fewer than 200 words.
  • Duplicate contentOK
    0 groups of pages with identical HTML.
  • URL formatOK
    All 12 page URLs are plain lowercase addresses without parameters.
  • CanonicalsOK
    0 of 12 pages have a canonical worth checking.
  • Robots directives12 noted
    12 pages carry a robots directive; 0 carry none.
  • Anchor textOK
    Every internal link has descriptive, followed anchor text.
  • Title and heading structure3 noted
    3 of 12 pages could use the title, heading and snippet space better.
  • Image weight and alt length4 noted
    4 images over 100 KB; 0 with alt text over 100 characters.
  • Response anomaliesOK
    No redirect loops, header redirects or pages served as something other than HTML.
  • HTML and head validationOK
    All 12 pages keep their head tags in <head>, once each, under Googlebot's 2 MB.
  • hreflangOK
    No page declares hreflang.
  • Structured dataOK
    12 of 12 indexable pages carry structured data: BreadcrumbList (12), ListItem (12), WebSite (12), WebPage (12). 0 pages with errors a rich result would fail on.
  • Near duplicatesOK
    No near duplicates among 12 pages with enough text to compare.
  • Soft 404sOK
    None of 12 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 positions6 noted
    6 of 12 linked pages are linked only from the template, never from another page's content.
  • PaginationOK
    No page declares rel=next or rel=prev pagination.
  • Headers and cookiesOK
    0 cookies set by the site; 14 response headers recorded across 92 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 12 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.
  • Spelling2 noted
    2 words an English dictionary does not know, on 2 pages. Product names and jargon will appear here too.

Where this scan sits among all scanned sites

2287 sites, median 79%, average 78%

www.brunilaw.com scores 81%, higher than 56% of the 2287 scanned sites. See the full ranking.

0571140%: 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%: 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%: 1 site34%: 0 sites35%: 2 sites36%: 2 sites37%: 1 site38%: 3 sites39%: 1 site40%: 3 sites41%: 1 site42%: 1 site43%: 3 sites44%: 1 site45%: 4 sites46%: 5 sites47%: 5 sites48%: 3 sites49%: 6 sites50%: 5 sites51%: 5 sites52%: 10 sites53%: 6 sites54%: 8 sites55%: 9 sites56%: 8 sites57%: 12 sites58%: 16 sites59%: 7 sites60%: 16 sites61%: 12 sites62%: 19 sites63%: 27 sites64%: 21 sites65%: 32 sites66%: 36 sites67%: 34 sites68%: 35 sites69%: 45 sites70%: 41 sites71%: 68 sites72%: 70 sites73%: 67 sites74%: 70 sites75%: 71 sites76%: 88 sites77%: 91 sites78%: 104 sites79%: 87 sites80%: 106 sites81%: 107 sites82%: 114 sites83%: 95 sites84%: 107 sites85%: 83 sites86%: 67 sites87%: 73 sites88%: 61 sites89%: 60 sites90%: 33 sites91%: 44 sites92%: 35 sites93%: 20 sites94%: 14 sites95%: 10 sites96%: 10 sites97%: 9 sites98%: 4 sites99%: 0 sites100%: 70 sites81% 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 areas needing improvement, particularly in titles, meta descriptions, and indexability. Addressing these will enhance visibility and user experience.

  1. 1

    Fix 301 Redirect

    Why: Eliminate unnecessary redirects for optimal user experience and crawl efficiency.

    How: Update the link to sitemap_index.xml instead of sitemap.xml.

    Checks: redirects

  2. 2

    Shorten Title Tags

    Why: Improve SEO and prevent titles from being cut off in search results.

    How: Revise titles to be under 60 characters.

    Checks: titles

  3. 3

    Optimize Meta Descriptions

    Why: Encourage higher click-through rates by ensuring descriptions are within recommended length.

    How: Revise descriptions to be under 160 characters.

    Checks: meta-descriptions

  4. 4

    Add Viewport Meta Tag

    Why: Enhance mobile usability and comply with best practices.

    How: Include a viewport meta tag in the head section of all pages.

    Checks: indexability

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, exposing it to various threats such as clickjacking and data interception. It also includes outdated libraries and potentially leaked credentials. Implementing recommended measures will significantly enhance site security.

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

    Missing HTTP Strict Transport Security (HSTS)Medium

    Why it matters: Without HSTS, users can be intercepted when accessing the site over HTTP.

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

    Evidence: HTTP Strict Transport Security

  2. 2

    Missing Content Security Policy (CSP)Medium

    Why it matters: Lack of CSP allows unrestricted loading of scripts and styles, increasing XSS risks.

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

    Evidence: Content Security Policy

  3. 3

    Missing X-Frame-OptionsMedium

    Why it matters: No protection against clickjacking, allowing potential tampering with iframes.

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

    Evidence: Clickjacking protection

  4. 4

    Outdated JavaScript LibraryMedium

    Why it matters: Bootstrap 3.3.7 has known vulnerabilities that could be exploited.

    Fix: Upgrade Bootstrap to version 3.4.1 or later.

    Evidence: Vulnerable JavaScript libraries

  5. 5

    Leaked Google API KeyMedium

    Why it matters: Exposing API keys can lead to unauthorized usage and billing.

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

    Evidence: Keys and secrets in page code

  6. 6

    Missing X-Content-Type-OptionsLow

    Why it matters: Absence of this header can lead to MIME type confusion vulnerabilities.

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

    Evidence: MIME sniffing protection

  7. 7

    Revealed Server InformationLow

    Why it matters: Exposing server and framework versions increases the risk of targeted attacks.

    Fix: Remove or obscure the Server and X-Powered-By headers in responses.

    Evidence: Software version disclosure

  8. 8

    Missing Permissions PolicyInfo

    Why it matters: Lacking a Permissions Policy disallows limiting browser features like camera and geolocation.

    Fix: Add the header: Permissions-Policy: geolocation=(self), microphone=()

    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.brunilaw.com/ → no strict-transport-security
    • https://www.brunilaw.com/estate-planning-firm-marda-loop/ → no strict-transport-security
    • https://www.brunilaw.com/amanda-bruni/ → no strict-transport-security
    • https://www.brunilaw.com/janice-bruni/ → no strict-transport-security
    • https://www.brunilaw.com/michael-bruni/ → no strict-transport-security
    • https://www.brunilaw.com/ronaliz-veron/ → no strict-transport-security
    • https://www.brunilaw.com/adult-guardianship-trusteeship-lawyers-marda-loop/ → no strict-transport-security
    • https://www.brunilaw.com/estate-planning-lawyers-marda-loop/ → no strict-transport-security
    • https://www.brunilaw.com/estate-administration-lawyers-marda-loop/ → no strict-transport-security
    • https://www.brunilaw.com/residential-real-estate-lawyers-marda-loop/ → no strict-transport-security
    • https://www.brunilaw.com/estate-planning-blog/ → no strict-transport-security
    • https://www.brunilaw.com/legal-consultation-marda-loop/ → no strict-transport-security
  • FoundContent Security PolicyMedium

    None of the 12 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.brunilaw.com/ → no content-security-policy
    • https://www.brunilaw.com/estate-planning-firm-marda-loop/ → no content-security-policy
    • https://www.brunilaw.com/amanda-bruni/ → no content-security-policy
    • https://www.brunilaw.com/janice-bruni/ → no content-security-policy
    • https://www.brunilaw.com/michael-bruni/ → no content-security-policy
    • https://www.brunilaw.com/ronaliz-veron/ → no content-security-policy
    • https://www.brunilaw.com/adult-guardianship-trusteeship-lawyers-marda-loop/ → no content-security-policy
    • https://www.brunilaw.com/estate-planning-lawyers-marda-loop/ → no content-security-policy
    • https://www.brunilaw.com/estate-administration-lawyers-marda-loop/ → no content-security-policy
    • https://www.brunilaw.com/residential-real-estate-lawyers-marda-loop/ → no content-security-policy
    • https://www.brunilaw.com/estate-planning-blog/ → no content-security-policy
    • https://www.brunilaw.com/legal-consultation-marda-loop/ → 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.brunilaw.com/ → no x-frame-options
    • https://www.brunilaw.com/estate-planning-firm-marda-loop/ → no x-frame-options
    • https://www.brunilaw.com/amanda-bruni/ → no x-frame-options
    • https://www.brunilaw.com/janice-bruni/ → no x-frame-options
    • https://www.brunilaw.com/michael-bruni/ → no x-frame-options
    • https://www.brunilaw.com/ronaliz-veron/ → no x-frame-options
    • https://www.brunilaw.com/adult-guardianship-trusteeship-lawyers-marda-loop/ → no x-frame-options
    • https://www.brunilaw.com/estate-planning-lawyers-marda-loop/ → no x-frame-options
    • https://www.brunilaw.com/estate-administration-lawyers-marda-loop/ → no x-frame-options
    • https://www.brunilaw.com/residential-real-estate-lawyers-marda-loop/ → no x-frame-options
    • https://www.brunilaw.com/estate-planning-blog/ → no x-frame-options
    • https://www.brunilaw.com/legal-consultation-marda-loop/ → 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.brunilaw.com/ → no x-content-type-options
    • https://www.brunilaw.com/estate-planning-firm-marda-loop/ → no x-content-type-options
    • https://www.brunilaw.com/amanda-bruni/ → no x-content-type-options
    • https://www.brunilaw.com/janice-bruni/ → no x-content-type-options
    • https://www.brunilaw.com/michael-bruni/ → no x-content-type-options
    • https://www.brunilaw.com/ronaliz-veron/ → no x-content-type-options
    • https://www.brunilaw.com/adult-guardianship-trusteeship-lawyers-marda-loop/ → no x-content-type-options
    • https://www.brunilaw.com/estate-planning-lawyers-marda-loop/ → no x-content-type-options
    • https://www.brunilaw.com/estate-administration-lawyers-marda-loop/ → no x-content-type-options
    • https://www.brunilaw.com/residential-real-estate-lawyers-marda-loop/ → no x-content-type-options
    • https://www.brunilaw.com/estate-planning-blog/ → no x-content-type-options
    • https://www.brunilaw.com/legal-consultation-marda-loop/ → no x-content-type-options
  • 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.brunilaw.com/ → no permissions-policy
    • https://www.brunilaw.com/estate-planning-firm-marda-loop/ → no permissions-policy
    • https://www.brunilaw.com/amanda-bruni/ → no permissions-policy
    • https://www.brunilaw.com/janice-bruni/ → no permissions-policy
    • https://www.brunilaw.com/michael-bruni/ → no permissions-policy
    • https://www.brunilaw.com/ronaliz-veron/ → no permissions-policy
    • https://www.brunilaw.com/adult-guardianship-trusteeship-lawyers-marda-loop/ → no permissions-policy
    • https://www.brunilaw.com/estate-planning-lawyers-marda-loop/ → no permissions-policy
    • https://www.brunilaw.com/estate-administration-lawyers-marda-loop/ → no permissions-policy
    • https://www.brunilaw.com/residential-real-estate-lawyers-marda-loop/ → no permissions-policy
    • https://www.brunilaw.com/estate-planning-blog/ → no permissions-policy
    • https://www.brunilaw.com/legal-consultation-marda-loop/ → 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 (92 responses)
    • x-powered-by: W3 Total Cache/2.9.4, PleskLin (51 responses)
    • x-powered-by: PleskLin (39 responses)
    • x-powered-by: PHP/7.3.25, PleskLin (2 responses)
  • FoundVulnerable JavaScript librariesMedium

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

    • Bootstrap 3.3.7 in https://www.brunilaw.com/wp-content/cache/minify/480/20276.js?x71477: CVE-2016-10735, CVE-2018-14040, CVE-2018-14041, CVE-2018-14042, CVE-2019-8331 (XSS through data attributes in tooltip, popover, collapse and scrollspy); fixed in 3.4.1
  • FoundKeys and secrets in page codeMedium

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

    • Google API key AIzaSy…UQ (39 chars) in https://www.brunilaw.com/legal-consultation-marda-loop/: 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 2 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.)

    • ajax.googleapis.com (12 script tags)
    • maps.googleapis.com (1 script tag)
5 checks passed, 2 not applicable
  • OKHTTPS

    All 12 crawled pages were served over HTTPS.

  • OKReferrer policy

    referrer-policy is set on all 12 HTML pages.

  • OKMixed content

    No HTTPS page loads a script, stylesheet, font or image over plain HTTP.

  • OKExposed files and listings

    None of the crawled URLs is a configuration file, backup, dump, repository folder or directory listing.

  • OKSensitive paths in robots.txt

    robots.txt does not point at admin, backup or private paths.

  • Not applicableCookie flags

    The crawl set no cookies, so there are no cookie flags to check.

  • Not applicableForms over HTTPS

    No forms were found on the sampled pages.

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

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