Skip to main content
Local BusinessMixed

SEO Report: jfmedier.dk

Generated २८ एप्रिल, २०२६ · 36 findings · 3.9s

79
report.overallScore
81
seo
82
security
0
performance
62
accessibility
86
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
81(+33 vs avg)
security
82(+20 vs avg)
performance
0(-50 vs avg)
accessibility
62(+6 vs avg)
Best Practices
86(+26 vs avg)

Score Projection

Estimated improvement based on the findings in this report

Current score: 79Projected score: 84
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

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

All Findings (34)

Critical (5)

  • highmeta

    Missing meta description

    No meta description tag found

    Add a meta description (120-160 characters)

  • 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

    3 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

  • highpage experience

    Intrusive interstitials detected

    Found 9 potential popup/overlay elements

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

  • highindexing checker

    Canonical points to different domain

    Canonical: https://jfm.dk/ points to jfm.dk

    Ensure the canonical URL points to the same domain unless cross-domain canonicalization is intended

Medium (17)

  • 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

    Title too short

    Title is 13 characters (recommended: 50-60)

    Write a more descriptive title (50-60 characters)

  • 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

    Missing @type in schema

    A structured data object has no @type

    Add a @type property (e.g. Organization, WebSite)

  • mediumsitemap

    Sitemap contains foreign URLs

    4 URLs belong to other domains

    Only include URLs from your own domain in the sitemap

  • mediumtechnology

    Render-blocking scripts

    4 scripts load synchronously without async/defer

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

  • mediumtechnology

    Mixed content detected

    1 resources loaded over HTTP on an HTTPS page

    Update all resource URLs to use HTTPS

  • mediumcontent

    External links without noopener

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

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

  • 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

  • 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

Low (12)

  • 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

    Missing permissions-policy

    Permissions-Policy is missing.

    Add Permissions-Policy to restrict browser feature access

  • lowheaders

    Missing Cache-Control header

    No Cache-Control header — browser caching is undefined

    Add Cache-Control with appropriate max-age for static and dynamic resources

  • lowmeta

    Missing og:description

    Open Graph description is not set

    Add og:description meta tag for social sharing

  • 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

  • lowmobile

    Missing autocomplete attributes

    3 form fields lack autocomplete hints

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

  • lowmobile

    Missing inputmode attributes

    3 numeric fields lack inputmode hints

    Add inputmode="numeric" or "tel" to show the right keyboard

  • 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 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 jfmedier.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": "jfmedier.dk",
  "scores": {
    "overall": 79,
    "performance": 0,
    "seo": 81,
    "accessibility": 62,
    "bestPractices": 86,
    "security": 82
  },
  "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": "meta",
      "severity": "medium",
      "title": "Title too short",
      "description": "Title is 13 characters (recommended: 50-60)",
      "recommendation": "Write a more descriptive title (50-60 characters)"
    },
    {
      "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": "Missing @type in schema",
      "description": "A structured data object has no @type",
      "recommendation": "Add a @type property (e.g. Organization, WebSite)"
    },
    {
      "module": "sitemap",
      "severity": "medium",
      "title": "Sitemap contains foreign URLs",
      "description": "4 URLs belong to other domains",
      "recommendation": "Only include URLs from your own domain in the sitemap"
    },
    {
      "module": "technology",
      "severity": "medium",
      "title": "Render-blocking scripts",
      "description": "4 scripts load synchronously without async/defer",
      "recommendation": "Add async or defer to non-critical scripts to improve page load speed"
    },
    {
      "module": "technology",
      "severity": "medium",
      "title": "Mixed content detected",
      "description": "1 resources loaded over HTTP on an HTTPS page",
      "recommendation": "Update all resource URLs to use HTTPS"
    },
    {
      "module": "content",
      "severity": "medium",
      "title": "External links without noopener",
      "description": "15 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 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 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": "3 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": "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": "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": "page-experience",
      "severity": "high",
      "title": "Intrusive interstitials detected",
      "description": "Found 9 potential popup/overlay elements",
      "recommendation": "Reduce intrusive interstitials — they hurt mobile experience and can trigger Google penalties"
    },
    {
      "module": "indexing-checker",
      "severity": "high",
      "title": "Canonical points to different domain",
      "description": "Canonical: https://jfm.dk/ points to jfm.dk",
      "recommendation": "Ensure the canonical URL points to the same domain unless cross-domain canonicalization is intended"
    }
  ]
}
```

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