Skip to main content
Local BusinessMixed

SEO Report: porvoo.fi

Generated 30 April 2026 · 32 findings · 5.7s

89
report.overallScore
86
seo
86
security
0
performance
100
accessibility
92
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
86(+38 vs avg)
security
86(+24 vs avg)
performance
0(-50 vs avg)
accessibility
100(+44 vs avg)
Best Practices
92(+32 vs avg)

Score Projection

Estimated improvement based on the findings in this report

Current score: 89Projected score: 91
Current score
Starter (+1)
Pro (+1)

Ready to improve your SEO?

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

Module Breakdown

brand checker
555 findings
headers
606 findings
content
703 findings
rate limits
753 findings
structured data
784 findings
technology
802 findings
crawl budget
802 findings
mobile
853 findings
log analyzer
851 finding
news mentions
93
dns
951 finding
page experience
951 finding
meta
971 finding
cookies
100
ssl
100
robots
100
sitemap
100
accessibility
100
layout scan
100
social checker
100
uptime checker
100
indexing checker
100

All Findings (30)

Medium (12)

  • 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

    Missing @type in schema

    A structured data object has no @type

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

  • mediumtechnology

    Render-blocking scripts

    13 scripts load synchronously without async/defer

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

  • mediumcontent

    Multiple H1 tags

    Found 3 H1 tags (recommended: exactly 1)

    Use only one H1 per page; use H2-H6 for subsections

  • mediumcontent

    Very low text-to-HTML ratio

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

    Increase meaningful text content relative to HTML markup

  • mediumcontent

    External links without noopener

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

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

  • mediummobile

    Fixed-width elements may cause horizontal scroll

    1 elements have fixed widths > 400px

    Use max-width: 100% or responsive units instead of fixed pixel widths

  • 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

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

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

  • mediumlog analyzer

    X-Powered-By header exposed

    X-Powered-By: Seravo

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

Low (18)

  • lowdns

    Only one MX record (no redundancy)

    A single MX record means no failover if the mail server goes down.

    Add a secondary MX record for email redundancy

  • lowheaders

    Missing permissions-policy

    Permissions-Policy is missing.

    Add Permissions-Policy to restrict browser feature access

  • lowheaders

    HSTS max-age too short

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

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

  • lowheaders

    Server header exposes software

    Server: nginx

    Remove or obfuscate the Server header to reduce information leakage

  • lowheaders

    X-Powered-By exposes technology

    X-Powered-By: Seravo

    Remove the X-Powered-By header

  • 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

    Meta description too long

    Description is 411 characters (recommended: 120-160)

    Shorten the meta description to 120-160 characters

  • 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

  • lowtechnology

    Many third-party domains

    18 external domains — may impact performance and privacy

    Reduce third-party dependencies or self-host critical resources

  • lowmobile

    Unresponsive images

    3 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

  • 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 porvoo.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": "porvoo.fi",
  "scores": {
    "overall": 89,
    "performance": 0,
    "seo": 86,
    "accessibility": 100,
    "bestPractices": 92,
    "security": 86
  },
  "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": "Missing @type in schema",
      "description": "A structured data object has no @type",
      "recommendation": "Add a @type property (e.g. Organization, WebSite)"
    },
    {
      "module": "technology",
      "severity": "medium",
      "title": "Render-blocking scripts",
      "description": "13 scripts load synchronously without async/defer",
      "recommendation": "Add async or defer to non-critical scripts to improve page load speed"
    },
    {
      "module": "content",
      "severity": "medium",
      "title": "Multiple H1 tags",
      "description": "Found 3 H1 tags (recommended: exactly 1)",
      "recommendation": "Use only one H1 per page; use H2-H6 for subsections"
    },
    {
      "module": "content",
      "severity": "medium",
      "title": "Very low text-to-HTML ratio",
      "description": "Text/HTML ratio is 2% (recommended: >5%)",
      "recommendation": "Increase meaningful text content relative to HTML markup"
    },
    {
      "module": "content",
      "severity": "medium",
      "title": "External links without noopener",
      "description": "10 external links with target=\"_blank\" lack rel=\"noopener\"",
      "recommendation": "Add rel=\"noopener noreferrer\" to all target=\"_blank\" links"
    },
    {
      "module": "mobile",
      "severity": "medium",
      "title": "Fixed-width elements may cause horizontal scroll",
      "description": "1 elements have fixed widths > 400px",
      "recommendation": "Use max-width: 100% or responsive units instead of fixed pixel widths"
    },
    {
      "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": "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 503",
      "recommendation": "Create a sitemap.xml to help search engines discover all pages"
    },
    {
      "module": "log-analyzer",
      "severity": "medium",
      "title": "X-Powered-By header exposed",
      "description": "X-Powered-By: Seravo",
      "recommendation": "Remove the X-Powered-By header to reduce information leakage"
    }
  ]
}
```

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

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

Start your free trial

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