Laporan SEO: kapten-son.com
Dijana pada 28 April 2026 · 42 penemuan · 5.9s
Perniagaan perkhidmatan perlu menguasai hasil carian tempatan dengan data NAP yang tepat, ulasan dan isyarat tempatan untuk menarik pelanggan berdekatan.
Pecahan Skor
Skor purata Perniagaan Tempatan: 54
Unjuran Skor
Anggaran peningkatan berdasarkan penemuan dalam laporan ini
Ready to improve your SEO?
Start a free trial and see how your score can improve.
Pecahan Modul
Semua Penemuan (38)
Kritikal (5)
- highssl
SSL certificate not found
Could not retrieve SSL certificate
Ensure the site has a valid SSL certificate installed
- highcontent
Images missing alt text
15 image(s) have no alt attribute
Add descriptive alt text to all images for accessibility and SEO
- highaccessibility
15 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
7 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
Medium (16)
- mediumcookies
1 cookie missing Secure flag
Cookies without Secure flag can be sent over unencrypted HTTP connections
Add the Secure attribute to all cookies to prevent transmission over HTTP
- 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)
- mediumtechnology
Mixed content detected
1 resources loaded over HTTP on an HTTPS page
Update all resource URLs to use HTTPS
- mediumcontent
Multiple H1 tags
Found 3 H1 tags (recommended: exactly 1)
Use only one H1 per page; use H2-H6 for subsections
- mediumcontent
Thin content
Page has only 155 words (recommended: 300+)
Add more meaningful content — aim for at least 300 words on key pages
- mediumcontent
Very low text-to-HTML ratio
Text/HTML ratio is 0% (recommended: >5%)
Increase meaningful text content relative to HTML markup
- mediumcontent
External links without noopener
7 external links with target="_blank" lack rel="noopener"
Add rel="noopener noreferrer" to all target="_blank" links
- 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
- mediumaccessibility
Potential color contrast issues
9 elements with very light text colors detected
Ensure text meets WCAG AA contrast ratio (4.5:1 for normal text, 3:1 for large text)
- 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")
- mediumcrawl budget
No sitemap.xml found
sitemap.xml returned HTTP 500
Create a sitemap.xml to help search engines discover all pages
Low (17)
- lowcookies
1 cookie missing SameSite attribute
Missing SameSite defaults to Lax in modern browsers but should be explicit
Set SameSite=Strict or SameSite=Lax on all cookies
- 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
Title too long
Title is 94 characters (recommended: 50-60)
Shorten the title to 50-60 characters
- lowmeta
Missing Twitter Card
No twitter:card meta tag
Add twitter:card meta tag for Twitter sharing
- lowmeta
Missing og:type
Open Graph type is not set
Add og:type meta tag (e.g., "website", "article")
- lowmeta
Missing og:url
Open Graph URL is not set
Add og:url meta tag matching the canonical URL
- lowstructured data
Missing WebSite schema
No WebSite structured data found
Add WebSite schema with SearchAction for sitelinks search box
- lowsitemap
No lastmod dates
Sitemap URLs don't include lastmod timestamps
Add <lastmod> to help search engines prioritize crawling
- lowcontent
Lazy images without dimensions
43 lazy-loaded images lack width/height — causes layout shift
Add width and height attributes to lazy-loaded 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 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
Missing og:site_name
Open Graph site name is not set
Add og:site_name meta tag for consistent social sharing
AI Fix Prompt
Salin arahan ini ke dalam ChatGPT atau Claude untuk mendapatkan panduan pembaikan langkah demi langkah
Fix all SEO issues found in the audit of kapten-son.com.
Prioritize high-severity issues first, then medium. For each fix, make the actual code change — don't just describe what to do.
```json
{
"domain": "kapten-son.com",
"scores": {
"overall": 68,
"performance": 0,
"seo": 84,
"accessibility": 31,
"bestPractices": 92,
"security": 64
},
"findings": [
{
"module": "cookies",
"severity": "medium",
"title": "1 cookie missing Secure flag",
"description": "Cookies without Secure flag can be sent over unencrypted HTTP connections",
"recommendation": "Add the Secure attribute to all cookies to prevent transmission over HTTP"
},
{
"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": "ssl",
"severity": "high",
"title": "SSL certificate not found",
"description": "Could not retrieve SSL certificate",
"recommendation": "Ensure the site has a valid SSL certificate installed"
},
{
"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": "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": "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": "Thin content",
"description": "Page has only 155 words (recommended: 300+)",
"recommendation": "Add more meaningful content — aim for at least 300 words on key pages"
},
{
"module": "content",
"severity": "medium",
"title": "Very low text-to-HTML ratio",
"description": "Text/HTML ratio is 0% (recommended: >5%)",
"recommendation": "Increase meaningful text content relative to HTML markup"
},
{
"module": "content",
"severity": "high",
"title": "Images missing alt text",
"description": "15 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": "7 external links with target=\"_blank\" lack rel=\"noopener\"",
"recommendation": "Add rel=\"noopener noreferrer\" to all target=\"_blank\" links"
},
{
"module": "accessibility",
"severity": "high",
"title": "15 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": "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": "accessibility",
"severity": "medium",
"title": "Potential color contrast issues",
"description": "9 elements with very light text colors detected",
"recommendation": "Ensure text meets WCAG AA contrast ratio (4.5:1 for normal text, 3:1 for large text)"
},
{
"module": "accessibility",
"severity": "high",
"title": "7 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": "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": "crawl-budget",
"severity": "medium",
"title": "No sitemap.xml found",
"description": "sitemap.xml returned HTTP 500",
"recommendation": "Create a sitemap.xml to help search engines discover all pages"
}
]
}
```Cadangan untuk industri anda
- 1Optimumkan profil Google Perniagaan
- 2Tambah skema Service/LocalBusiness
- 3Sepadukan ulasan pelanggan dengan skema Review
- 4Pastikan data NAP konsisten di semua halaman
- 5Cipta profil dalam direktori perniagaan tempatan
Senarai Semak SEO untuk Perniagaan Tempatan
Petua untuk laman web Bercampur
- →Tentukan halaman pendaratan yang jelas untuk setiap segmen
- →Gunakan strategi meta yang berbeza bagi setiap kumpulan halaman
- →Segmenkan peta laman mengikut jenis kandungan
Gunakan Ctrl+P / Cmd+P untuk menyimpan sebagai PDF