Skip to main content
Local BusinessMixed

SEO Report: sunweb.dk

Generated Abriil 28, 2026 · 39 findings · 4.6s

82
report.overallScore
83
seo
84
security
0
performance
77
accessibility
82
Best Practices

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

seo
83(+35 vs avg)
security
84(+22 vs avg)
performance
0(-50 vs avg)
accessibility
77(+21 vs avg)
Best Practices
82(+22 vs avg)

Score Projection

Estimated improvement based on the findings in this report

Current score: 82Projected score: 87
Current score
Free (+2)
Starter (+1)
Pro (+2)

Ready to improve your SEO?

Start a free trial and see how your score can improve.

Module Breakdown

social checker
255 findings
sitemap
301 finding
headers
555 findings
content
645 findings
meta
715 findings
rate limits
753 findings
accessibility
772 findings
mobile
802 findings
crawl budget
851 finding
log analyzer
851 finding
dns
902 findings
page experience
902 findings
technology
951 finding
brand checker
951 finding
cookies
100
ssl
100
structured data
1002 findings
robots
100
layout scan
100
news mentions
1001 finding
uptime checker
100
indexing checker
100

All Findings (36)

Critical (3)

  • highsitemap

    Missing sitemap.xml

    No sitemap.xml found at the root

    Create a sitemap.xml to help search engines discover all pages

  • highaccessibility

    9 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

  • highsocial checker

    Missing og:title

    Open Graph title is not set — social shares will use generic text

    Add og:title meta tag for compelling social media previews

Medium (16)

  • 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:title

    Open Graph title is not set

    Add og:title meta tag for social sharing

  • 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

  • mediumcontent

    External links without noopener

    10 external links with target="_blank" lack rel="noopener"

    Add rel="noopener noreferrer" to all target="_blank" links

  • mediumcontent

    Low keyword relevance

    Only 33% of title keywords appear in body text

    Ensure the page content includes the keywords from the title

  • mediummobile

    Viewport missing width=device-width

    Viewport does not set width=device-width

    Set width=device-width in viewport meta tag

  • mediummobile

    Zoom disabled

    Viewport prevents user zoom — accessibility issue

    Remove maximum-scale=1 and user-scalable=no to allow pinch-to-zoom

  • 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

  • mediumrate limits

    No rate limiting detected

    10 rapid requests all succeeded without any rate-limit headers or 429 responses. The site may be vulnerable to abuse.

    Implement rate limiting (e.g., 429 Too Many Requests) to protect against brute-force attacks

  • mediumsocial checker

    Missing og:description

    Open Graph description is not set

    Add og:description for better social sharing previews

  • 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")

  • mediumcrawl budget

    No sitemap.xml found

    sitemap.xml returned HTTP 404

    Create a sitemap.xml to help search engines discover all pages

  • mediumlog analyzer

    X-Powered-By header exposed

    X-Powered-By: Next.js

    Remove the X-Powered-By header to reduce information leakage

Low (17)

  • lowdns

    No IPv6 (AAAA) records

    The domain has no AAAA records for IPv6 connectivity

    Add AAAA DNS records for IPv6 support

  • lowdns

    DMARC policy is 'none'

    DMARC is set but policy is 'none' (monitoring only).

    Consider upgrading DMARC policy to 'quarantine' or 'reject'

  • 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

    X-Powered-By exposes technology

    X-Powered-By: Next.js

    Remove the X-Powered-By header

  • lowmeta

    Meta description too long

    Description is 182 characters (recommended: 120-160)

    Shorten the meta description to 120-160 characters

  • lowmeta

    Missing og:description

    Open Graph description is not set

    Add og:description meta tag for social sharing

  • lowmeta

    Missing Twitter Card

    No twitter:card meta tag

    Add twitter:card meta tag for Twitter sharing

  • lowtechnology

    Many third-party domains

    19 external domains — may impact performance and privacy

    Reduce third-party dependencies or self-host critical resources

  • lowcontent

    Heading level skipped

    H5 follows H3 (skipped H4)

    Maintain sequential heading hierarchy without skipping levels

  • lowcontent

    Empty anchor links

    30 links point to "#" or "javascript:void(0)"

    Use proper URLs or button elements instead of empty anchors

  • lowrate limits

    No WAF detected

    No Web Application Firewall (Cloudflare, AWS, Akamai, Vercel, Sucuri, Fastly) was detected in response headers.

    Consider using a WAF to protect against common web attacks (XSS, SQL injection, DDoS)

  • lowrate limits

    No bot protection detected

    No CAPTCHA, challenge page, or bot detection was triggered during rapid requests.

    Consider implementing bot protection (e.g., Cloudflare Turnstile, hCaptcha) for sensitive endpoints

  • lowsocial checker

    Missing og:type

    Open Graph type is not set

    Add og:type meta tag (e.g., "website", "article")

  • lowbrand checker

    Missing og:site_name

    Open Graph site name is not set

    Add og:site_name meta tag for consistent social sharing

  • lowpage experience

    Popup elements detected

    Found 2 popup/overlay element(s) — likely consent banners

    Ensure popups don't cover main content excessively, especially on mobile

  • lowpage experience

    No lazy loading on images

    20 images without lazy loading

    Add loading="lazy" to below-the-fold images for faster initial page load

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 sunweb.dk.

Prioritize high-severity issues first, then medium. For each fix, make the actual code change — don't just describe what to do.

```json
{
  "domain": "sunweb.dk",
  "scores": {
    "overall": 82,
    "performance": 0,
    "seo": 83,
    "accessibility": 77,
    "bestPractices": 82,
    "security": 84
  },
  "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:title",
      "description": "Open Graph title is not set",
      "recommendation": "Add og:title meta tag for social sharing"
    },
    {
      "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": "sitemap",
      "severity": "high",
      "title": "Missing sitemap.xml",
      "description": "No sitemap.xml found at the root",
      "recommendation": "Create a sitemap.xml to help search engines discover all pages"
    },
    {
      "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": "10 external links with target=\"_blank\" lack rel=\"noopener\"",
      "recommendation": "Add rel=\"noopener noreferrer\" to all target=\"_blank\" links"
    },
    {
      "module": "content",
      "severity": "medium",
      "title": "Low keyword relevance",
      "description": "Only 33% of title keywords appear in body text",
      "recommendation": "Ensure the page content includes the keywords from the title"
    },
    {
      "module": "mobile",
      "severity": "medium",
      "title": "Viewport missing width=device-width",
      "description": "Viewport does not set width=device-width",
      "recommendation": "Set width=device-width in viewport meta tag"
    },
    {
      "module": "mobile",
      "severity": "medium",
      "title": "Zoom disabled",
      "description": "Viewport prevents user zoom — accessibility issue",
      "recommendation": "Remove maximum-scale=1 and user-scalable=no to allow pinch-to-zoom"
    },
    {
      "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": "9 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": "rate-limits",
      "severity": "medium",
      "title": "No rate limiting detected",
      "description": "10 rapid requests all succeeded without any rate-limit headers or 429 responses. The site may be vulnerable to abuse.",
      "recommendation": "Implement rate limiting (e.g., 429 Too Many Requests) to protect against brute-force attacks"
    },
    {
      "module": "social-checker",
      "severity": "high",
      "title": "Missing og:title",
      "description": "Open Graph title is not set — social shares will use generic text",
      "recommendation": "Add og:title meta tag for compelling social media previews"
    },
    {
      "module": "social-checker",
      "severity": "medium",
      "title": "Missing og:description",
      "description": "Open Graph description is not set",
      "recommendation": "Add og:description for better social sharing previews"
    },
    {
      "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": "crawl-budget",
      "severity": "medium",
      "title": "No sitemap.xml found",
      "description": "sitemap.xml returned HTTP 404",
      "recommendation": "Create a sitemap.xml to help search engines discover all pages"
    },
    {
      "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

In Denmark, Google dominates with 95%+ market share. Focus on local searches and Danish language quality.

Start your free trial

Use Ctrl+P / Cmd+P to save as PDF