Skip to main content
GeneralMixed

SEO Report: cph.dk

Generated 28 aprel 2026 · 43 findings · 9.1s

76
report.overallScore
65
seo
95
security
0
performance
62
accessibility
77
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
65(+20 vs avg)
security
95(+37 vs avg)
performance
0(-44 vs avg)
accessibility
62(+10 vs avg)
Best Practices
77(+21 vs avg)

Score Projection

Estimated improvement based on the findings in this report

Current score: 76Projected score: 83
Current score
Free (+3)
Starter (+1)
Pro (+3)

Ready to improve your SEO?

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

Module Breakdown

social checker
206 findings
structured data
301 finding
sitemap
301 finding
content
375 findings
meta
518 findings
accessibility
623 findings
page experience
653 findings
brand checker
704 findings
news mentions
841 finding
headers
852 findings
technology
851 finding
mobile
853 findings
uptime checker
851 finding
crawl budget
851 finding
dns
951 finding
rate limits
952 findings
cookies
100
ssl
100
robots
100
layout scan
100
indexing checker
100
log analyzer
100

All Findings (39)

Critical (7)

  • highsitemap

    Missing sitemap.xml

    No sitemap.xml found at the root

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

  • highcontent

    No H1 tag found

    The page has no H1 heading

    Add exactly one H1 tag with the primary keyword

  • highcontent

    Images missing alt text

    7 image(s) have no alt attribute

    Add descriptive alt text to all images for accessibility and SEO

  • highaccessibility

    7 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

    4 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

  • highpage experience

    Intrusive interstitials detected

    Found 6 potential popup/overlay elements

    Reduce intrusive interstitials — they hurt mobile experience and can trigger Google penalties

Medium (17)

  • mediumheaders

    CSP allows unsafe-eval

    Content-Security-Policy uses 'unsafe-eval' which allows dynamic code execution

    Remove 'unsafe-eval' and refactor code to avoid eval()

  • mediummeta

    Title too short

    Title is 19 characters (recommended: 50-60)

    Write a more descriptive title (50-60 characters)

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

  • mediummeta

    Missing charset declaration

    No charset meta tag found

    Add <meta charset="utf-8"> as first element in <head>

  • mediumstructured data

    No structured data found

    No JSON-LD schemas detected on the page

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

  • mediumtechnology

    Render-blocking scripts

    5 scripts load synchronously without async/defer

    Add async or defer to non-critical scripts to improve page load speed

  • mediumcontent

    Thin content

    Page has only 251 words (recommended: 300+)

    Add more meaningful content — aim for at least 300 words on key pages

  • mediumcontent

    Very low text-to-HTML ratio

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

    Increase meaningful text content relative to HTML markup

  • 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

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

  • mediumuptime checker

    Slow response time

    Average response time is 2013ms (should be < 2000ms)

    Optimize server response time — consider CDN, caching, or server upgrades

  • mediumbrand checker

    No Organization schema

    No Organization JSON-LD found

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

  • mediumcrawl budget

    No sitemap.xml found

    sitemap.xml returned HTTP 403

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

Low (15)

  • lowdns

    No IPv6 (AAAA) records

    The domain has no AAAA records for IPv6 connectivity

    Add AAAA DNS records for IPv6 support

  • lowmeta

    Meta description too long

    Description is 190 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

  • lowcontent

    Heading level skipped

    H6 follows H3 (skipped H4)

    Maintain sequential heading hierarchy without skipping levels

  • 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. Akamai WAF provides platform-level protection.

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

  • lownews mentions

    No press page on site

    Found 3 external mentions but no dedicated press page

    Create a /press or /news section to aggregate and amplify media coverage

  • lowsocial checker

    Missing og:type

    Open Graph type is not set

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

  • 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 WebSite schema

    No WebSite JSON-LD found

    Add WebSite structured data for sitelinks search box in Google

  • lowbrand checker

    No web app manifest

    No manifest.json linked — PWA features unavailable

    Add a web app manifest for installability and brand customization

  • 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

    No resource hints

    No preload or preconnect hints found

    Add preload for critical resources and preconnect for important third-party origins

  • lowpage experience

    No lazy loading on images

    7 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 cph.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": "cph.dk",
  "scores": {
    "overall": 76,
    "performance": 0,
    "seo": 65,
    "accessibility": 62,
    "bestPractices": 77,
    "security": 95
  },
  "findings": [
    {
      "module": "headers",
      "severity": "medium",
      "title": "CSP allows unsafe-eval",
      "description": "Content-Security-Policy uses 'unsafe-eval' which allows dynamic code execution",
      "recommendation": "Remove 'unsafe-eval' and refactor code to avoid eval()"
    },
    {
      "module": "meta",
      "severity": "medium",
      "title": "Title too short",
      "description": "Title is 19 characters (recommended: 50-60)",
      "recommendation": "Write a more descriptive title (50-60 characters)"
    },
    {
      "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": "meta",
      "severity": "medium",
      "title": "Missing charset declaration",
      "description": "No charset meta tag found",
      "recommendation": "Add <meta charset=\"utf-8\"> as first element in <head>"
    },
    {
      "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": "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": "technology",
      "severity": "medium",
      "title": "Render-blocking scripts",
      "description": "5 scripts load synchronously without async/defer",
      "recommendation": "Add async or defer to non-critical scripts to improve page load speed"
    },
    {
      "module": "content",
      "severity": "high",
      "title": "No H1 tag found",
      "description": "The page has no H1 heading",
      "recommendation": "Add exactly one H1 tag with the primary keyword"
    },
    {
      "module": "content",
      "severity": "medium",
      "title": "Thin content",
      "description": "Page has only 251 words (recommended: 300+)",
      "recommendation": "Add more meaningful content — aim for at least 300 words on key 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": "high",
      "title": "Images missing alt text",
      "description": "7 image(s) have no alt attribute",
      "recommendation": "Add descriptive alt text to all images for accessibility and SEO"
    },
    {
      "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": "high",
      "title": "7 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": "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": "4 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": "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": "uptime-checker",
      "severity": "medium",
      "title": "Slow response time",
      "description": "Average response time is 2013ms (should be < 2000ms)",
      "recommendation": "Optimize server response time — consider CDN, caching, or server upgrades"
    },
    {
      "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": "No sitemap.xml found",
      "description": "sitemap.xml returned HTTP 403",
      "recommendation": "Create a sitemap.xml to help search engines discover all pages"
    },
    {
      "module": "page-experience",
      "severity": "high",
      "title": "Intrusive interstitials detected",
      "description": "Found 6 potential popup/overlay elements",
      "recommendation": "Reduce intrusive interstitials — they hurt mobile experience and can trigger Google penalties"
    }
  ]
}
```

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