SEO Report: hellotv.nl
Generated May 1, 2026 Β· 31 findings Β· 5.2s
Service businesses need to dominate local search results with correct NAP data, reviews, and local signals to attract nearby customers.
Score Breakdown
Average Local Business score: 54
Score Projection
Estimated improvement based on the findings in this report
Ready to improve your SEO?
Start a free trial and see how your score can improve.
Module Breakdown
All Findings (26)
Critical (1)
- highaccessibility
6 buttons without accessible name
Buttons with no text, aria-label, or title are invisible to screen readers
Add visible text or aria-label to all buttons
Medium (8)
- mediumheaders
Missing content-security-policy
CSP header is missing. The site may be vulnerable to XSS attacks.
Add a Content-Security-Policy header to restrict resource loading
- mediumheaders
Missing x-frame-options
X-Frame-Options is missing. The site may be vulnerable to clickjacking.
Add X-Frame-Options: DENY or SAMEORIGIN header
- mediummeta
Missing og:image
No Open Graph image set. Social shares will lack a preview image.
Add og:image meta tag (1200x630px recommended)
- mediumcontent
Very low text-to-HTML ratio
Text/HTML ratio is 1% (recommended: >5%)
Increase meaningful text content relative to HTML markup
- mediumaccessibility
No skip navigation link
No skip-to-content link at the top of the page
Add a visually hidden skip link as the first focusable element
- mediumsocial checker
Missing og:image
No social sharing image set β posts will lack visual appeal
Add og:image meta tag (1200x630px recommended)
- mediumsocial checker
Missing Twitter Card
No twitter:card meta tag β Twitter/X will use default preview
Add twitter:card meta tag (e.g., "summary_large_image")
- mediumlog analyzer
X-Powered-By header exposed
X-Powered-By: Next.js
Remove the X-Powered-By header to reduce information leakage
Low (17)
- lowcookies
1 cookie missing SameSite attribute
Missing SameSite defaults to Lax in modern browsers but should be explicit
Set SameSite=Strict or SameSite=Lax on all cookies
- lowdns
DMARC policy is 'none'
DMARC is set but policy is 'none' (monitoring only).
Consider upgrading DMARC policy to 'quarantine' or 'reject'
- lowdns
Only one MX record (no redundancy)
A single MX record means no failover if the mail server goes down.
Add a secondary MX record for email redundancy
- lowheaders
Missing referrer-policy
Referrer-Policy is not set. Full URLs may leak to third parties.
Add Referrer-Policy: strict-origin-when-cross-origin
- lowheaders
Missing permissions-policy
Permissions-Policy is missing.
Add Permissions-Policy to restrict browser feature access
- lowheaders
HSTS max-age too short
HSTS max-age is 15552000s (recommended: 31536000)
Set max-age to at least 31536000 (1 year)
- lowheaders
X-Powered-By exposes technology
X-Powered-By: Next.js
Remove the X-Powered-By header
- lowmeta
Missing Twitter Card
No twitter:card meta tag
Add twitter:card meta tag for Twitter sharing
- lowstructured data
Organization missing logo
Organization schema has no logo
Add a logo URL to the Organization schema
- lowstructured data
Organization missing url
Organization schema has no url
Add the website URL to the Organization schema
- lowcontent
Heading level skipped
H6 follows H4 (skipped H5)
Maintain sequential heading hierarchy without skipping levels
- lowcontent
Empty anchor links
24 links point to "#" or "javascript:void(0)"
Use proper URLs or button elements instead of empty anchors
- lowmobile
Viewport missing initial-scale
Viewport does not set initial-scale
Add initial-scale=1 to viewport meta tag
- lowrate limits
No rate limiting detected
No explicit rate-limit headers or 429 responses detected. Cloudflare WAF provides platform-level protection.
Implement rate limiting (e.g., 429 Too Many Requests) to protect against brute-force attacks
- lownews mentions
No press or news presence
No press pages found on the site and no external news mentions detected
Create a /news or /press page with company updates β this builds authority and earns links
- lowsocial checker
No social profile links
No links to social media profiles found on the homepage
Add links to your social media profiles for better brand visibility and authority signals
- lowbrand checker
No web app manifest
No manifest.json linked β PWA features unavailable
Add a web app manifest for installability and brand customization
AI Fix Prompt
Copy this prompt into ChatGPT or Claude to get step-by-step fix instructions
Fix all SEO issues found in the audit of hellotv.nl.
Prioritize high-severity issues first, then medium. For each fix, make the actual code change β don't just describe what to do.
```json
{
"domain": "hellotv.nl",
"scores": {
"overall": 87,
"performance": 0,
"seo": 92,
"accessibility": 77,
"bestPractices": 92,
"security": 86
},
"findings": [
{
"module": "headers",
"severity": "medium",
"title": "Missing content-security-policy",
"description": "CSP header is missing. The site may be vulnerable to XSS attacks.",
"recommendation": "Add a Content-Security-Policy header to restrict resource loading"
},
{
"module": "headers",
"severity": "medium",
"title": "Missing x-frame-options",
"description": "X-Frame-Options is missing. The site may be vulnerable to clickjacking.",
"recommendation": "Add X-Frame-Options: DENY or SAMEORIGIN header"
},
{
"module": "meta",
"severity": "medium",
"title": "Missing og:image",
"description": "No Open Graph image set. Social shares will lack a preview image.",
"recommendation": "Add og:image meta tag (1200x630px recommended)"
},
{
"module": "content",
"severity": "medium",
"title": "Very low text-to-HTML ratio",
"description": "Text/HTML ratio is 1% (recommended: >5%)",
"recommendation": "Increase meaningful text content relative to HTML markup"
},
{
"module": "accessibility",
"severity": "medium",
"title": "No skip navigation link",
"description": "No skip-to-content link at the top of the page",
"recommendation": "Add a visually hidden skip link as the first focusable element"
},
{
"module": "accessibility",
"severity": "high",
"title": "6 buttons without accessible name",
"description": "Buttons with no text, aria-label, or title are invisible to screen readers",
"recommendation": "Add visible text or aria-label to all buttons"
},
{
"module": "social-checker",
"severity": "medium",
"title": "Missing og:image",
"description": "No social sharing image set β posts will lack visual appeal",
"recommendation": "Add og:image meta tag (1200x630px recommended)"
},
{
"module": "social-checker",
"severity": "medium",
"title": "Missing Twitter Card",
"description": "No twitter:card meta tag β Twitter/X will use default preview",
"recommendation": "Add twitter:card meta tag (e.g., \"summary_large_image\")"
},
{
"module": "log-analyzer",
"severity": "medium",
"title": "X-Powered-By header exposed",
"description": "X-Powered-By: Next.js",
"recommendation": "Remove the X-Powered-By header to reduce information leakage"
}
]
}
```Recommendations for your industry
- 1Optimize Google Business profile
- 2Add Service/LocalBusiness schema
- 3Integrate customer reviews with Review schema
- 4Ensure consistent NAP data across all pages
- 5Create profiles in local business directories
SEO Checklist for Local Business
Tips for Mixed websites
- βDefine clear landing pages for each segment
- βUse different meta strategies per page group
- βSegment sitemap by content type
Local SEO Context
The Netherlands is one of Europe's most digitally mature markets with high mobile share.