Skip to main content
GeneralMixed

SEO Report: tv2east.dk

Generated April 27, 2026 · 36 findings · 4.7s

67
report.overallScore
80
seo
62
security
0
performance
39
accessibility
88
Best Practices

Institutional websites prioritize accessibility, security, and proper indexing — citizens and stakeholders need easy access to relevant information.

Score Breakdown

Average General score: 50

seo
80(+35 vs avg)
security
62(+4 vs avg)
performance
0(-44 vs avg)
accessibility
39(-13 vs avg)
Best Practices
88(+32 vs avg)

Score Projection

Estimated improvement based on the findings in this report

Current score: 67Projected score: 72
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

ssl
01 finding
structured data
301 finding
accessibility
395 findings
headers
406 findings
content
644 findings
meta
673 findings
social checker
702 findings
rate limits
753 findings
uptime checker
751 finding
brand checker
802 findings
crawl budget
851 finding
log analyzer
851 finding
mobile
903 findings
dns
951 finding
sitemap
951 finding
page experience
951 finding
news mentions
96
cookies
100
robots
100
technology
100
layout scan
100
indexing checker
100

All Findings (35)

Critical (7)

  • highssl

    SSL certificate not found

    Could not retrieve SSL certificate

    Ensure the site has a valid SSL certificate installed

  • highmeta

    Missing meta description

    No meta description tag found

    Add a meta description (120-160 characters)

  • highcontent

    Images missing alt text

    1 image(s) have no alt attribute

    Add descriptive alt text to all images for accessibility and SEO

  • highaccessibility

    1 images missing alt attribute

    Images without alt text are inaccessible to screen readers

    Add descriptive alt text to all informational images, or alt="" for decorative ones

  • highaccessibility

    1 form fields without labels

    Form inputs without associated labels are inaccessible

    Use <label for="id"> or aria-label on every form field

  • highaccessibility

    66 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

  • highuptime checker

    No HTTPS redirect

    HTTP requests are not redirected to HTTPS

    Configure a 301 redirect from HTTP to HTTPS for all pages

Medium (14)

  • 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

  • mediummeta

    Missing og:image

    No Open Graph image set. Social shares will lack a preview image.

    Add og:image meta tag (1200x630px recommended)

  • mediumstructured data

    No structured data found

    No JSON-LD schemas detected on the page

    Add structured data (Organization, WebSite, BreadcrumbList) for rich search results

  • mediumcontent

    Low keyword relevance

    Only 0% of title keywords appear in body text

    Ensure the page content includes the keywords from the title

  • 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

  • mediumaccessibility

    Auto-playing media detected

    18 video/audio elements auto-play

    Avoid auto-playing media or ensure it has controls and is muted by default

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

  • mediumbrand checker

    No Organization schema

    No Organization JSON-LD found

    Add Organization structured data with name, logo, and contact information

  • mediumcrawl budget

    Potential crawl traps

    Found 1 URLs with faceted/pagination patterns

    Consider blocking these URL patterns via robots.txt to preserve crawl budget

  • mediumlog analyzer

    X-Powered-By header exposed

    X-Powered-By: PHP/8.3.30

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

Low (14)

  • lowdns

    No IPv6 (AAAA) records

    The domain has no AAAA records for IPv6 connectivity

    Add AAAA DNS records for IPv6 support

  • 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

    HSTS max-age too short

    HSTS max-age is 300s (recommended: 31536000)

    Set max-age to at least 31536000 (1 year)

  • lowheaders

    X-Powered-By exposes technology

    X-Powered-By: PHP/8.3.30

    Remove the X-Powered-By header

  • lowmeta

    Missing og:description

    Open Graph description is not set

    Add og:description meta tag for social sharing

  • lowsitemap

    No lastmod dates

    Sitemap URLs don't include lastmod timestamps

    Add <lastmod> to help search engines prioritize crawling

  • lowcontent

    Low text-to-HTML ratio

    Text/HTML ratio is 3% (recommended: >5%)

    Consider adding more descriptive text content

  • lowcontent

    Empty anchor links

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

    Use proper URLs or button elements instead of empty anchors

  • lowmobile

    Missing autocomplete attributes

    1 form fields lack autocomplete hints

    Add autocomplete attributes (email, tel, name) for faster mobile form filling

  • lowmobile

    Unresponsive images

    32 images lack srcset or responsive sizing

    Use srcset and sizes attributes for responsive images

  • 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

  • lowbrand checker

    No WebSite schema

    No WebSite JSON-LD found

    Add WebSite structured data for sitelinks search box in Google

  • 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

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 tv2east.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": "tv2east.dk",
  "scores": {
    "overall": 67,
    "performance": 0,
    "seo": 80,
    "accessibility": 39,
    "bestPractices": 88,
    "security": 62
  },
  "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-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": "ssl",
      "severity": "high",
      "title": "SSL certificate not found",
      "description": "Could not retrieve SSL certificate",
      "recommendation": "Ensure the site has a valid SSL certificate installed"
    },
    {
      "module": "meta",
      "severity": "high",
      "title": "Missing meta description",
      "description": "No meta description tag found",
      "recommendation": "Add a meta description (120-160 characters)"
    },
    {
      "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": "structured-data",
      "severity": "medium",
      "title": "No structured data found",
      "description": "No JSON-LD schemas detected on the page",
      "recommendation": "Add structured data (Organization, WebSite, BreadcrumbList) for rich search results"
    },
    {
      "module": "content",
      "severity": "high",
      "title": "Images missing alt text",
      "description": "1 image(s) have no alt attribute",
      "recommendation": "Add descriptive alt text to all images for accessibility and SEO"
    },
    {
      "module": "content",
      "severity": "medium",
      "title": "Low keyword relevance",
      "description": "Only 0% of title keywords appear in body text",
      "recommendation": "Ensure the page content includes the keywords from the title"
    },
    {
      "module": "accessibility",
      "severity": "high",
      "title": "1 images missing alt attribute",
      "description": "Images without alt text are inaccessible to screen readers",
      "recommendation": "Add descriptive alt text to all informational images, or alt=\"\" for decorative ones"
    },
    {
      "module": "accessibility",
      "severity": "high",
      "title": "1 form fields without labels",
      "description": "Form inputs without associated labels are inaccessible",
      "recommendation": "Use <label for=\"id\"> or aria-label on every form field"
    },
    {
      "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": "66 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": "accessibility",
      "severity": "medium",
      "title": "Auto-playing media detected",
      "description": "18 video/audio elements auto-play",
      "recommendation": "Avoid auto-playing media or ensure it has controls and is muted by default"
    },
    {
      "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": "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": "uptime-checker",
      "severity": "high",
      "title": "No HTTPS redirect",
      "description": "HTTP requests are not redirected to HTTPS",
      "recommendation": "Configure a 301 redirect from HTTP to HTTPS for all pages"
    },
    {
      "module": "brand-checker",
      "severity": "medium",
      "title": "No Organization schema",
      "description": "No Organization JSON-LD found",
      "recommendation": "Add Organization structured data with name, logo, and contact information"
    },
    {
      "module": "crawl-budget",
      "severity": "medium",
      "title": "Potential crawl traps",
      "description": "Found 1 URLs with faceted/pagination patterns",
      "recommendation": "Consider blocking these URL patterns via robots.txt to preserve crawl budget"
    },
    {
      "module": "log-analyzer",
      "severity": "medium",
      "title": "X-Powered-By header exposed",
      "description": "X-Powered-By: PHP/8.3.30",
      "recommendation": "Remove the X-Powered-By header to reduce information leakage"
    }
  ]
}
```

Recommendations for your industry

  • 1Ensure WCAG 2.1 AA compliance
  • 2Implement all recommended security headers
  • 3Ensure sitemap covers all important pages
  • 4Optimize page load time to under 2 seconds
  • 5Ensure responsive design on all pages

SEO Checklist for General

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