SEO Audit
66
Overall score

https://example.com

Audit #5 · started 6 months ago · 389 ms · triggered by web
✓ 19 pass ! 21 warn ✗ 4 fail · 73 total checks
meta
52
headings
92
schema
0
technical
90
sitemap
40
ssl security
80
page speed
50
links
80
images
100
content
44
mobile
100
hreflang
100
geo
100
spam security
—
domain security
—
⚠️
25 issues need attention
Open the for prioritised, copy-paste-ready fixes with location and AI-personalised suggestions.

Fix progress

0 of 25 issues fixed · Est. time left: 6h 15m
0%
Severity: | Showing / 25 | PDF CSV
High meta Fail −100 pts Medium · ~15m

Meta description present

No meta description found.

Recommendation

Add a compelling 120–160 character meta description.

AI suggestion (context-aware)
Generating personalised suggestion…
High meta Warning −60 pts Medium · ~15m

OpenGraph image present

Missing <meta property="og:image">.

Recommendation

Add the og:image meta tag for rich social previews.

AI suggestion (context-aware)
Generating personalised suggestion…
High schema Fail −100 pts Medium · ~15m

JSON-LD structured data present

No JSON-LD scripts found.

Recommendation

Add structured data (Organization, WebSite, BreadcrumbList).

AI suggestion (context-aware)
Generating personalised suggestion…
High content Fail −80 pts Medium · ~15m

Sufficient word count

Only 17 words — thin content.

Recommendation

Target 300+ words; ideal 1000+.

AI suggestion (context-aware)
Generating personalised suggestion…
Medium meta Warning −50 pts Medium · ~15m

Title length

Title is only 14 characters — too short to communicate value.

Recommendation

Aim for 30–60 characters.

AI suggestion (context-aware)
Generating personalised suggestion…
Medium meta Warning −60 pts Medium · ~15m

Title is descriptive

Title has fewer than 3 words.

Recommendation

Make the title descriptive — include the page topic and brand.

AI suggestion (context-aware)
Generating personalised suggestion…
Medium meta Warning −60 pts Medium · ~15m

OpenGraph title present

Missing <meta property="og:title">.

Recommendation

Add the og:title meta tag for rich social previews.

AI suggestion (context-aware)
Generating personalised suggestion…
Medium meta Warning −60 pts Medium · ~15m

OpenGraph description present

Missing <meta property="og:description">.

Recommendation

Add the og:description meta tag for rich social previews.

AI suggestion (context-aware)
Generating personalised suggestion…
Medium technical Warning −40 pts Medium · ~15m

Canonical URL present

No canonical link tag found.

Recommendation

Add <link rel="canonical" href="..."> to prevent duplicate indexing.

AI suggestion (context-aware)
Generating personalised suggestion…
Medium sitemap Warning −50 pts Medium · ~15m

robots.txt accessible

No robots.txt found at https://example.com/robots.txt

Recommendation

Add a robots.txt to control crawler access.

AI suggestion (context-aware)
Generating personalised suggestion…
Medium sitemap Fail −100 pts Medium · ~15m

sitemap.xml accessible

No sitemap at https://example.com/sitemap.xml (status 0).

Recommendation

Generate and host an XML sitemap.

AI suggestion (context-aware)
Generating personalised suggestion…
Medium ssl security Warning −40 pts Medium · ~15m

HSTS header present

Missing strict-transport-security header.

Recommendation

Add strict-transport-security for hardened security posture.

AI suggestion (context-aware)
Generating personalised suggestion…
Medium page speed Warning −50 pts Medium · ~15m

Compression enabled

No gzip/brotli content-encoding header.

Recommendation

Enable gzip or Brotli on your server.

AI suggestion (context-aware)
Generating personalised suggestion…
Medium links Warning −60 pts Medium · ~15m

Healthy internal link count

No internal links on this page.

Recommendation

Link to related pages on your site to spread link equity.

AI suggestion (context-aware)
Generating personalised suggestion…
Medium content Warning −50 pts Medium · ~15m

E-E-A-T: Experience

Moderate:

Recommendation

Strengthen Experience signals on this page.

AI suggestion (context-aware)
Generating personalised suggestion…
Medium content Warning −50 pts Medium · ~15m

E-E-A-T: Expertise

Moderate:

Recommendation

Strengthen Expertise signals on this page.

AI suggestion (context-aware)
Generating personalised suggestion…
Medium content Warning −50 pts Medium · ~15m

E-E-A-T: Authoritativeness

Moderate:

Recommendation

Strengthen Authoritativeness signals on this page.

AI suggestion (context-aware)
Generating personalised suggestion…
Medium content Warning −50 pts Medium · ~15m

E-E-A-T: Trustworthiness

Moderate:

Recommendation

Strengthen Trustworthiness signals on this page.

AI suggestion (context-aware)
Generating personalised suggestion…
Low meta Warning −60 pts Medium · ~15m

Twitter card present

Missing <meta name="twitter:card">.

Recommendation

Add the twitter:card meta tag for rich social previews.

AI suggestion (context-aware)
Generating personalised suggestion…
Low meta Warning −30 pts Medium · ~15m

Charset meta tag present

No charset declaration in <head>.

Recommendation

Add <meta charset="utf-8"> as the first child of <head>.

AI suggestion (context-aware)
Generating personalised suggestion…
Low headings Warning −40 pts Medium · ~15m

Sufficient H2 tags

Only 0 H2 tags.

Recommendation

Use H2s to break content into scannable sections.

AI suggestion (context-aware)
Generating personalised suggestion…
Low technical Warning −30 pts Medium · ~15m

Favicon present

No favicon link tag.

Recommendation

Add <link rel="icon" href="/favicon.ico">.

AI suggestion (context-aware)
Generating personalised suggestion…
Low sitemap Warning −30 pts Medium · ~15m

Sitemap referenced

robots.txt does not reference a sitemap.

Recommendation

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

AI suggestion (context-aware)
Generating personalised suggestion…
Low ssl security Warning −40 pts Medium · ~15m

CSP header present

Missing content-security-policy header.

Recommendation

Add content-security-policy for hardened security posture.

AI suggestion (context-aware)
Generating personalised suggestion…
Low ssl security Warning −40 pts Medium · ~15m

X-Content-Type-Options

Missing x-content-type-options header.

Recommendation

Add x-content-type-options for hardened security posture.

AI suggestion (context-aware)
Generating personalised suggestion…
Pass Title tag present
title_present
Title tag found.
Actual: Example Domain
Warning Title length
title_length
Title is only 14 characters — too short to communicate value.
Fix: Aim for 30–60 characters.
Actual: 14 chars
Expected: 30–60 chars
Warning Title is descriptive
title_unique_words
Title has fewer than 3 words.
Fix: Make the title descriptive — include the page topic and brand.
Actual: 2 words
Fail Meta description present
meta_description_present
No meta description found.
Fix: Add a compelling 120–160 character meta description.
Actual: missing
Expected: present
Warning OpenGraph title present
og_title_present
Missing <meta property="og:title">.
Fix: Add the og:title meta tag for rich social previews.
Actual: missing
Expected: present
Warning OpenGraph description present
og_description_present
Missing <meta property="og:description">.
Fix: Add the og:description meta tag for rich social previews.
Actual: missing
Expected: present
Warning OpenGraph image present
og_image_present
Missing <meta property="og:image">.
Fix: Add the og:image meta tag for rich social previews.
Actual: missing
Expected: present
Warning Twitter card present
twitter_card_present
Missing <meta name="twitter:card">.
Fix: Add the twitter:card meta tag for rich social previews.
Actual: missing
Expected: present
Pass Viewport meta tag present
meta_viewport_present
Viewport meta tag present.
Actual: width=device-width, initial-scale=1
Warning Charset meta tag present
meta_charset_present
No charset declaration in <head>.
Fix: Add <meta charset="utf-8"> as the first child of <head>.
Pass H1 tag present
h1_present
Found 1 H1.
Actual: 1 H1
Pass Single H1 tag
h1_count
Exactly one H1.
Actual: 1
Pass H1 has reasonable length
h1_length
H1 length 14 chars.
Actual: 14 chars
Warning Sufficient H2 tags
h2_count
Only 0 H2 tags.
Fix: Use H2s to break content into scannable sections.
Actual: 0
Expected: ≥ 2
Pass Heading hierarchy
heading_hierarchy
Heading levels descend logically.
Actual: 0 skips
Fail JSON-LD structured data present
schema_json_ld_present
No JSON-LD scripts found.
Fix: Add structured data (Organization, WebSite, BreadcrumbList).
Actual: 0 scripts
Skipped JSON-LD is valid JSON
schema_valid_json
No JSON-LD to evaluate.
Skipped Recommended schema types used
schema_recommended_types
No JSON-LD to evaluate.
Skipped No deprecated schema types
schema_no_deprecated
No JSON-LD to evaluate.
Skipped No restricted schema types
schema_no_restricted
No JSON-LD to evaluate.
Info Microdata or RDFa present
schema_microdata_present
No microdata. JSON-LD is preferred — this is informational only.
Actual: 0
Warning Canonical URL present
canonical_present
No canonical link tag found.
Fix: Add <link rel="canonical" href="..."> to prevent duplicate indexing.
Actual: missing
Skipped Canonical self-references
canonical_self_referencing
No canonical to evaluate.
Pass Page is indexable
robots_meta_indexable
No noindex directive.
Actual: (not set)
Pass HTML lang attribute
lang_attribute_present
<html lang="en"> declared.
Actual: en
Pass HTML5 doctype
doctype_html5
HTML5 doctype declared.
Warning Favicon present
favicon_present
No favicon link tag.
Fix: Add <link rel="icon" href="/favicon.ico">.
Pass HTTP status 2xx
http_status_ok
Server returned 200.
Actual: 200
Pass Response time acceptable
response_time_ok
Fetched in 131 ms.
Actual: 131 ms
Warning robots.txt accessible
robots_txt_found
No robots.txt found at https://example.com/robots.txt
Fix: Add a robots.txt to control crawler access.
Actual: 0
Skipped robots.txt does not block
robots_txt_no_block
No robots.txt to evaluate.
Fail sitemap.xml accessible
sitemap_xml_found
No sitemap at https://example.com/sitemap.xml (status 0).
Fix: Generate and host an XML sitemap.
Actual: 0
Warning Sitemap referenced
sitemap_referenced
robots.txt does not reference a sitemap.
Fix: Add "Sitemap: https://example.com/sitemap.xml" to robots.txt.
Pass Page served over HTTPS
ssl_https
Served over HTTPS.
Actual: https
Pass TLS handshake succeeds
ssl_valid
TLS handshake succeeded.
Actual: example.com
Pass HTTP redirects to HTTPS
http_redirects_to_https
HTTP requests redirect to HTTPS.
Warning HSTS header present
hsts_header_present
Missing strict-transport-security header.
Fix: Add strict-transport-security for hardened security posture.
Actual: missing
Warning CSP header present
csp_header_present
Missing content-security-policy header.
Fix: Add content-security-policy for hardened security posture.
Actual: missing
Warning X-Content-Type-Options
x_content_type_options
Missing x-content-type-options header.
Fix: Add x-content-type-options for hardened security posture.
Actual: missing
Info PageSpeed performance score
pagespeed_score
No PageSpeed API key configured — heuristic-only score.
Actual: heuristic
Info Largest Contentful Paint
lcp_within_threshold
Estimated from initial fetch (131 ms). Configure GOOGLE_PAGESPEED_API_KEY for real metrics.
Actual: 0.13s
Info First Contentful Paint
fcp_within_threshold
Estimated from initial fetch (131 ms). Configure GOOGLE_PAGESPEED_API_KEY for real metrics.
Actual: 0.13s
Info Time To First Byte
ttfb_within_threshold
Estimated from initial fetch (131 ms). Configure GOOGLE_PAGESPEED_API_KEY for real metrics.
Actual: 0.13s
Info Cumulative Layout Shift
cls_within_threshold
CLS not measurable without PageSpeed API.
Actual: unknown
Info Interaction to Next Paint
inp_within_threshold
INP not measurable without PageSpeed API.
Actual: unknown
Info Few render-blocking resources
render_blocking_resources
Render-blocking analysis requires the PageSpeed API.
Actual: unknown
Warning Compression enabled
gzip_or_brotli
No gzip/brotli content-encoding header.
Fix: Enable gzip or Brotli on your server.
Warning Healthy internal link count
internal_link_count
No internal links on this page.
Fix: Link to related pages on your site to spread link equity.
Actual: 0
Skipped No broken internal links
no_broken_internal_links
No internal links to test.
Pass External links safe
external_links_safe
All external _blank links use rel=noopener.
Actual: 1 external
Pass Descriptive anchor text
descriptive_anchor_text
Anchor texts are descriptive.
Actual: 0/1 generic
Info Images have alt text
images_alt_present
No <img> tags on page.
Actual: 0
Skipped Below-fold images lazy
images_lazy_loaded
No images to evaluate.
Skipped Modern image formats
images_modern_formats
No images to evaluate.
Skipped Images have dimensions
images_have_dimensions
No images to evaluate.
Fail Sufficient word count
word_count
Only 17 words — thin content.
Fix: Target 300+ words; ideal 1000+.
Actual: 17 words
Expected: ≥ 300
Skipped Readable prose
readability
Insufficient text to score.
Warning E-E-A-T: Experience
eeat_experience
Moderate:
Fix: Strengthen Experience signals on this page.
Actual: 5/10
Expected: ≥ 7
Warning E-E-A-T: Expertise
eeat_expertise
Moderate:
Fix: Strengthen Expertise signals on this page.
Actual: 5/10
Expected: ≥ 7
Warning E-E-A-T: Authoritativeness
eeat_authority
Moderate:
Fix: Strengthen Authoritativeness signals on this page.
Actual: 5/10
Expected: ≥ 7
Warning E-E-A-T: Trustworthiness
eeat_trust
Moderate:
Fix: Strengthen Trustworthiness signals on this page.
Actual: 5/10
Expected: ≥ 7
Pass Viewport set for mobile
mobile_viewport
Responsive viewport configured.
Actual: width=device-width, initial-scale=1
Pass Tap targets reasonable
mobile_tap_targets
No obvious tap-target sizing problems.
Info Legible font sizes
mobile_font_size
No inline body font-size — relying on stylesheet defaults.
Actual: unknown
Pass No Flash/legacy plugins
mobile_no_flash
No legacy plugin elements.
Info hreflang tags present (if i18n)
hreflang_present
No hreflang tags. OK for monolingual sites.
Actual: 0
Skipped hreflang codes valid
hreflang_valid_codes
No hreflang to evaluate.
Skipped hreflang self-reference
hreflang_self_ref
No hreflang to evaluate.
Skipped hreflang x-default present
hreflang_x_default
No hreflang to evaluate.
Skipped Content provides clear answers
geo_clear_answers
Content too short to evaluate.
Skipped High factual density
geo_factual_density
Content too short to evaluate.
Skipped Structured for AI extraction
geo_structured_for_ai
Content too short to evaluate.
Skipped Cites authoritative sources
geo_authoritative_sources
Content too short to evaluate.