SEO Report: buildnet.nl
Generated ၂၀၂၆ မေ ၁၁ · 34 findings · 3.7s
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 (29)
Critical (2)
- highheaders
Missing strict-transport-security
HSTS header is missing. The site may be vulnerable to downgrade attacks.
Add Strict-Transport-Security header with max-age of at least 31536000
- highreputation
Missing AggregateRating in schema
Found Organization schema without AggregateRating — missing rich snippet opportunity
Add aggregateRating with ratingValue, ratingCount, and bestRating to your structured data for star ratings in search results
Medium (15)
- mediumdns
SPF uses neutral policy (?all)
The SPF record uses a neutral policy (?all), which provides no protection against spoofing.
Change ?all to ~all (softfail) or -all (hardfail)
- 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-content-type-options
X-Content-Type-Options is missing. MIME-sniffing attacks are possible.
Add X-Content-Type-Options: nosniff header
- 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
- mediumstructured data
Missing @type in schema
A structured data object has no @type
Add a @type property (e.g. Organization, WebSite)
- mediumcontent
Very low text-to-HTML ratio
Text/HTML ratio is 1% (recommended: >5%)
Increase meaningful text content relative to HTML markup
- mediumcontent
External links without noopener
6 external links with target="_blank" lack rel="noopener"
Add rel="noopener noreferrer" to all target="_blank" links
- mediummobile
Fixed-width elements may cause horizontal scroll
1 elements have fixed widths > 400px
Use max-width: 100% or responsive units instead of fixed pixel widths
- 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
- mediumreputation
No review platform links found
No links to Trustpilot, Google Business, TripAdvisor, Yelp, G2, Capterra, or Glassdoor detected on the homepage
Add links to your review profiles to build trust signals and improve local SEO
- mediumreputation
LocalBusiness missing "address"
LocalBusiness/Organization schema found but "address" is not set
Add "address" to your LocalBusiness schema for better local search visibility
- mediumreputation
LocalBusiness missing "telephone"
LocalBusiness/Organization schema found but "telephone" is not set
Add "telephone" to your LocalBusiness schema for better local search visibility
- mediumreputation
LocalBusiness missing "openingHours"
LocalBusiness/Organization schema found but "openingHours" is not set
Add "openingHours" to your LocalBusiness schema for better local search visibility
- mediumreputation
LocalBusiness missing "geo"
LocalBusiness/Organization schema found but "geo" is not set
Add "geo" to your LocalBusiness schema for better local search visibility
- mediumreputation
LocalBusiness missing "priceRange"
LocalBusiness/Organization schema found but "priceRange" is not set
Add "priceRange" to your LocalBusiness schema for better local search visibility
Low (12)
- lowdns
No IPv6 (AAAA) records
The domain has no AAAA records for IPv6 connectivity
Add AAAA DNS records for IPv6 support
- lowdns
DMARC reporting not configured
DMARC record does not have a rua= tag for aggregate reports.
Add rua=mailto:[email protected] to receive DMARC reports
- 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
- lowstructured data
Missing Organization schema
No Organization or LocalBusiness structured data found
Add Organization schema with name, logo, and contact info
- lowstructured data
Missing WebSite schema
No WebSite structured data found
Add WebSite schema with SearchAction for sitelinks search box
- lowcontent
Lazy images without dimensions
1 lazy-loaded images lack width/height — causes layout shift
Add width and height attributes to lazy-loaded images
- lowmobile
Unresponsive images
6 images lack srcset or responsive sizing
Use srcset and sizes attributes for responsive images
- 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
- lowbrand checker
No web app manifest
No manifest.json linked — PWA features unavailable
Add a web app manifest for installability and brand customization
- lowpage experience
Popup elements detected
Found 1 popup/overlay element(s) — likely consent banners
Ensure popups don't cover main content excessively, especially on mobile
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 buildnet.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": "buildnet.nl",
"scores": {
"overall": 93,
"performance": 0,
"seo": 93,
"accessibility": 92,
"bestPractices": 97,
"security": 91
},
"findings": [
{
"module": "dns",
"severity": "medium",
"title": "SPF uses neutral policy (?all)",
"description": "The SPF record uses a neutral policy (?all), which provides no protection against spoofing.",
"recommendation": "Change ?all to ~all (softfail) or -all (hardfail)"
},
{
"module": "headers",
"severity": "high",
"title": "Missing strict-transport-security",
"description": "HSTS header is missing. The site may be vulnerable to downgrade attacks.",
"recommendation": "Add Strict-Transport-Security header with max-age of at least 31536000"
},
{
"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-content-type-options",
"description": "X-Content-Type-Options is missing. MIME-sniffing attacks are possible.",
"recommendation": "Add X-Content-Type-Options: nosniff header"
},
{
"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": "structured-data",
"severity": "medium",
"title": "Missing @type in schema",
"description": "A structured data object has no @type",
"recommendation": "Add a @type property (e.g. Organization, WebSite)"
},
{
"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": "content",
"severity": "medium",
"title": "External links without noopener",
"description": "6 external links with target=\"_blank\" lack rel=\"noopener\"",
"recommendation": "Add rel=\"noopener noreferrer\" to all target=\"_blank\" links"
},
{
"module": "mobile",
"severity": "medium",
"title": "Fixed-width elements may cause horizontal scroll",
"description": "1 elements have fixed widths > 400px",
"recommendation": "Use max-width: 100% or responsive units instead of fixed pixel widths"
},
{
"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": "reputation",
"severity": "medium",
"title": "No review platform links found",
"description": "No links to Trustpilot, Google Business, TripAdvisor, Yelp, G2, Capterra, or Glassdoor detected on the homepage",
"recommendation": "Add links to your review profiles to build trust signals and improve local SEO"
},
{
"module": "reputation",
"severity": "high",
"title": "Missing AggregateRating in schema",
"description": "Found Organization schema without AggregateRating — missing rich snippet opportunity",
"recommendation": "Add aggregateRating with ratingValue, ratingCount, and bestRating to your structured data for star ratings in search results"
},
{
"module": "reputation",
"severity": "medium",
"title": "LocalBusiness missing \"address\"",
"description": "LocalBusiness/Organization schema found but \"address\" is not set",
"recommendation": "Add \"address\" to your LocalBusiness schema for better local search visibility"
},
{
"module": "reputation",
"severity": "medium",
"title": "LocalBusiness missing \"telephone\"",
"description": "LocalBusiness/Organization schema found but \"telephone\" is not set",
"recommendation": "Add \"telephone\" to your LocalBusiness schema for better local search visibility"
},
{
"module": "reputation",
"severity": "medium",
"title": "LocalBusiness missing \"openingHours\"",
"description": "LocalBusiness/Organization schema found but \"openingHours\" is not set",
"recommendation": "Add \"openingHours\" to your LocalBusiness schema for better local search visibility"
},
{
"module": "reputation",
"severity": "medium",
"title": "LocalBusiness missing \"geo\"",
"description": "LocalBusiness/Organization schema found but \"geo\" is not set",
"recommendation": "Add \"geo\" to your LocalBusiness schema for better local search visibility"
},
{
"module": "reputation",
"severity": "medium",
"title": "LocalBusiness missing \"priceRange\"",
"description": "LocalBusiness/Organization schema found but \"priceRange\" is not set",
"recommendation": "Add \"priceRange\" to your LocalBusiness schema for better local search visibility"
}
]
}
```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.