Digital Marketing Company 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://carolinescakes.com/ across 12 critical dimensions with actionable recommendations.

https://carolinescakes.com/
47Poorout of 100

Website Audit Report

Caroline's Cakes | Mail Order Cakes, Famous Caramel Cake, Custom Cakes

August 22, 2026 at 12:06 PM EDT 365ms response HTTPS Secure

Executive Summary

https://carolinescakes.com/ scores 47/100 (F). Priority improvements needed in SEO, Performance, Security. The site has 830 words, 92 images, and 0 schema blocks. Data confidence: 85%. Sustainability score: 60/100. Focus on the top recommendations below to improve your score.

365ms
Response Time
830
Word Count
92
Images
166
Links

Website Preview

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

Score Breakdown — 12 Dimensions

Top Issues to Fix

1[SEO] Title tag is too long (70 chars — may be truncated in SERPs)
2[SEO] Meta description may be truncated (239 chars)
3[SEO] Missing Twitter tags: twitter:image
4[SEO] 4 empty/unlabeled links found
5[SEO] 39 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 (39) — excessive link equity leakage
8[SEO] Primary keyword "carolines cakes" not found in H1
9[SEO] Primary keyword missing from first paragraph
10[SEO] Moderate readability (42 Flesch) — content may be difficult for some readers

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 descriptive anchor text to all links for better SEO and accessibility
4[Impact: Medium | Effort: Medium] Add rel="nofollow noopener noreferrer" and target="_blank" to all external links to prevent equity leakage and improve security
5[Impact: High | Effort: Low] Customize og:title and og:description separately from page title/meta description for better social sharing CTR
6[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
7[Impact: High | Effort: Low] Include your primary keyword in the H1 heading for strongest on-page SEO signal
8[Impact: High | Effort: Low] Include your primary keyword naturally in the first paragraph to establish topical relevance early
9[Impact: Medium | Effort: Medium] Simplify sentence structure and use shorter words to improve readability to 60+ Flesch Reading Ease
10[Impact: Medium | Effort: Low] Add <meta property="og:locale" content="en_US"> (or your locale) for precise language targeting in social shares
11[Impact: Medium | Effort: Medium] Convert your OG image to WebP format for faster social media loading (1200×630px recommended)
12[Impact: Medium | Effort: Medium] Use a 1200×630px OG image and declare og:image:width / og:image:height for optimal previews

Detailed Category Analysis

Key Findings

1Single H1 tag present: "Caroline's Cakes"
2Clean heading hierarchy with no skipped levels
3Canonical URL is set and matches the page URL
4Complete Open Graph tags (title, description, image, url, type)
5HTML lang attribute set to "en"
6Favicon present
7127 internal links help establish site architecture
839 external links provide reference signals
9Content length of 830 words is adequate
10166 total links — within recommended range
11URL length (27 chars) is within optimal range
12No redirect chain — direct URL resolution
13Healthy internal link ratio: 77% of links are internal
14Good anchor text diversity: 64% unique anchor texts
15Primary keyword present in URL — good URL optimization
16Strong E-E-A-T signals detected (5 indicators)
17Twitter card uses summary_large_image — maximum visual impact
18Low passive voice ratio (8%) — clear, active writing style
19Table of Contents detected — improves dwell time and jump-link navigation
20Strong entity salience: Eat Cake, Be Happy, Layer Caramel (score: 100)
21Social share buttons detected: ShareThis

Issues Found

1Title tag is too long (70 chars — may be truncated in SERPs)
2Meta description may be truncated (239 chars)
3Missing Twitter tags: twitter:image
44 empty/unlabeled links found
539 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 (39) — excessive link equity leakage
8Primary keyword "carolines cakes" not found in H1
9Primary keyword missing from first paragraph
10Moderate readability (42 Flesch) — content may be difficult for some readers
11Missing og:locale tag — social platforms may guess language/region
12OG image dimensions too small for social platforms
13Very high internal link density (153/1k words) — may appear spammy
14Primary keyword "carolines cakes" 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 descriptive anchor text to all links for better SEO and accessibility
4Add rel="nofollow noopener noreferrer" and target="_blank" to all external links to prevent equity leakage and improve security
5Customize og:title and og:description separately from page title/meta description for better social sharing CTR
6Reduce dofollow external links to 2–5 per page. Add rel="nofollow" to low-value or affiliate links to preserve PageRank
7Include your primary keyword in the H1 heading for strongest on-page SEO signal
8Include your primary keyword naturally in the first paragraph to establish topical relevance early
9Simplify sentence structure and use shorter words to improve readability to 60+ Flesch Reading Ease
10Add <meta property="og:locale" content="en_US"> (or your locale) for precise language targeting in social shares
11Convert your OG image to WebP format for faster social media loading (1200×630px recommended)
12Use a 1200×630px OG image and declare og:image:width / og:image:height for optimal previews
13Add <meta property="article:published_time"> for content freshness signals in social shares
14Add <meta property="article:modified_time"> to signal content freshness
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 (E-E-A-T): no author linkage or sameAs identity markup detected. Add a verifiable author byline with rel="author" and sameAs links to strengthen Experience/Expertise signals.
20SEO: 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: 365ms
2No render-blocking scripts detected
389/92 images use lazy loading
4Modern image formats (WebP/AVIF) detected
5Responsive images with srcset detected
6Most images have explicit width/height attributes (prevents layout shift)
7Preconnect hints for: https://cdn.shopify.com, https://fonts.shopifycdn.com, https://shop.app
8font-display property detected — reduces invisible text during font loading
96 async and 14 deferred scripts
10Lean CSS payload (~193KB)
11HTTP/3 (QUIC) detected — fastest connection protocol
12CDN detected: Cloudflare — reduces latency for global users
13Brotli compression enabled — best-in-class compression
148 resource hints (preconnect/prefetch/preload) optimize loading
15Estimated LCP: ~1245ms — within Google's "good" threshold (<2.5s)
16Server-Timing header present — enables performance debugging
17Alternative analytics platform detected (Plausible/Umami/Matomo)

Issues Found

1Large HTML document: 386KB
2No effective Cache-Control header
338 inline <style> blocks
445 inline scripts
5Heavy JavaScript payload (~1148KB across 19 files)
610 third-party scripts detected
76 render-blocking CSS files — delays first paint
8Potential long-task scripts: Inline script (~16KB), Inline script (~150KB)
9Moderate estimated CLS: 0.17 — above 0.1 "good" threshold
10Estimated INP: ~269ms — needs improvement (goal: <200ms)
11Web fonts loaded without preload — causes FOIT/FOUT flash

Recommendations to Reach 100%

1Reduce HTML size by minifying markup, removing inline styles, and deferring non-critical content
2Preload critical resources (fonts, hero images) with <link rel="preload">
3Set Cache-Control headers with appropriate max-age to leverage browser caching
4Extract inline styles into external CSS files for better caching and maintainability
5Move inline scripts to external files with defer attributes
6Reduce JavaScript with code splitting, tree shaking, and lazy loading. Target <500KB total JS for optimal performance
7Review third-party scripts and defer non-essential ones to improve page load time
8Preload your primary font with <link rel="preload" as="font" crossorigin> for faster first contentful paint
9Reduce render-blocking CSS by inlining critical CSS, using media queries on non-critical stylesheets, and loading non-critical CSS asynchronously
10Review large inline/external scripts that may block the main thread. Use web workers or break into smaller async chunks
11Reduce CLS: set image dimensions, preload web fonts, reserve space for ads and dynamic content
12Improve INP: break up long JavaScript tasks, use web workers for heavy computation, debounce input handlers
13Add <link rel="preload" as="font" crossorigin> for your primary font files to eliminate flash of invisible/unstyled text
14Consider adding Google Search Console integration alongside your analytics for SEO-specific insights
15Performance: no Speculation Rules API detected. Add <script type="speculationrules"> to prerender/prefetch likely next navigations for near-instant page transitions.
16Performance (LCP): no image declares fetchpriority="high". Mark the LCP hero image with fetchpriority="high" so the browser prioritizes it during initial load.
17Performance: only 0/92 images set decoding="async". Add decoding="async" to non-critical images to keep image decode off the main thread.
18Performance: ES modules are used without modulepreload. Add <link rel="modulepreload"> for critical modules to remove waterfall latency on module graphs.

Key Findings

1Viewport meta tag present: width=device-width,initial-scale=1
2HTML5 doctype declared
3Character encoding declared
4Theme color meta tag set for mobile browsers
5Responsive images via srcset serve appropriate sizes per device
689 images with lazy loading benefit mobile data users
7Mobile-responsive hamburger menu detected

Issues Found

1No web app manifest found
2Missing Apple touch icon
3Popup/modal/interstitial detected — Google penalizes intrusive interstitials on mobile
4Estimated page weight ~6577KB — heavy for mobile data plans

Recommendations to Reach 100%

1Create a manifest.json for PWA capabilities and add-to-homescreen support
2Add <link rel="apple-touch-icon"> for iOS homescreen icons
3Consider implementing a service worker for offline support and faster repeat visits
4Remove or minimize intrusive interstitials on mobile — Google's Page Experience update penalizes full-screen popups that block content
5Add env(safe-area-inset-*) CSS for proper display on notched/island devices
6Add :active / touch-action CSS for tactile feedback on mobile interactions
7Reduce page weight below 3MB: 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
6Server via CDN proxy (cloudflare) — header added by infrastructure, not application
7No cookie security issues detected
8Privacy policy link detected
9Subresource Integrity (SRI) on 2 resource(s) — prevents CDN tampering
10CSP strictness score 40/100 — adequate for modern framework apps that require inline styles/scripts
11Rate limiting recommended for form endpoints
12No server software/technology fingerprints exposed in headers or markup
13No stack traces or sensitive error details exposed in responses
14No raw email addresses exposed in page source
1519 script resource(s) catalogued for software-composition review
16No common sensitive paths (.git, .env, server-status, …) were publicly accessible
17A09: 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
339 external links missing rel="noopener noreferrer" — security risk
4HSTS header present but missing preload directive
5HSTS max-age is only 91 days — should be at least 1 year
6No cookie consent banner detected
7security.txt file is missing — no standardized channel for reporting vulnerabilities
8Legacy X-XSS-Protection header present — deprecated and can introduce vulnerabilities in older browsers
9CSP is missing key hardening directive(s): base-uri, form-action, object-src
101 state-changing POST form(s) show no visible anti-CSRF token (heuristic — SameSite cookies may still protect them)
11Dangerous client-side sink(s) detected in inline scripts: innerHTML assignment, new Function() — potential DOM-based XSS vectors
12Possible secret/API key pattern(s) exposed in page source: JWT / bearer token — CRITICAL if these are live credentials (CWE-798)
13robots.txt discloses sensitive-looking path(s): /admin, /blogs/*+*, /blogs/*%2B* — Disallow entries can act as a map for attackers
14A05 Injection: GraphQL introspection is enabled in production, exposing the full schema and easing injection/abuse mapping. Disable introspection and enforce query depth/complexity limits.

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
5Add rel="noopener noreferrer" to all external links with target="_blank" to prevent tabnabbing attacks
6Add "preload" to your HSTS header and submit to hstspreload.org for maximum HTTPS enforcement
7Set HSTS max-age to at least 31536000 (1 year) for proper security enforcement
8Implement a cookie consent banner for GDPR/ePrivacy compliance
9Strengthen CSP: consider nonce-based policies when feasible
10Implement rate limiting on form endpoints to prevent brute-force attacks and spam submissions
11Add an RFC 9116 security.txt at /.well-known/security.txt with Contact and Expires fields so researchers can responsibly report security issues [Impact: Low | Effort: Low]
12Remove the deprecated X-XSS-Protection header and rely on a strong Content-Security-Policy instead [Impact: Low | Effort: Low]
13Add 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]
14Include a per-request anti-CSRF token (or rely on SameSite=Strict/Lax cookies plus origin checks) on all state-changing forms [Impact: Medium | Effort: Medium]
15Avoid eval, document.write, innerHTML and Function() with untrusted input; prefer textContent, DOM APIs and a trusted-types policy [Impact: Medium | Effort: Medium]
16Immediately verify and rotate any exposed keys; never embed private API keys, tokens or credentials in client-side code — proxy them through a server [Impact: Critical | 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 10% of 10 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: no phishing-resistant factor detected (WebAuthn/passkeys/TOTP MFA). Offer passkeys or TOTP and enforce ASVS L2 credential and session controls.
20A07 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.
21A08 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
2Skip navigation link present
3All key landmarks present (main, nav, footer)
4All 92 images have alt attributes
5All 2 forms have proper labels
6All 33 buttons have accessible labels
7Rich ARIA implementation: 51 elements with ARIA attributes

Issues Found

1No focus styles detected
22 minor HTML validity issue(s)
3CAPTCHA detected without accessible alternative
433 focusable element(s) inside aria-hidden containers

Recommendations to Reach 100%

1Add :focus-visible styles to all interactive elements for keyboard navigation visibility
2Review and fix HTML structure issues for better accessibility and cross-browser compatibility
3Provide an audio CAPTCHA alternative or use invisible/accessible CAPTCHA solutions (WCAG 1.1.1)
4Remove focusable elements (links, buttons, inputs) from aria-hidden regions — they trap keyboard users in invisible content
5Accessibility: no forced-colors / prefers-contrast media handling detected. Test and support Windows High Contrast / forced-colors mode so essential UI remains visible.

Key Findings

1Strong semantic markup: header, details, summary, main, footer
2Complete social metadata (OG + Twitter Card)
3FAQ/Q&A content patterns detected — highly valuable for AI citation
4Social presence signals: instagram, facebook, pinterest
59 call-to-action elements detected
6No AI crawlers blocked via meta tags — content accessible to AI search engines
7robots.txt file found
8robots.txt references 1 sitemap(s) — aids AI crawler discoverability
9llms.txt detected (score: 81/100, quality: comprehensive)
10llms-full.txt companion file detected (4KB)
11llms.txt has 11 well-organized sections
12llms.txt references 16 URLs for AI navigation
13llms.txt includes service/product catalog
14llms.txt uses proper Markdown formatting for machine readability
15llms.txt links to detailed documentation (llms-full.txt)
16llms.txt uses canonical domain in URLs
17llms.txt provides content usage guidelines for AI
18llms.txt includes version/date for freshness tracking
19High RAG-friendliness (100/100): 0 headings with IDs, 42 section anchors
20Content provenance signals detected (citations with sources, attributed claims)
21Good HTML-to-text ratio (50%) — AI crawlers can extract content efficiently

Issues Found

1No structured data (Schema.org) found
2No breadcrumb navigation
3No sitemap reference found
4llms.txt missing blockquote description
5llms.txt is not referenced in HTML
6No content freshness signals (dateModified, datePublished, <time> elements)
7High JS content ratio (51%) — most content may require JavaScript execution

Recommendations to Reach 100%

1Implement JSON-LD structured data — start with Organization, BreadcrumbList, and page-specific types
2Add hreflang tags if your site serves multiple languages or regions
3Add breadcrumb navigation with BreadcrumbList schema for better site hierarchy signals
4Create and reference an XML sitemap for AI crawler discoverability
5Use <strong> and <em> tags to highlight key entities, concepts, and terms
6Add a > blockquote summary on line 2-3 describing your business in 1-2 sentences
7Add <link rel="alternate" type="text/plain" href="/llms.txt"> in your <head> for discoverability
8Add dateModified and datePublished meta tags and use <time datetime="..."> elements — AI models prefer fresh, timestamped content
9Reduce JavaScript dependence for content rendering — AI crawlers may not execute JS and miss your content
10AI Readiness (multimodal): only 1% of images have descriptive alt text (≥15 chars). Rich, standalone alt text lets multimodal models understand and cite your imagery.

Key Findings

1Moderate content depth (830 words)
22 FAQ/Q&A elements detected
3Structured content: 15 lists, 0 tables — easily parsed by AI
433 external citations — strong reference density for AI model training
515 statistics/data points — excellent for AI knowledge extraction
65 blockquotes/quotes enhance authority signals
7Strong CRO: 15 clear call-to-action elements detected
8Good form usability score: 100/100
9Trust signals present: Reviews/Testimonials, HTTPS Security, Privacy Policy
10Social proof elements detected — builds credibility and conversion confidence
11Clear value proposition detected in heading elements

Issues Found

1Weak entity markup — few terms emphasized
2Low semantic markup ratio — 480 divs vs 7 semantic elements
3Weak E-E-A-T schema signals
4Paragraphs are too long for optimal AI consumption
5No author or expertise signals
6No CTA above the fold

Recommendations to Reach 100%

1Expand FAQ section with more questions to increase AI training coverage
2Use <strong>, <em>, and <mark> to highlight key entities, concepts, and brand terms for AI comprehension
3Replace generic <div> wrappers with semantic elements (article, section, aside, figure) for AI clarity
4Add Person, Article, and Review schemas to demonstrate expertise, experience, authoritativeness, and trustworthiness
5Break long paragraphs into shorter ones (under 30 words) for better AI comprehension and snippet extraction
6Add Speakable schema markup to help voice assistants identify the most important content
7Add visible author bylines with bios and link to author pages — AI models evaluate content credibility through authorship signals
8Place a clear CTA in your hero/header section so visitors see a conversion path immediately upon landing
9AIO: no schema "name" property to anchor your primary entity. Declare a consistent Organization/Person/Product name in JSON-LD matching your title and H1.

Key Findings

115 lists provide scannable, AI-friendly content
215 data points/statistics — content has original research signals
35 quotation elements enhance credibility for GEO

Issues Found

1No direct Q&A patterns for generative AI extraction
2No data tables for AI comparison extraction
3Insufficient structured data for generative engine context
4paragraphs may be too long for featured snippets
5No hreflang tags — generative engines cannot determine language/region targeting

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
3Include how-to or step-by-step instructional content for generative AI answer inclusion
4Consider using <dl>/<dt>/<dd> definition lists for key terms and concepts
5Include unique statistics, expert quotes, and original insights that generative AI would want to cite
6Add multiple schema types (Article, FAQ, HowTo) to help generative engines contextualize your content
7Add bidirectional hreflang tags with x-default to help AI engines serve the correct language variant
8Add original data visualizations, charts, or data tables — generative engines cite pages with unique, first-party data
9Include first-hand insights using phrases like "our research found" or "based on our analysis" to demonstrate original expertise
10GEO: only 0/16 sub-headings are question-phrased. Convert key sections into natural-language questions so generative engines can extract and cite direct answers.
11GEO: 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

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

Issues Found

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

Recommendations to Reach 100%

1Add FAQPage schema markup to your FAQ section for rich snippet eligibility in search results
2Consider adding how-to content with HowTo schema for step-by-step rich results
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: 2800822219
2Phone number(s) visible: 2800822219, 222 1422

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 (NAP): a phone number is shown but not declared in structured data. Add telephone (and address) to LocalBusiness schema so NAP is machine-verifiable.

Issues Found

1No Schema.org structured data found
2Missing high-impact schema types: Organization, WebSite, FAQPage, Product, Review

Recommendations to Reach 100%

1Implement JSON-LD structured data immediately — start with Organization, WebSite, and BreadcrumbList
2Priority schema types to add: Organization, WebSite, FAQPage, Product, Review — these have the highest SEO impact for your page type
3Schema.org (maximize): commerce signals detected but no Product schema. Add Product with offers (price, priceCurrency, availability), aggregateRating and review for product rich results.

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

Issues Found

1No prefers-reduced-motion support
2No high contrast mode support
3No error suggestion mechanisms detected in forms
4Low semantic-to-div ratio — 480 divs vs 7 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)
7WCAG 2.2 (1.4.13 Content on Hover/Focus): 11 interactive elements rely on native title tooltips, which are not dismissable, hoverable or persistent. Replace with accessible tooltip components.
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.