Web Accessibility Baseline Audit

Riverside Family Dental

Automated WCAG 2.1 Level A / AA assessment of riversidefamilydental.example, prepared against the technical standard adopted by the U.S. Department of Health and Human Services under Section 504 of the Rehabilitation Act.

Site auditedriversidefamilydental.example
Date of scanSeptember 7, 2026
Pages assessed8
Standard appliedWCAG 2.1 A & AA
Test engineaxe-core (Deque)
Automated findings211 across 8 rules

Why this matters now

HHS has adopted WCAG 2.1 Level AA as the binding technical standard for the websites and mobile applications of entities that receive federal financial assistance from HHS. Because Medicare and Medicaid participation brings a practice within scope, this reaches the large majority of U.S. clinical practices, not only hospitals and health systems.

The compliance dates are May 11, 2027 for recipients with 15 or more employees and May 10, 2028 for those with fewer than 15. Enforcement runs through the HHS Office for Civil Rights, which acts on individual complaints. A single patient who cannot book an appointment online is enough to start one.

What this report is. A measured position as of today, and a sequence for addressing it. Conformance itself is established through manual and assistive-technology evaluation, and the scope note below sets out exactly which part of the standard automated testing reaches.

Where this site stands

Severe gap

Failures appear on every page scanned, indicating site-wide template issues.

54
Critical
149
Serious
8
Moderate
0
Minor

The scan detected 211 accessibility failures across 8 pages, falling under 6 WCAG 2.1 success criteria. Because most of these pages share the same templates, a fix applied once usually resolves the same failure everywhere it appears.

Success criteria with failures: 1.1.1 Non-text Content (A) · 1.4.1 Use of Color (A) · 1.4.3 Contrast (Minimum) (AA) · 1.4.4 Resize Text (AA) · 2.4.4 Link Purpose (In Context) (A) · 4.1.2 Name, Role, Value (A)

What this audit covers, and what it does not

Automated testing is reliable, repeatable, and catches a substantial share of real barriers. It is not a complete assessment. Independent research consistently finds that automated tools detect roughly 30–40% of WCAG issues; the remainder require human judgement.

Covered by this reportRequires manual testing
Missing image alternatives, unlabelled form fields and buttons, colour contrast, page language, heading structure, ARIA errors, landmark structure, frame titles, duplicate IDs, zoom restrictions Whether alt text is accurate, keyboard operability end to end, focus visibility and order, screen reader announcement quality, error recovery in forms, video captions and audio description, PDF and document accessibility, cognitive load and plain language

A defensible compliance position needs both. The manual checklist at the end of this report is the next step, and it is the part most practices skip.

Priority findings

These 7 issue types are rated critical or serious. They block or substantially impair a patient's ability to use the site. Fix these first.

1

ARIA roles used must conform to valid values

Critical 30 instances 8 pages WCAG 4.1.2 (A) aria-roles

Ensure all elements with a role attribute use a valid value

How to fix it

ARIA roles used must conform to valid values. Reference: https://dequeuniversity.com/rules/axe/4.13/aria-roles?application=axeAPI

Evidence (4 of 30)
/ (home page)
.page-content > div:nth-child(2)
<div class="example">representative markup</div>
/contact
.page-content > div:nth-child(2)
<div class="example">representative markup</div>
/new-patient-forms
.page-content > div:nth-child(2)
<div class="example">representative markup</div>
/services
.page-content > div:nth-child(2)
<div class="example">representative markup</div>
2

Images are missing text alternatives

Critical 24 instances 8 pages WCAG 1.1.1 (A) image-alt

What this means for a patient. A patient using a screen reader hears nothing where your image is. If the image is a provider photo, a map, an insurance logo, or a "Book Appointment" graphic, that information simply does not exist for them.

How to fix it

Add an alt attribute to every <img>. Describe the purpose, not the file: alt="Dr. Chen, pediatric dentist". If the image is purely decorative, use alt="" so assistive tech skips it. Never leave alt off entirely.

Estimated effort: Low

Evidence (4 of 24)
/ (home page)
header > a > img
<img src="/uploads/2024/06/practice-logo-white.png">
/contact
header > a > img
<img src="/uploads/2024/06/practice-logo-white.png">
/new-patient-forms
header > a > img
<img src="/uploads/2024/06/practice-logo-white.png">
/services
header > a > img
<img src="/uploads/2024/06/practice-logo-white.png">
3

Text does not have enough contrast against its background

Serious 130 instances 8 pages WCAG 1.4.3 (AA) color-contrast

What this means for a patient. This is the single most common barrier for older patients and anyone with low vision, cataracts, or diabetic retinopathy, a population heavily represented in most practices. Light grey text on white is unreadable for them.

How to fix it

WCAG 2.1 AA requires a contrast ratio of at least 4.5:1 for normal text and 3:1 for text 18pt/24px or larger (or 14pt/18.66px bold). Darken the text colour or lighten the background until the ratio passes. Pay special attention to placeholder text, footer text, and text over hero images.

Estimated effort: Medium

Evidence (4 of 130)
/ (home page)
.site-footer p
<p style="color:#9aa3ad;background:#ffffff">Monday to Thursday, 8am to 5pm</p>
/contact
.site-footer p
<p style="color:#9aa3ad;background:#ffffff">Monday to Thursday, 8am to 5pm</p>
/new-patient-forms
.site-footer p
<p style="color:#9aa3ad;background:#ffffff">Monday to Thursday, 8am to 5pm</p>
/services
.site-footer p
<p style="color:#9aa3ad;background:#ffffff">Monday to Thursday, 8am to 5pm</p>
4

Links have no discernible text

Serious 10 instances 8 pages WCAG 2.4.4 (A)WCAG 4.1.2 (A) link-name

What this means for a patient. Screen reader users navigate by pulling up a list of links. Empty or icon-only links appear as "link" or a raw URL, so the patient cannot find your patient portal or contact page.

How to fix it

Add visible text, or aria-label on icon links (social icons, phone icons, logo links). Avoid "click here". Use the destination, e.g. "New patient forms".

Estimated effort: Low

Evidence (4 of 10)
/ (home page)
.social-links > a:nth-child(1)
<a href="https://facebook.com/example"><i class="fa fa-facebook"></i></a>
/contact
.social-links > a:nth-child(1)
<a href="https://facebook.com/example"><i class="fa fa-facebook"></i></a>
/new-patient-forms
.social-links > a:nth-child(1)
<a href="https://facebook.com/example"><i class="fa fa-facebook"></i></a>
/services
.social-links > a:nth-child(1)
<a href="https://facebook.com/example"><i class="fa fa-facebook"></i></a>
5

Custom input widgets have no accessible name

Serious 7 instances 7 pages WCAG 4.1.2 (A) aria-input-field-name

What this means for a patient. Custom date pickers and comboboxes, common in appointment booking, are unusable.

How to fix it

Add aria-label or aria-labelledby to elements with input roles.

Estimated effort: Medium

Evidence (4 of 7)
/ (home page)
.page-content > div:nth-child(2)
<div class="example">representative markup</div>
/contact
.page-content > div:nth-child(2)
<div class="example">representative markup</div>
/new-patient-forms
.page-content > div:nth-child(2)
<div class="example">representative markup</div>
/services
.page-content > div:nth-child(2)
<div class="example">representative markup</div>
6

Iframes have no title

Serious 1 instance 1 page WCAG 4.1.2 (A) frame-title

What this means for a patient. Embedded maps, appointment schedulers, and videos are announced as "frame" with no explanation. Third-party booking widgets are the most common offender on practice sites.

How to fix it

Add title="Appointment booking" (or similar) to every <iframe>.

Estimated effort: Low

Evidence (1 of 1)
/ (home page)
.map-embed > iframe
<iframe src="https://www.google.com/maps/embed?pb=..." width="600" height="450"></iframe>
7

Links are distinguished only by colour

Serious 1 instance 1 page WCAG 1.4.1 (A) link-in-text-block

What this means for a patient. A colour-blind patient cannot see which words are links, so they miss your appointment request or patient portal link entirely.

How to fix it

Underline links inside body text, or ensure a 3:1 contrast difference against surrounding text plus a non-colour cue on hover and focus.

Estimated effort: Low

Evidence (1 of 1)
/ (home page)
.policy p > a
<p>Please review our <a href="/policy" style="color:#2b6cb0">financial policy</a> before your visit.</p>

Additional findings

These 1 issue type are rated moderate or minor. They degrade the experience for patients using assistive technology and still count as WCAG failures, but they rarely block a task outright.

8

Zooming is disabled

Moderate 8 instances 8 pages WCAG 1.4.4 (AA) meta-viewport

What this means for a patient. A low-vision patient physically cannot enlarge your text on a phone. This is one of the most common and most damaging mobile failures.

How to fix it

Remove user-scalable=no and maximum-scale=1 from the viewport meta tag.

Estimated effort: Low

Evidence (4 of 8)
/ (home page)
meta[name="viewport"]
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">
/contact
meta[name="viewport"]
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">
/new-patient-forms
meta[name="viewport"]
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">
/services
meta[name="viewport"]
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">

Page-by-page results

PageIssue typesInstances
/insurance
Insurance | Riverside Family Dental
638
/new-patient-forms
New Patient Forms | Riverside Family Dental
835
/contact
Contact | Riverside Family Dental
627
/services
Services | Riverside Family Dental
624
/appointments
Request an Appointment | Riverside Family Dental
624
/about
About the Practice | Riverside Family Dental
622
/team
Our Team | Riverside Family Dental
622
/ (home page)
Riverside Family Dental | Riverside Family Dental
519

Recommended remediation sequence

  1. Weeks 1–2 · Template-level fixes

    Address the critical and serious findings above in your site templates: labels, button and link names, page language, frame titles, skip link. Because these live in shared templates, this single pass typically removes the majority of the instance count across every page at once.

  2. Weeks 3–4 · Colour and content

    Correct contrast in your theme's colour tokens, then fix image alternatives and heading order in page content. Contrast is a design-system change; alt text is an editorial task your existing content staff can own with brief guidance.

  3. Weeks 5–8 · Manual audit

    Work through the manual checklist below on your highest-traffic patient journeys: appointment request, new-patient forms, contact, and patient portal entry. This is where the failures that automation cannot see are found.

  4. Weeks 9–12 · Documents and third parties

    Remediate or replace inaccessible PDFs, starting with new-patient paperwork. Ask your scheduling, payment, and portal vendors for their current accessibility conformance reports in writing. Embedded third-party widgets remain your responsibility to your patients.

  5. Ongoing · Hold the line

    Re-scan monthly. Sites regress every time content is added, and a position established once is lost within a few months without monitoring. Keep dated scan records: documented, ongoing effort is exactly what OCR looks for if a complaint is ever filed.

Manual testing checklist

None of the following can be verified by any automated tool. Work through them on your appointment request and new-patient form pages first.

Scope and method

8 pages of riversidefamilydental.example were loaded in a current desktop Chrome browser at 1440×900, allowing client-side scripts to render fully, and then tested with axe-core, the open-source engine maintained by Deque Systems, restricted to WCAG 2.1 Level A and AA rules. Pages were selected automatically from the site's sitemap and homepage navigation, weighted toward patient-facing paths such as appointment, contact, forms, insurance, and provider pages. Findings are reported as rule failures with the number of distinct page elements affected.

Every finding listed corresponds to a real element on a real page, cited above, and each was measured rather than inferred. The inverse does not hold: the absence of a finding on a criterion automated testing cannot reach says nothing about that criterion, which is what the manual checklist is for.