Skip to main content
Local BusinessMixed

SEO Report: cykelexperten.dk

Generated April 28, 2026 · 30 findings · 13.2s

76
report.overallScore
88
seo
69
security
0
performance
55
accessibility
90
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
88(+40 vs avg)
security
69(+7 vs avg)
performance
0(-50 vs avg)
accessibility
55(-1 vs avg)
Best Practices
90(+30 vs avg)

Score Projection

Estimated improvement based on the findings in this report

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

Ready to improve your SEO?

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

Module Breakdown

cookies
01 finding
cookies
01 finding
content
545 findings
accessibility
553 findings
structured data
686 findings
headers
753 findings
mobile
753 findings
rate limits
753 findings
page experience
751 finding
robots
851 finding
brand checker
902 findings
news mentions
93
dns
951 finding
cookies
100
ssl
100
meta
100
sitemap
100
layout scan
100
uptime checker
100
crawl budget
100
indexing checker
100
log analyzer
100

All Findings (29)

Critical (7)

  • highcookies

    Module failed

    The operation was aborted due to timeout

    Try scanning again

  • 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

    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

  • highcookies

    Module failed

    The operation was aborted due to timeout

    Try scanning again

  • highpage experience

    Intrusive interstitials detected

    Found 12 potential popup/overlay elements

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

Medium (8)

  • 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

  • mediumstructured data

    Organization missing name

    Organization schema has no name property

    Add a name to the Organization schema

  • mediumrobots

    No sitemap in robots.txt

    robots.txt does not reference a sitemap

    Add Sitemap: https://yourdomain.com/sitemap.xml to robots.txt

  • 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

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

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

  • mediummobile

    5 small tap targets detected

    Some interactive elements may be too small for comfortable tapping

    Ensure all tap targets are at least 44x44px with adequate spacing

  • mediummobile

    Small font sizes detected

    25 elements have font-size below 12px

    Use minimum 16px for body text and 12px for secondary text on mobile

  • 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

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 permissions-policy

    Permissions-Policy is missing.

    Add Permissions-Policy to restrict browser feature access

  • lowheaders

    Server header exposes software

    Server: nginx

    Remove or obfuscate the Server header to reduce information leakage

  • lowstructured data

    Missing WebSite schema

    No WebSite structured data found

    Add WebSite schema with SearchAction for sitelinks search box

  • lowstructured data

    Organization missing logo

    Organization schema has no logo

    Add a logo URL to the Organization schema

  • lowstructured data

    Organization missing logo

    Organization schema has no logo

    Add a logo URL to the Organization schema

  • lowstructured data

    Organization missing url

    Organization schema has no url

    Add the website URL to the Organization schema

  • lowcontent

    Heading level skipped

    H5 follows H3 (skipped H4)

    Maintain sequential heading hierarchy without skipping levels

  • lowcontent

    Lazy images without dimensions

    176 lazy-loaded images lack width/height — causes layout shift

    Add width and height attributes to lazy-loaded images

  • lowmobile

    Missing autocomplete attributes

    1 form fields lack autocomplete hints

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

  • 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

  • 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 cykelexperten.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": "cykelexperten.dk",
  "scores": {
    "overall": 76,
    "performance": 0,
    "seo": 88,
    "accessibility": 55,
    "bestPractices": 90,
    "security": 69
  },
  "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": "structured-data",
      "severity": "medium",
      "title": "Organization missing name",
      "description": "Organization schema has no name property",
      "recommendation": "Add a name to the Organization schema"
    },
    {
      "module": "robots",
      "severity": "medium",
      "title": "No sitemap in robots.txt",
      "description": "robots.txt does not reference a sitemap",
      "recommendation": "Add Sitemap: https://yourdomain.com/sitemap.xml to robots.txt"
    },
    {
      "module": "cookies",
      "severity": "high",
      "title": "Module failed",
      "description": "The operation was aborted due to timeout",
      "recommendation": "Try scanning again"
    },
    {
      "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": "1 image(s) have no alt attribute",
      "recommendation": "Add descriptive alt text to all images for accessibility and SEO"
    },
    {
      "module": "content",
      "severity": "medium",
      "title": "External links without noopener",
      "description": "2 external links with target=\"_blank\" lack rel=\"noopener\"",
      "recommendation": "Add rel=\"noopener noreferrer\" to all target=\"_blank\" links"
    },
    {
      "module": "mobile",
      "severity": "medium",
      "title": "5 small tap targets detected",
      "description": "Some interactive elements may be too small for comfortable tapping",
      "recommendation": "Ensure all tap targets are at least 44x44px with adequate spacing"
    },
    {
      "module": "mobile",
      "severity": "medium",
      "title": "Small font sizes detected",
      "description": "25 elements have font-size below 12px",
      "recommendation": "Use minimum 16px for body text and 12px for secondary text on mobile"
    },
    {
      "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": "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": "cookies",
      "severity": "high",
      "title": "Module failed",
      "description": "The operation was aborted due to timeout",
      "recommendation": "Try scanning again"
    },
    {
      "module": "page-experience",
      "severity": "high",
      "title": "Intrusive interstitials detected",
      "description": "Found 12 potential popup/overlay elements",
      "recommendation": "Reduce intrusive interstitials — they hurt mobile experience and can trigger Google penalties"
    }
  ]
}
```

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