/ / d / internet.nl
internet.nl
60 / 100
overall · band: medium
Categories
Security61/ 100 · 8 measured
Performance87/ 100 · 9 measured
SEO41/ 100 · 7 measured
AI-readiness25/ 100 · 4 measured
Privacy50/ 100 · 6 measured
Accessibility83/ 100 · 6 measured
Brand presence26/ 100 · 17 measured
Email health48/ 100 · 16 measured
Site facts
- Snapshot date
- 2026-04-26
- Factors scored
- 73 / 86
- Composite score
- 60/100
- Method version
- v0.1 — 2026-04-25
Security· 61/100
| # | Factor | Verdict | Score | Evidence |
|---|---|---|---|---|
| 4 | Security headers (HSTS, CSP, X-Frame-Options, Referrer-Policy, Permissions-Policy, X-Content-Type-Options) | pass | 90 | security_headers_score=90, missing=Permissions-Policy |
| 5 | SSL certificate validity & expiration window | n/a | — | Scoring not yet implemented |
| 6 | WordPress REST API user enumeration exposure | pass | 100 | not_wordpress |
| 7 | Sensitive path exposure (.git, .env, /admin, xmlrpc.php, wp-login.php) | pass | 100 | total_checked=6 |
| 22 | DNSSEC validation | pass | 100 | ds_present=true, ad_bit=true, ds_records={"name":"internet.nl","type":43,"TTL":3600,"data":"22707 ECDSAP256SHA256 2 a69c3d2d414e4ef8ceaa66d39d90ed2b20ef36d9f4007d678cea0c0d803a0b7e"} |
| 23 | CAA records | fail | 0 | records=\# 34 00 05 69 6f 64 65 66 6d 61 69 6c 74 6f 3a 71 75 65 73 74 69 6f 6e 40 69 6e 74 65 72 6e 65 74 2e 6e 6c|\# 60 00 05 69 73 73 75 65 6c 65 74 73 65 6e 63 72 79 70 74 2e 6f 72 67 3b 76 61 6c 69 64 61 74 69 6f 6e 6d 65 74 68 6f 64 73 3d 68 7… |
| 26 | HSTS preload list inclusion | fail | 0 | hsts_header=max-age=31536000, preload_status=unknown |
| 27 | TLS minimum version & cipher suite quality | n/a | — | Scoring not yet implemented |
| 28 | Subdomain takeover surface | pass | 100 | dangling_count=0 |
| 29 | Spam / phishing blocklist presence | fail | 0 | listed=true, response_code=0, answers=127.255.255.254 |
Performance· 87/100
| # | Factor | Verdict | Score | Evidence |
|---|---|---|---|---|
| 8 | Mobile PageSpeed score + Core Web Vitals (LCP, FCP, CLS) | pass | 87 | performance_score=89, lcp_ms=1930.0691115463756, cls=0.196278, components={"perf":89,"lcp":100,"cls":70} |
| 9 | HTTP/2 support | pass | 100 | perf_http2=true |
| 10 | Compression (Brotli / gzip) | n/a | — | Scoring not yet implemented |
| 30 | HTTP/3 support | pass | 100 | source=alt_svc, alt_svc=h3=":443"; ma=86400, supports_h3=true |
| 31 | IPv6 support | pass | 100 | aaaa_count=1, aaaa=2a00:d00:ff:162:62:204:66:10 |
| 32 | Image optimization (WebP/AVIF) | pass | 100 | id=image-delivery-insight, lighthouse_score=1 |
| 33 | Desktop PageSpeed score | n/a | — | Scoring not yet implemented |
| 34 | Core Web Vitals from CrUX (Real User Monitoring) | n/a | — | Scoring not yet implemented |
| 35 | Lazy loading on below-fold images | pass | 100 | id=image-delivery-insight, lighthouse_score=1 |
| 36 | Font loading strategy (FOUT/FOIT/swap) | fail | 0 | id=font-display-insight, lighthouse_score=0 |
| 37 | Total homepage byte weight | pass | 100 | html_bytes=11455, subresource_bytes=128715, total_bytes=140170, total_kb=137, sampled=9, total_refs=9 |
| 38 | Largest unused JavaScript bundle | pass | 100 | deferred_scripts=3, sample=/static/js/imagecheck-min.js|/static/js/menu-min.js|/static/js/accordion-min.js |
SEO· 41/100
| # | Factor | Verdict | Score | Evidence |
|---|---|---|---|---|
| 11 | Title, meta description, OG, Twitter cards, canonical | fail | 40 | title=true, description=true, og=false, twitter=false, canonical=false |
| 12 | Schema.org structured data presence | fail | 0 | structured_data_absent |
| 13 | H1 tag presence | pass | 100 | h1_count=1, h1_text=Home |
| 14 | Sitemap.xml + robots.txt presence | warn | 50 | has_robots_txt=true, has_sitemap=false |
| 39 | Schema.org type validity (parsed JSON-LD) | n/a | — | Scoring not yet implemented |
| 40 | Breadcrumb schema | fail | 0 | present=false |
| 41 | FAQ / HowTo schema (where applicable) | n/a | — | n/a — not_applicable |
| 42 | hreflang for multi-language sites | n/a | — | n/a — single_language |
| 43 | Internal link depth (clicks from homepage to deepest content) | pass | 100 | max_depth=2, pages_fetched=50, pages_seen=226, capped_at=50 |
| 61 | Better Business Bureau accreditation | fail | 0 | no_link_on_site |
AI-readiness· 25/100
| # | Factor | Verdict | Score | Evidence |
|---|---|---|---|---|
| 15 | llms.txt presence | fail | 0 | has_llms_txt=false |
| 16 | AI crawler robots.txt directives | pass | 100 | robots_ai_blocked_count=0 |
| 44 | AI plugin manifest (.well-known/ai-plugin.json) | fail | 0 | status=404 |
| 45 | JSON-LD richness score for LLMs | fail | 0 | org_complete=false, has_address=false, has_contact_point=false, has_same_as=false, has_content_type=false, breakdown={"coreOrg":0,"contact":0,"sameAs":0,"contentType":0} |
Privacy· 50/100
| # | Factor | Verdict | Score | Evidence |
|---|---|---|---|---|
| 46 | Cookie banner presence + CMP detection | fail | 0 | banner_detected=false |
| 47 | Privacy policy page presence | pass | 100 | found=true, href=/privacy/, text=Privacy statement |
| 48 | Terms of service page presence | fail | 0 | found=false |
| 49 | Third-party tracker count | pass | 100 | count=0 |
| 50 | CCPA "Do Not Sell or Share My Personal Information" link | fail | 0 | found=false |
| 51 | Cookie scan — actual cookies set on first load | pass | 100 | count=0, with_cmp=false |
Accessibility· 83/100
| # | Factor | Verdict | Score | Evidence |
|---|---|---|---|---|
| 52 | Accessibility statement page | fail | 0 | found=false |
| 53 | axe-core / WAVE accessibility scan | pass | 100 | accessibility_category=1 |
| 54 | Image alt text coverage | pass | 100 | lighthouse_score=1, failing_count=0 |
| 55 | Heading hierarchy validity | pass | 100 | lighthouse_score=1 |
| 56 | Color contrast (WCAG AA) | pass | 100 | lighthouse_score=1, failing_count=0 |
| 57 | ARIA labels presence and validity | pass | 100 | total_aria_audits=22, applicable=7, passing=7 |
| 58 | Skip-to-content link | n/a | — | Scoring not yet implemented |
Brand presence· 26/100
| # | Factor | Verdict | Score | Evidence |
|---|---|---|---|---|
| 17 | Domain age (RDAP / WHOIS) | pass | 100 | domain_age_years=21 |
| 18 | Wayback Machine site age & last snapshot | warn | 65 | first_snapshot=2005-10-26T00:53:31Z, last_snapshot=2005-10-26T00:53:31Z, estimated_age_years=20.5, first_years_ago=20.5008493261845, last_days_ago=7487.935216388889 |
| 19 | Google Business Profile presence + rating | fail | 0 | found=false |
| 20 | News mentions in last 30 days | fail | 20 | news_mentions_count=0 |
| 21 | Wikipedia entity | fail | 0 | found=false |
| 59 | Yelp presence + rating + review count | fail | 0 | no_link_on_site |
| 60 | Trustpilot presence + rating | fail | 0 | no_link_on_site |
| 62 | LinkedIn Company Page (presence + employee count + follower count) | pass | 100 | url=https://www.linkedin.com/company/internet-nl/ |
| 63 | Bing Places | n/a | — | n/a — no_public_url_convention |
| 64 | Apple Maps presence (Apple Business Connect) | fail | 0 | no_link_on_site |
| 65 | Facebook Page presence | fail | 0 | no_link_on_site |
| 66 | Instagram presence (link from site → IG profile) | fail | 0 | no_link_on_site |
| 67 | Web App Manifest (manifest.json) | n/a | — | Scoring not yet implemented |
| 68 | Service Worker / PWA capability | n/a | — | Scoring not yet implemented |
| 69 | Analytics tools detected | fail | 0 | count=0 |
| 70 | Payment processors detected | n/a | — | n/a — no_payment_detected |
| 71 | Marketing automation tools detected | fail | 0 | count=0 |
| 72 | Customer support tools detected | fail | 0 | count=0 |
| 73 | Tag manager presence | warn | 50 | count=0 |
| 74 | Ad networks detected | pass | 100 | count=0 |
| 83 | Visible contact form on site | fail | 0 | detected=false, count=0 |
Email health· 48/100
| # | Factor | Verdict | Score | Evidence |
|---|---|---|---|---|
| 1 | DMARC enforcement | pass | 100 | present=true, policy=reject |
| 2 | DKIM signing | fail | 0 | present=false |
| 3 | SPF record present and valid | pass | 100 | present=true, raw="v=spf1 a include:spfinc.prolocation.net ~all", qualifier=softfail |
| 24 | MTA-STS & TLS-RPT | fail | 0 | policy_ok=false |
| 25 | BIMI + VMC | fail | 0 | no_bimi |
| 75 | Branded domain email address (vs free Gmail/Yahoo) | pass | 100 | branded=true, provider=generic |
| 76 | Email provider class (Workspace / 365 / Zoho / self-hosted / shared) | warn | 70 | provider=unclassified_enterprise, mx=vmx01.prolocation.nl|vmx02.prolocation.nl|vmx03.prolocation.net, source=mx_classifier |
| 77 | DMARC aggregate reporting enabled (rua=) | pass | 100 | has_dmarc_reporting=true, audit_flag=true, derived_from_raw=true, source=derived_from_raw, dmarc_raw="v=DMARC1; p=reject; sp=reject; rua=mailto:dmarc-rua@internet.nl" |
| 78 | Free-email exposure on contact page (gmail/yahoo/outlook visible) | pass | 100 | Scored |
| 79 | Newsletter signup form detected | fail | 0 | detected=false |
| 80 | Email Service Provider (ESP) detected | fail | 0 | Scored |
| 81 | Transactional email provider detected (from SPF includes) | fail | 0 | Scored |
| 82 | SPF lookup count (10-limit deliverability check) | pass | 100 | lookups=3, limit=10 |
| 84 | Mailto: direct contact link present | fail | 0 | Scored |
| 85 | Email forwarding service detected (improvmx, forwardemail, etc.) | pass | 100 | hosts=vmx01.prolocation.nl|vmx02.prolocation.nl|vmx03.prolocation.net, kind=unknown |
| 86 | Lead magnet / signup incentive detected (free download, ebook, etc.) | fail | 0 | detected=false |
Scores are computed under method v0.1 — 2026-04-25. See the methodology for the full factor list and per-factor specifications.