Skip to main content
Local BusinessMixed

SEO Report: kpi.ac.th

Generated May 8, 2026 · 39 findings · 6.0s

94
report.overallScore
90
seo
98
security
0
performance
100
accessibility
84
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
90(+42 vs avg)
security
98(+36 vs avg)
performance
0(-50 vs avg)
accessibility
100(+44 vs avg)
Best Practices
84(+24 vs avg)

Score Projection

Estimated improvement based on the findings in this report

Current score: 94Projected score: 98
Current score
Free (+1)
Starter (+2)
Pro (+1)

Ready to improve your SEO?

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

Module Breakdown

headers
206 findings
reputation
208 findings
technology
555 findings
page experience
702 findings
structured data
784 findings
news mentions
781 finding
content
843 findings
social checker
851 finding
crawl budget
851 finding
log analyzer
851 finding
meta
901 finding
dns
951 finding
mobile
952 findings
rate limits
952 findings
brand checker
951 finding
cookies
100
ssl
100
robots
100
sitemap
100
accessibility
100
layout scan
100
uptime checker
100
indexing checker
100

All Findings (36)

Critical (3)

  • highheaders

    Missing strict-transport-security

    HSTS header is missing. The site may be vulnerable to downgrade attacks.

    Add Strict-Transport-Security header with max-age of at least 31536000

  • highpage experience

    Intrusive interstitials detected

    Found 18 potential popup/overlay elements

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

  • highreputation

    Missing AggregateRating in schema

    Found Organization schema without AggregateRating — missing rich snippet opportunity

    Add aggregateRating with ratingValue, ratingCount, and bestRating to your structured data for star ratings in search results

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

    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)

  • mediumtechnology

    Render-blocking scripts

    22 scripts load synchronously without async/defer

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

  • mediumtechnology

    Mixed content detected

    6 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

  • mediumsocial checker

    Missing og:image

    No social sharing image set — posts will lack visual appeal

    Add og:image meta tag (1200x630px recommended)

  • mediumcrawl budget

    Potential crawl traps

    Found 2 URLs with faceted/pagination patterns

    Consider blocking these URL patterns via robots.txt to preserve crawl budget

  • mediumlog analyzer

    Exposed /wp-login.php

    /wp-login.php is accessible (HTTP 200) — CMS admin panel is publicly visible

    Restrict access to admin panels via IP whitelisting or authentication

  • mediumreputation

    No review platform links found

    No links to Trustpilot, Google Business, TripAdvisor, Yelp, G2, Capterra, or Glassdoor detected on the homepage

    Add links to your review profiles to build trust signals and improve local SEO

  • mediumreputation

    LocalBusiness missing "address"

    LocalBusiness/Organization schema found but "address" is not set

    Add "address" to your LocalBusiness schema for better local search visibility

  • mediumreputation

    LocalBusiness missing "telephone"

    LocalBusiness/Organization schema found but "telephone" is not set

    Add "telephone" to your LocalBusiness schema for better local search visibility

  • mediumreputation

    LocalBusiness missing "openingHours"

    LocalBusiness/Organization schema found but "openingHours" is not set

    Add "openingHours" to your LocalBusiness schema for better local search visibility

  • mediumreputation

    LocalBusiness missing "geo"

    LocalBusiness/Organization schema found but "geo" is not set

    Add "geo" to your LocalBusiness schema for better local search visibility

  • mediumreputation

    LocalBusiness missing "priceRange"

    LocalBusiness/Organization schema found but "priceRange" is not set

    Add "priceRange" to your LocalBusiness schema for better local search visibility

Low (16)

  • lowdns

    DMARC policy is 'none'

    DMARC is set but policy is 'none' (monitoring only).

    Consider upgrading DMARC policy to 'quarantine' or 'reject'

  • 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

  • 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 inline scripts

    18 inline <script> blocks found

    Move inline scripts to external files for caching and CSP compliance

  • lowtechnology

    Many external CSS files

    12 external stylesheets loaded

    Consider bundling CSS files to reduce HTTP requests

  • lowtechnology

    Many third-party domains

    19 external domains — may impact performance and privacy

    Reduce third-party dependencies or self-host critical resources

  • lowcontent

    Heading level skipped

    H4 follows H2 (skipped H3)

    Maintain sequential heading hierarchy without skipping levels

  • lowcontent

    Empty anchor links

    17 links point to "#" or "javascript:void(0)"

    Use proper URLs or button elements instead of empty anchors

  • lowmobile

    Unresponsive images

    1 images lack srcset or responsive sizing

    Use srcset and sizes attributes for responsive images

  • lowrate limits

    No rate limiting detected

    No explicit rate-limit headers or 429 responses detected. Cloudflare 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 1 external mentions but no dedicated press page

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

  • lowbrand checker

    No web app manifest

    No manifest.json linked — PWA features unavailable

    Add a web app manifest for installability and brand customization

  • lowpage experience

    No resource hints

    No preload or preconnect hints found

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

  • lowreputation

    Only 0 sameAs entries

    Found 0 sameAs URLs across all JSON-LD entities — search engines use sameAs to verify brand identity

    Add sameAs URLs for all your social profiles, Wikipedia page, and business directory listings (aim for 3+)

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 kpi.ac.th.

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

```json
{
  "domain": "kpi.ac.th",
  "scores": {
    "overall": 94,
    "performance": 0,
    "seo": 90,
    "accessibility": 100,
    "bestPractices": 84,
    "security": 98
  },
  "findings": [
    {
      "module": "headers",
      "severity": "high",
      "title": "Missing strict-transport-security",
      "description": "HSTS header is missing. The site may be vulnerable to downgrade attacks.",
      "recommendation": "Add Strict-Transport-Security header with max-age of at least 31536000"
    },
    {
      "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": "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": "technology",
      "severity": "medium",
      "title": "Render-blocking scripts",
      "description": "22 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": "6 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": "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": "crawl-budget",
      "severity": "medium",
      "title": "Potential crawl traps",
      "description": "Found 2 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 18 potential popup/overlay elements",
      "recommendation": "Reduce intrusive interstitials — they hurt mobile experience and can trigger Google penalties"
    },
    {
      "module": "log-analyzer",
      "severity": "medium",
      "title": "Exposed /wp-login.php",
      "description": "/wp-login.php is accessible (HTTP 200) — CMS admin panel is publicly visible",
      "recommendation": "Restrict access to admin panels via IP whitelisting or authentication"
    },
    {
      "module": "reputation",
      "severity": "medium",
      "title": "No review platform links found",
      "description": "No links to Trustpilot, Google Business, TripAdvisor, Yelp, G2, Capterra, or Glassdoor detected on the homepage",
      "recommendation": "Add links to your review profiles to build trust signals and improve local SEO"
    },
    {
      "module": "reputation",
      "severity": "high",
      "title": "Missing AggregateRating in schema",
      "description": "Found Organization schema without AggregateRating — missing rich snippet opportunity",
      "recommendation": "Add aggregateRating with ratingValue, ratingCount, and bestRating to your structured data for star ratings in search results"
    },
    {
      "module": "reputation",
      "severity": "medium",
      "title": "LocalBusiness missing \"address\"",
      "description": "LocalBusiness/Organization schema found but \"address\" is not set",
      "recommendation": "Add \"address\" to your LocalBusiness schema for better local search visibility"
    },
    {
      "module": "reputation",
      "severity": "medium",
      "title": "LocalBusiness missing \"telephone\"",
      "description": "LocalBusiness/Organization schema found but \"telephone\" is not set",
      "recommendation": "Add \"telephone\" to your LocalBusiness schema for better local search visibility"
    },
    {
      "module": "reputation",
      "severity": "medium",
      "title": "LocalBusiness missing \"openingHours\"",
      "description": "LocalBusiness/Organization schema found but \"openingHours\" is not set",
      "recommendation": "Add \"openingHours\" to your LocalBusiness schema for better local search visibility"
    },
    {
      "module": "reputation",
      "severity": "medium",
      "title": "LocalBusiness missing \"geo\"",
      "description": "LocalBusiness/Organization schema found but \"geo\" is not set",
      "recommendation": "Add \"geo\" to your LocalBusiness schema for better local search visibility"
    },
    {
      "module": "reputation",
      "severity": "medium",
      "title": "LocalBusiness missing \"priceRange\"",
      "description": "LocalBusiness/Organization schema found but \"priceRange\" is not set",
      "recommendation": "Add \"priceRange\" to your LocalBusiness schema for better local search visibility"
    }
  ]
}
```

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
Start your free trial

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