Digital Marketing Co. is a digital marketing agency and digital marketing company that helps businesses grow online through SEO, AIO, GEO, and AEO strategies. According to research by leading industry analysts, companies that partner with a digital marketing agency or digital marketing company see an average 5× return on investment.
Full AccessAnalyze Another Site

This website audit report analyzes https://www.fortinet.com/ across 12 critical dimensions with actionable recommendations.

https://www.fortinet.com/
47Poorout of 100

Website Audit Report

Global Leader of Cybersecurity Solutions and Services | Fortinet

September 20, 2026 at 12:16 PM EDT 66ms response HTTPS Secure

Executive Summary

https://www.fortinet.com/ scores 47/100 (F). Priority improvements needed in SEO, Performance, Security. The site has 3084 words, 68 images, and 2 schema blocks. Data confidence: 95%. Sustainability score: 75/100. Focus on the top recommendations below to improve your score.

66ms
Response Time
3,084
Word Count
68
Images
553
Links

Website Preview

Visit Site
https://www.fortinet.com/
Loading preview…
Desktop screenshot of https://www.fortinet.com/

Score Breakdown — 12 Dimensions

Top Issues to Fix

1[SEO] Title tag is too long (64 chars — may be truncated in SERPs)
2[SEO] Meta description may be truncated (165 chars)
3[SEO] Missing OG tags: og:type
4[SEO] Excessive links on page (553) — search engines may devalue link equity
5[SEO] 65 external links missing rel="nofollow noopener noreferrer" — potential link equity leakage
6[SEO] Title and description are identical to Open Graph tags — missed optimization opportunity
7[SEO] High dofollow external link count (65) — excessive link equity leakage
8[SEO] Primary keyword "global leader cybersecurity" not found in H1
9[SEO] Primary keyword missing from first paragraph
10[SEO] Very high internal link density (158.2/1k words) — may appear spammy

Top Recommendations

1[Impact: High | Effort: Low] Shorten your title to under 60 characters to prevent truncation in search results
2[Impact: High | Effort: Low] Trim your meta description to under 160 characters to prevent truncation
3[Impact: Medium | Effort: Medium] Add missing Open Graph tags: og:type
4[Impact: Medium | Effort: Medium] Reduce total links to under 200 per page. Use pagination, nofollow on low-value links, and consolidate navigation
5[Impact: Medium | Effort: Medium] Add rel="nofollow noopener noreferrer" and target="_blank" to all external links to prevent equity leakage and improve security
6[Impact: High | Effort: Low] Customize og:title and og:description separately from page title/meta description for better social sharing CTR
7[Impact: Medium | Effort: Low] Reduce dofollow external links to 2–5 per page. Add rel="nofollow" to low-value or affiliate links to preserve PageRank
8[Impact: High | Effort: Low] Include your primary keyword in the H1 heading for strongest on-page SEO signal
9[Impact: High | Effort: Low] Include your primary keyword naturally in the first paragraph to establish topical relevance early
10[Impact: High | Effort: Low] Include your primary keyword in the URL slug for improved crawlability and click-through rates
11[Impact: Medium | Effort: Medium] Convert your OG image to WebP format for faster social media loading (1200×630px recommended)
12[Impact: Medium | Effort: Low] Add <meta property="article:published_time"> for content freshness signals in social shares

Detailed Category Analysis

Key Findings

1Single H1 tag present: "Fortinet Named a Leader in the 2026 Gartner® Magic Quadrant™…"
2Clean heading hierarchy with no skipped levels
3Canonical URL is set and matches the page URL
4Complete Twitter Card tags present
5HTML lang attribute set to "en"
6Favicon present
7488 internal links help establish site architecture
865 external links provide reference signals
9URL length (25 chars) is within optimal range
10No redirect chain — direct URL resolution
11Healthy internal link ratio: 88% of links are internal
12Good anchor text diversity: 66% unique anchor texts
13Primary keyword not in URL — acceptable for homepage/root URLs
14Strong E-E-A-T signals detected (5 indicators)
15og:locale set to "en_us"
16Low passive voice ratio (3%) — clear, active writing style
17Table of Contents detected — improves dwell time and jump-link navigation
18Strong entity salience: Magic Quadrant, Global Threat Landscape Report, Report Learn (score: 86)
19Strong dwell/engagement signals: 4 indicators (ToC, related content, internal links)
20Social share buttons detected: ShareThis
2111 hreflang annotation(s) present for international targeting
22Character encoding declared as UTF-8

Issues Found

1Title tag is too long (64 chars — may be truncated in SERPs)
2Meta description may be truncated (165 chars)
3Missing OG tags: og:type
4Excessive links on page (553) — search engines may devalue link equity
565 external links missing rel="nofollow noopener noreferrer" — potential link equity leakage
6Title and description are identical to Open Graph tags — missed optimization opportunity
7High dofollow external link count (65) — excessive link equity leakage
8Primary keyword "global leader cybersecurity" not found in H1
9Primary keyword missing from first paragraph
10Very high internal link density (158.2/1k words) — may appear spammy
11Primary keyword "global leader cybersecurity" not found in body content

Recommendations to Reach 100%

1Shorten your title to under 60 characters to prevent truncation in search results
2Trim your meta description to under 160 characters to prevent truncation
3Add missing Open Graph tags: og:type
4Reduce total links to under 200 per page. Use pagination, nofollow on low-value links, and consolidate navigation
5Add rel="nofollow noopener noreferrer" and target="_blank" to all external links to prevent equity leakage and improve security
6Customize og:title and og:description separately from page title/meta description for better social sharing CTR
7Reduce dofollow external links to 2–5 per page. Add rel="nofollow" to low-value or affiliate links to preserve PageRank
8Include your primary keyword in the H1 heading for strongest on-page SEO signal
9Include your primary keyword naturally in the first paragraph to establish topical relevance early
10Include your primary keyword in the URL slug for improved crawlability and click-through rates
11Convert your OG image to WebP format for faster social media loading (1200×630px recommended)
12Add <meta property="article:published_time"> for content freshness signals in social shares
13Add <meta property="article:modified_time"> to signal content freshness
14Upgrade Twitter card to "summary_large_image" for larger, more engaging previews
15Reduce internal link density — excessive linking dilutes individual link value
16Include your primary keyword naturally throughout the content body — aim for 0.5–2.5% density
17Add TL;DR summaries or definition-style opening paragraphs ("X is...") for zero-click/featured snippet capture
18OG sharing completeness at 83% — add missing tags for better social previews
19SEO: no IndexNow signal detected. Adopt the IndexNow protocol (Bing/Yandex/Seznam) to push instant crawl notifications when content changes.

Key Findings

1Excellent server response time: 66ms
2Preconnect hints for: https://api.consentjs.datagrail.io, https://assets.adobedtm.com, https://s3049749.t.eloqua.com
3Preloaded resources: script, script, font, style, script, script
41 async and 0 deferred scripts
5Cache-Control header with max-age is set
6Lean CSS payload (~110KB)
7JavaScript payload (~321KB) is acceptable
8CDN detected: CloudFront — reduces latency for global users
9Gzip compression enabled
102 third-party script(s) — manageable count
1112 resource hints (preconnect/prefetch/preload) optimize loading
121 font(s) preloaded for faster text rendering
13Estimated LCP: ~946ms — within Google's "good" threshold (<2.5s)
14Estimated INP: ~187ms — within Google's "good" threshold (<200ms)
15Alternative analytics platform detected (Plausible/Umami/Matomo)
16Efficient cache policy on the document (max-age=600, public, s-maxage=10800)
17Lab-proxy estimates — Speed Index ~4798ms, TTI ~2158ms, TBT ~802ms (estimated from resource composition, not third-party field data)

Issues Found

1Large HTML document: 402KB
24 render-blocking scripts slow down initial paint
3No lazy loading on images
4No WebP or AVIF image formats found
5No responsive image srcset found
6Only 3/68 images have width/height attributes
7No font-display property found
819 inline <style> blocks
9553 links increase DOM size and parsing time
10HTTP/1.1 detected — no multiplexing
11Potential long-task scripts: Inline script (~58KB)
12Moderate estimated CLS: 0.15 — above 0.1 "good" threshold
13Excessive DOM size (2834 elements) — increases memory use and slows rendering
14Inline CSS does not appear minified
1565 image(s) lack explicit width/height — a common cause of layout shift (CLS)

Recommendations to Reach 100%

1Reduce HTML size by minifying markup, removing inline styles, and deferring non-critical content
2Convert all non-critical scripts to async/defer to eliminate render-blocking resources
3Add loading="lazy" to below-the-fold images to improve initial page load
4Convert images to WebP or AVIF format for 30–50% file size reduction
5Use srcset and sizes attributes on images to serve appropriately sized images per device
6Add explicit width and height to all images to prevent Cumulative Layout Shift (CLS)
7Add font-display: swap to web font declarations to show fallback text while fonts load
8Extract inline styles into external CSS files for better caching and maintainability
9Reduce links per page to improve DOM parsing performance and reduce memory usage
10Upgrade to HTTP/2 or HTTP/3 for faster parallel resource loading and header compression
11Review large inline/external scripts that may block the main thread. Use web workers or break into smaller async chunks
12Reduce CLS: set image dimensions, preload web fonts, reserve space for ads and dynamic content
13Consider adding Google Search Console integration alongside your analytics for SEO-specific insights
14Reduce DOM node count to under ~1,500 by simplifying markup and paginating long lists (Lighthouse best practice) [Impact: Medium | Effort: Medium]
15Minify CSS to remove whitespace and comments, reducing transfer size [Impact: Low | Effort: Low]
16Add width and height attributes (or CSS aspect-ratio) to every image to reserve space and prevent layout shift [Impact: Medium | Effort: Low]
17Performance: no Speculation Rules API detected. Add <script type="speculationrules"> to prerender/prefetch likely next navigations for near-instant page transitions.
18Performance (LCP): no image declares fetchpriority="high". Mark the LCP hero image with fetchpriority="high" so the browser prioritizes it during initial load.
19Performance: only 0/68 images set decoding="async". Add decoding="async" to non-critical images to keep image decode off the main thread.

Key Findings

1Viewport meta tag present: width=device-width, initial-scale=1
2HTML5 doctype declared
3Character encoding declared
4Apple touch icons present
5Mobile-responsive hamburger menu detected
6Web app manifest includes 6 icon sizes — good coverage
7Touch feedback CSS detected (active states or touch-action)
83 internationalization signals detected (hreflang, lang, dir, locale meta)
965 image(s) without explicit width/height — most impactful for layout stability (CLS) on mobile (see Performance for remediation)

Issues Found

1No theme-color meta tag
2No web app manifest found
3No responsive image srcset — mobile users may download oversized images
4Popup/modal/interstitial detected — Google penalizes intrusive interstitials on mobile
5Estimated page weight ~4293KB — heavy for mobile data plans

Recommendations to Reach 100%

1Add <meta name="theme-color"> for browser chrome styling on mobile
2Create a manifest.json for PWA capabilities and add-to-homescreen support
3Consider implementing a service worker for offline support and faster repeat visits
4Implement srcset to serve smaller images on mobile devices, saving bandwidth
5Remove or minimize intrusive interstitials on mobile — Google's Page Experience update penalizes full-screen popups that block content
6Add env(safe-area-inset-*) CSS for proper display on notched/island devices
7Reduce page weight below 2MB: optimize images (WebP/AVIF), defer non-critical JS, remove unused CSS
8Mobile/PWA: incomplete Apple web-app meta tags (missing capable, status-bar-style, title). Add apple-mobile-web-app-capable, -status-bar-style and -title for a polished iOS home-screen install.
9Mobile/PWA: viewport meta lacks viewport-fit=cover. Add it (with safe-area-inset padding) so content renders edge-to-edge on notched/dynamic-island devices.

Key Findings

1HTTPS enabled — encrypted connection
2HSTS header present — enforces HTTPS
3Content Security Policy header present
4X-Content-Type-Options: nosniff is set
5X-Frame-Options header prevents clickjacking
6Privacy policy link detected
7CSP strictness score 40/100 — adequate for modern framework apps that require inline styles/scripts
8Rate limiting recommended for form endpoints
9security.txt present and valid (/.well-known/security.txt) — provides a channel for vulnerability disclosure
10No stack traces or sensitive error details exposed in responses
11No raw email addresses exposed in page source
12No obvious secret/API-key patterns exposed in page source
135 script resource(s) catalogued for software-composition review
14No common sensitive paths (.git, .env, server-status, …) were publicly accessible
15A09: a client-side error/monitoring integration (e.g. Sentry/Datadog) is present — supports security logging & alerting.

Issues Found

1Missing Referrer-Policy header
2Missing Permissions-Policy header
3Server header exposes technology: Apache
465 external links missing rel="noopener noreferrer" — security risk
5HSTS header present but missing preload directive
6Cookie security issues: missing Secure flag; missing HttpOnly flag; missing SameSite attribute
7No cookie consent banner detected
8No Subresource Integrity (SRI) on external scripts
9Server technology disclosed via response headers/markup: Server: Apache
10Legacy X-XSS-Protection header present — deprecated and can introduce vulnerabilities in older browsers
11CSP is missing key hardening directive(s): base-uri, form-action, object-src
12Dangerous client-side sink(s) detected in inline scripts: innerHTML assignment — potential DOM-based XSS vectors
13robots.txt discloses sensitive-looking path(s): /blog/tags-search, /blog/tags-search.html, /content/dam/fortinet/assets/ja_jp/private/* — Disallow entries can act as a map for attackers

Recommendations to Reach 100%

1Add Referrer-Policy: strict-origin-when-cross-origin to control referrer leakage
2Add Permissions-Policy to restrict access to camera, microphone, geolocation, etc.
3Add Cross-Origin-Opener-Policy: same-origin-allow-popups
4Add Cross-Origin-Resource-Policy: cross-origin
5Remove or obfuscate the Server header to avoid exposing your technology stack
6Add rel="noopener noreferrer" to all external links with target="_blank" to prevent tabnabbing attacks
7Add "preload" to your HSTS header and submit to hstspreload.org for maximum HTTPS enforcement
8Set Secure, HttpOnly, and SameSite=Strict (or Lax) attributes on all cookies to prevent session hijacking and CSRF
9Implement a cookie consent banner for GDPR/ePrivacy compliance
10Add integrity attributes to external scripts/stylesheets to prevent supply-chain attacks
11Strengthen CSP: consider nonce-based policies when feasible
12Implement rate limiting on form endpoints to prevent brute-force attacks and spam submissions
13Remove or obfuscate technology-revealing headers (Server, X-Powered-By, X-AspNet-Version) and the generator meta tag to reduce your attack surface
14Remove the deprecated X-XSS-Protection header and rely on a strong Content-Security-Policy instead [Impact: Low | Effort: Low]
15Add the missing CSP directives (base-uri, form-action, object-src) — e.g. object-src 'none', base-uri 'self', frame-ancestors 'none' — to close common bypasses [Impact: Medium | Effort: Low]
16Avoid eval, document.write, innerHTML and Function() with untrusted input; prefer textContent, DOM APIs and a trusted-types policy [Impact: Medium | Effort: Medium]
17Avoid listing admin/private paths in robots.txt; protect them with authentication instead of relying on obscurity [Impact: Low | Effort: Low]
18A03 Software Supply Chain: only 0% of 2 cross-origin scripts use Subresource Integrity. Pin every third-party script with integrity+crossorigin and adopt SLSA provenance / a published SBOM for build integrity.
19A07 Authentication Failures: cookies do not use the __Host-/__Secure- prefix. Prefix session cookies with __Host- (with Secure, Path=/, no Domain) and add the Partitioned (CHIPS) attribute for cross-site isolation.
20A08 Integrity Failures: dynamic remote script injection detected. Load third-party code with static tags carrying SRI, or gate it behind a strict CSP with Trusted Types to prevent tampered-update execution.

Key Findings

1Language declared: en
2All key landmarks present (main, nav, footer)
3All 3 forms have proper labels
4All 57 buttons have accessible labels
5Rich ARIA implementation: 76 elements with ARIA attributes
6Language-specific content sections marked with lang attribute (WCAG 3.1.2)

Issues Found

1No skip navigation link
220 of 68 images (29%) missing alt text
3No focus styles detected
44 minor HTML validity issue(s)
565 images missing explicit dimensions — causes layout shifts for screen reader users
617 duplicate ID(s) — breaks ARIA references and label associations

Recommendations to Reach 100%

1Add a "Skip to main content" link as the first focusable element for keyboard users
2Add descriptive alt text to all images — use empty alt="" only for decorative images
3Add :focus-visible styles to all interactive elements for keyboard navigation visibility
4Review and fix HTML structure issues for better accessibility and cross-browser compatibility
5Set explicit width and height (or CSS aspect-ratio) on all images to prevent layout shifts that disorient assistive technology users
6Ensure all element IDs are unique — duplicate IDs break form labels, ARIA relationships, and fragment navigation
7Accessibility: no forced-colors / prefers-contrast media handling detected. Test and support Windows High Contrast / forced-colors mode so essential UI remains visible.

Key Findings

12 schema block(s): Organization, WebSite
2Hreflang tags: en-us, de-de, fr-fr, it-it, en-gb, pt-br, es, zh-hans-cn, zh-tw, ko-kr, ja-jp
3Strong semantic markup: header, nav, figure, section, main, footer
4Complete social metadata (OG + Twitter Card)
5Sitemap reference detected
620 strong entity mentions (bold/emphasized text)
7Social presence signals: youtube, linkedin, twitter, instagram, facebook
813 call-to-action elements detected
9No AI crawlers blocked via meta tags — content accessible to AI search engines
10robots.txt file found
11robots.txt references 13 sitemap(s) — aids AI crawler discoverability
12High RAG-friendliness (100/100): 0 headings with IDs, 12 section anchors
13Content provenance signals detected (citations with sources, attributed claims)
14Content freshness signals present (dateModified/datePublished/time elements)
15Good HTML-to-text ratio (34%) — AI crawlers can extract content efficiently

Issues Found

1No breadcrumb navigation
2No FAQ or Q&A content patterns found
3robots.txt blocks all crawlers with "Disallow: /" for User-agent: *
4No llms.txt file found — AI models cannot find structured guidance for your site

Recommendations to Reach 100%

1Add more structured data types (FAQ, HowTo, Breadcrumb) to improve AI comprehension
2Add breadcrumb navigation with BreadcrumbList schema for better site hierarchy signals
3Add an FAQ section with FAQPage schema to increase chances of AI engine citations
4CRITICAL: robots.txt is blocking all crawlers. Unless intentional, remove the "Disallow: /" rule under "User-agent: *" immediately
5Create /llms.txt following the llms.txt standard: # Title, > description, ## Overview, ## Core Services, ## Key Pages with full URLs
6Create /llms-full.txt with comprehensive documentation (services, pricing, team, case studies) for AI models that need depth
7Add <link rel="alternate" type="text/plain" href="/llms.txt"> in your HTML <head> for AI discoverability
8AI Readiness (multimodal): only 40% of images have descriptive alt text (≥15 chars). Rich, standalone alt text lets multimodal models understand and cite your imagery.

Key Findings

1Comprehensive content (3084 words) — strong for AI model training
2Strong entity emphasis: 20 key terms highlighted
3Structured content: 134 lists, 0 tables — easily parsed by AI
459 external citations — strong reference density for AI model training
56 statistics/data points — excellent for AI knowledge extraction
6Strong CRO: 19 clear call-to-action elements detected
7Above-the-fold CTA detected — captures immediate visitor attention
8Good form usability score: 100/100
9Trust signals present: Trust Badges, Social Proof Logos, HTTPS Security
10Clear value proposition detected in heading elements

Issues Found

1No structured Q&A content
2Low semantic markup ratio — 772 divs vs 40 semantic elements
3Weak E-E-A-T schema signals
4Paragraphs are too long for optimal AI consumption
5No author or expertise signals
6No social proof elements

Recommendations to Reach 100%

1Add FAQ or Q&A sections — AI models heavily rely on question-answer patterns for training data
2Replace generic <div> wrappers with semantic elements (article, section, aside, figure) for AI clarity
3Add Person, Article, and Review schemas to demonstrate expertise, experience, authoritativeness, and trustworthiness
4Break long paragraphs into shorter ones (under 30 words) for better AI comprehension and snippet extraction
5Add Speakable schema markup to help voice assistants identify the most important content
6Include expert quotes in <blockquote> elements to boost E-E-A-T and citation potential
7Add visible author bylines with bios and link to author pages — AI models evaluate content credibility through authorship signals
8Add social proof: testimonials, client counts ("500+ businesses served"), case studies, or review snippets near CTAs

Key Findings

1134 lists provide scannable, AI-friendly content
2How-to instructional patterns detected — valued by AI answer engines
3Comprehensive content depth (3084 words) supports AI citation
420 emphasized terms suggest unique, quotable insights
52 schema blocks help AI engines understand content context
6comprehensive content length — good for authority signals
7Hreflang includes self-referencing tag
86 data points/statistics — content has original research signals
920 original data elements (charts, figures, data tables)
10Content is fresh (updated within 30 days) — strong recency signal

Issues Found

1No direct Q&A patterns for generative AI extraction
2No data tables for AI comparison extraction
3paragraphs may be too long for featured snippets
4Hreflang set is missing x-default fallback

Recommendations to Reach 100%

1Structure content with clear questions as headings (H2/H3) followed by concise, definitive answers in the first paragraph
2Add comparison tables with structured data — generative AI engines frequently cite tabular content
3Consider using <dl>/<dt>/<dd> definition lists for key terms and concepts
4Add <link rel="alternate" hreflang="x-default" href="primary-url"> as a fallback for unmatched languages/regions
5Include first-hand insights using phrases like "our research found" or "based on our analysis" to demonstrate original expertise
6GEO: only 0/22 sub-headings are question-phrased. Convert key sections into natural-language questions so generative engines can extract and cite direct answers.
7GEO: no comparison tables or step-by-step structured blocks found. Add comparison tables and ordered how-to steps — formats generative engines favor for structured, citable answers.

Key Findings

1134 lists provide scannable answers for People Also Ask
234 concise answer-length paragraphs (10–50 words) — ideal for snippet extraction

Issues Found

1No FAQ content or schema
2How-to content exists but lacks HowTo schema
3Content not optimized for featured snippets
4No Speakable schema for voice search
5Paragraphs too long for answer engine extraction
6No breadcrumb navigation
7No direct answer patterns ("X is defined as...", "X refers to...")
8Paragraphs too long for voice assistant extraction

Recommendations to Reach 100%

1Create an FAQ section with FAQPage structured data — essential for People Also Ask and featured snippet inclusion
2Add HowTo schema to your instructional content for rich result eligibility
3Use question-based H2/H3 headings followed by a direct 40–60 word answer paragraph for featured snippet targeting
4Add Speakable schema to mark sections suitable for text-to-speech by voice assistants
5Keep answer paragraphs under 30 words — voice assistants and answer engines prefer concise, direct responses
6Add breadcrumb navigation with BreadcrumbList schema for better content hierarchy signals
7Consider adding video content with VideoObject schema for multimedia search results
8Include direct definitional statements like "X is..." or "X refers to..." — answer engines extract these as zero-click results
9Keep paragraphs under 30 words for voice search — voice assistants read concise, conversational content
10AEO: no 40–60 word concise answer directly follows a question heading. Lead each question section with a self-contained ~40–60 word answer to win featured snippets and voice answers.

Key Findings

1NAP information detected: phone: 641116 1181
2Phone number(s) visible: 641116 1181, 670701 1077

Issues Found

1No LocalBusiness structured data
2No Google Maps embed
3No address microdata
4No geo meta tags
5No review/rating schema

Recommendations to Reach 100%

1Consider displaying a business email for direct contact signals
2Add LocalBusiness (or specific subtype like ProfessionalService) JSON-LD schema with name, address, phone, hours, and geo coordinates
3Add an embedded Google Map to your contact or about page for local search signals
4Add PostalAddress schema or itemprop="address" microdata to your address elements
5Add geo.region, geo.placename, and geo.position meta tags for geographic targeting
6Add AggregateRating schema to display star ratings in search results — reviews significantly impact local click-through rates
7Local SEO: local business signals present but no explicit city/region in the title, H1 or opening paragraph. Add "City, State" to your title/H1 and intro to reinforce local relevance.
8Local SEO (NAP): the visible phone number does not match schema telephone. Keep Name/Address/Phone identical across visible content, schema and directories for local ranking consistency.

Key Findings

12 JSON-LD block(s) with types: Organization, WebSite
2All structured data uses JSON-LD format — Google's recommended format
3Moderate schema coverage
4Some top-tier schemas: Organization, WebSite
5Entity linking via sameAs: 5 external profiles linked — strengthens Knowledge Graph
6SearchAction schema present — eligible for sitelinks search box in Google

Issues Found

1WebSite has very few properties (2)
2Schema property completeness averaging 61%
3No rich results eligibility detected

Recommendations to Reach 100%

1Add more top-tier schema types — consider: LocalBusiness, Product, Article
2Consider adding secondary schema types: Person, HowTo, Service, Event for richer search features
3Add missing high-impact schemas: Product, HowTo
4Add BreadcrumbList schema — enables breadcrumb rich results in Google
5Add FAQPage schema to FAQ content — enables expandable rich results
6Consider adding HowTo schema for instructional content
7Add more properties to schema types — aim for at least 5 meaningful properties per type
8Fill in missing recommended properties for each schema type
9Add FAQ, HowTo, or Breadcrumb schema to become eligible for enhanced search result features

Key Findings

1Links are visually distinguishable (underline or decoration detected)
2Relative units (rem/em/clamp) detected — supports text resizing
3Page language declared — aids assistive technology
4All ARIA roles are valid
5Focus not obscured by sticky/fixed elements (WCAG 2.4.11)
6Accessible authentication detected (autocomplete, no CAPTCHA barriers) — WCAG 3.3.8
72 ARIA live regions for dynamic content announcements

Issues Found

1No prefers-reduced-motion support
2No high contrast mode support
3No error suggestion mechanisms detected in forms
4Low semantic-to-div ratio — 772 divs vs 40 semantic elements
5No focus styles detected
6No form error identification detected

Recommendations to Reach 100%

1Add @media (prefers-reduced-motion: reduce) to disable animations for users who are sensitive to motion
2Add @media (prefers-contrast: high) or (forced-colors: active) styles for users with low vision
3Add aria-invalid, aria-errormessage, and visible error messages for form validation (WCAG 3.3.3)
4Replace more generic <div> elements with semantic HTML5 tags for better screen reader navigation
5Add :focus-visible CSS styles to all interactive elements (WCAG 2.4.7)
6Add aria-invalid, aria-errormessage, and inline error messages to form fields (WCAG 3.3.1/3.3.3)
Limited-Time Offer

All 12 Optimizations — Bundled Into Your Custom Website

We're currently bundling every optimization from this audit — SEO, AIO, GEO, AEO, Schema.org, WCAG accessibility, performance, security, and more — directly into our Custom Web Application Development service.

Instead of fixing issues after launch, we eliminate them from the start. Every website we build ships production-ready with a 90+ score across all 12 audit dimensions.