Skip to main content
GeneralMixed

SEO Report: ahmia.fi

Generated 30 aprel 2026 · 51 findings · 3.5s

69
report.overallScore
54
seo
83
security
0
performance
66
accessibility
75
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
54(+9 vs avg)
security
83(+25 vs avg)
performance
0(-44 vs avg)
accessibility
66(+14 vs avg)
Best Practices
75(+19 vs avg)

Score Projection

Estimated improvement based on the findings in this report

Current score: 69Projected score: 76
Current score
Free (+4)
Starter (+1)
Pro (+2)

Ready to improve your SEO?

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

Module Breakdown

meta
111 findings
social checker
255 findings
structured data
301 finding
sitemap
301 finding
dns
504 findings
robots
501 finding
brand checker
555 findings
accessibility
664 findings
headers
704 findings
page experience
702 findings
news mentions
751 finding
content
802 findings
mobile
802 findings
uptime checker
802 findings
crawl budget
802 findings
technology
851 finding
indexing checker
851 finding
log analyzer
851 finding
rate limits
951 finding
cookies
100
ssl
100
layout scan
100

All Findings (49)

Critical (7)

  • highmeta

    Missing meta description

    No meta description tag found

    Add a meta description (120-160 characters)

  • highmeta

    Missing viewport meta

    No viewport meta tag found. Mobile rendering will be broken.

    Add <meta name="viewport" content="width=device-width, initial-scale=1">

  • highsitemap

    Missing sitemap.xml

    No sitemap.xml found at the root

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

  • highmobile

    Missing viewport meta tag

    No viewport meta tag found — page will not be mobile-responsive

    Add <meta name="viewport" content="width=device-width, initial-scale=1">

  • highaccessibility

    Missing lang attribute

    The <html> tag does not have a lang attribute

    Add lang="en" (or appropriate language) to the <html> tag

  • 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

    Missing viewport meta

    No viewport meta tag — mobile rendering will be broken

    Add <meta name="viewport" content="width=device-width, initial-scale=1">

Medium (25)

  • mediumdns

    Missing SPF record

    No SPF TXT record found. Email spoofing is possible.

    Add a TXT record with v=spf1 policy

  • mediumdns

    Missing DMARC record

    No DMARC policy found at _dmarc subdomain.

    Add a DMARC TXT record to prevent email spoofing

  • mediumdns

    No DKIM record found

    None of the common DKIM selectors returned a valid key. Email authentication may be incomplete.

    Configure DKIM signing with your email provider and publish the public key in DNS

  • 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

  • mediummeta

    Missing canonical URL

    No canonical link tag found

    Add a canonical URL to prevent duplicate content issues

  • 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 lang attribute

    The <html> element has no lang attribute

    Add lang attribute to <html> for accessibility and SEO

  • 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

  • mediumrobots

    Missing robots.txt

    robots.txt returned HTTP 429

    Create a robots.txt file to guide search engine crawlers

  • mediumtechnology

    Mixed content detected

    1 resources loaded over HTTP on an HTTPS page

    Update all resource URLs to use HTTPS

  • mediumcontent

    Thin content

    Page has only 5 words (recommended: 300+)

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

  • mediumcontent

    No internal links

    No internal links found on the page

    Add internal links to help search engines discover and understand your site structure

  • mediumaccessibility

    Missing main landmark

    No <main> element or role="main" found

    Wrap primary content in a <main> element for screen reader navigation

  • 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

    Inconsistent www handling

    Both www and non-www versions respond with 200 — one should redirect to the other

    Choose either www or non-www as canonical and redirect the other with a 301

  • mediumbrand checker

    No Organization schema

    No Organization JSON-LD found

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

  • mediumbrand checker

    Missing favicon

    No favicon link tag found

    Add a favicon for brand recognition in browser tabs and bookmarks

  • mediumcrawl budget

    No sitemap.xml found

    sitemap.xml returned HTTP 429

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

  • mediumindexing checker

    Missing canonical URL

    No canonical link tag found — search engines may index duplicate versions

    Add a self-referencing canonical URL to prevent duplicate content issues

  • mediumlog analyzer

    Server version exposed

    Server header reveals version: nginx/1.22.1

    Remove version numbers from the Server header to reduce attack surface

Low (17)

  • 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/1.22.1

    Remove or obfuscate the Server header to reduce information leakage

  • 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

  • lowmeta

    Missing Twitter Card

    No twitter:card meta tag

    Add twitter:card meta tag for Twitter sharing

  • lowmeta

    Missing favicon

    No favicon link tag found

    Add a favicon for better browser tab recognition

  • lowaccessibility

    Missing navigation landmark

    No <nav> element or role="navigation" found

    Wrap navigation links in a <nav> element

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

  • lownews mentions

    No press or news presence

    No press pages found on the site and no external news mentions detected

    Create a /news or /press page with company updates — this builds authority and earns links

  • lowsocial checker

    Missing og:type

    Open Graph type is not set

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

  • lowuptime checker

    No custom 404 page

    The 404 error page appears to be a generic server default

    Create a custom 404 page with navigation links and search to retain visitors

  • 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

  • lowcrawl budget

    No robots.txt found

    No robots.txt file — no crawl directives

    Add a robots.txt file with sitemap reference and crawl directives

  • lowpage experience

    No resource hints

    No preload or preconnect hints found

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

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 ahmia.fi.

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

```json
{
  "domain": "ahmia.fi",
  "scores": {
    "overall": 69,
    "performance": 0,
    "seo": 54,
    "accessibility": 66,
    "bestPractices": 75,
    "security": 83
  },
  "findings": [
    {
      "module": "dns",
      "severity": "medium",
      "title": "Missing SPF record",
      "description": "No SPF TXT record found. Email spoofing is possible.",
      "recommendation": "Add a TXT record with v=spf1 policy"
    },
    {
      "module": "dns",
      "severity": "medium",
      "title": "Missing DMARC record",
      "description": "No DMARC policy found at _dmarc subdomain.",
      "recommendation": "Add a DMARC TXT record to prevent email spoofing"
    },
    {
      "module": "dns",
      "severity": "medium",
      "title": "No DKIM record found",
      "description": "None of the common DKIM selectors returned a valid key. Email authentication may be incomplete.",
      "recommendation": "Configure DKIM signing with your email provider and publish the public key in DNS"
    },
    {
      "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": "meta",
      "severity": "high",
      "title": "Missing meta description",
      "description": "No meta description tag found",
      "recommendation": "Add a meta description (120-160 characters)"
    },
    {
      "module": "meta",
      "severity": "high",
      "title": "Missing viewport meta",
      "description": "No viewport meta tag found. Mobile rendering will be broken.",
      "recommendation": "Add <meta name=\"viewport\" content=\"width=device-width, initial-scale=1\">"
    },
    {
      "module": "meta",
      "severity": "medium",
      "title": "Missing canonical URL",
      "description": "No canonical link tag found",
      "recommendation": "Add a canonical URL to prevent duplicate content issues"
    },
    {
      "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 lang attribute",
      "description": "The <html> element has no lang attribute",
      "recommendation": "Add lang attribute to <html> for accessibility and SEO"
    },
    {
      "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": "robots",
      "severity": "medium",
      "title": "Missing robots.txt",
      "description": "robots.txt returned HTTP 429",
      "recommendation": "Create a robots.txt file to guide search engine crawlers"
    },
    {
      "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": "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": "Thin content",
      "description": "Page has only 5 words (recommended: 300+)",
      "recommendation": "Add more meaningful content — aim for at least 300 words on key pages"
    },
    {
      "module": "content",
      "severity": "medium",
      "title": "No internal links",
      "description": "No internal links found on the page",
      "recommendation": "Add internal links to help search engines discover and understand your site structure"
    },
    {
      "module": "mobile",
      "severity": "high",
      "title": "Missing viewport meta tag",
      "description": "No viewport meta tag found — page will not be mobile-responsive",
      "recommendation": "Add <meta name=\"viewport\" content=\"width=device-width, initial-scale=1\">"
    },
    {
      "module": "accessibility",
      "severity": "high",
      "title": "Missing lang attribute",
      "description": "The <html> tag does not have a lang attribute",
      "recommendation": "Add lang=\"en\" (or appropriate language) to the <html> tag"
    },
    {
      "module": "accessibility",
      "severity": "medium",
      "title": "Missing main landmark",
      "description": "No <main> element or role=\"main\" found",
      "recommendation": "Wrap primary content in a <main> element for screen reader navigation"
    },
    {
      "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": "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": "Inconsistent www handling",
      "description": "Both www and non-www versions respond with 200 — one should redirect to the other",
      "recommendation": "Choose either www or non-www as canonical and redirect the other with a 301"
    },
    {
      "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": "brand-checker",
      "severity": "medium",
      "title": "Missing favicon",
      "description": "No favicon link tag found",
      "recommendation": "Add a favicon for brand recognition in browser tabs and bookmarks"
    },
    {
      "module": "crawl-budget",
      "severity": "medium",
      "title": "No sitemap.xml found",
      "description": "sitemap.xml returned HTTP 429",
      "recommendation": "Create a sitemap.xml to help search engines discover all pages"
    },
    {
      "module": "page-experience",
      "severity": "high",
      "title": "Missing viewport meta",
      "description": "No viewport meta tag — mobile rendering will be broken",
      "recommendation": "Add <meta name=\"viewport\" content=\"width=device-width, initial-scale=1\">"
    },
    {
      "module": "indexing-checker",
      "severity": "medium",
      "title": "Missing canonical URL",
      "description": "No canonical link tag found — search engines may index duplicate versions",
      "recommendation": "Add a self-referencing canonical URL to prevent duplicate content issues"
    },
    {
      "module": "log-analyzer",
      "severity": "medium",
      "title": "Server version exposed",
      "description": "Server header reveals version: nginx/1.22.1",
      "recommendation": "Remove version numbers from the Server header to reduce attack surface"
    }
  ]
}
```

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

Finland has high technology adoption and favors Finnish-language pages.

Start your free trial

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