Example Civic Software Accessibility Conformance Report
WCAG Edition (Based on VPAT® Version 2.5Rev)
Version 1.0, issued . Testing: to .
This is a sample. Example Civic Software and its Example Permit Portal are fictional, and so are the findings in this report. The tool and assistive technology version numbers are placeholders; a real report lists the versions recorded on the test dates. The SiteAligned tester credential described below is real.
It shows the structure, testing detail and remark style of the Accessibility Conformance Reports (ACRs) SiteAligned writes. An ACR is a completed Voluntary Product Accessibility Template (VPAT®). See the legal disclaimer.
At a glance
This summary is added by SiteAligned and is not part of the VPAT template. The template content begins with the report title above and continues at "Name of Product/Version."
We tested Example Permit Portal 4.2 against all 55 Level A and AA success criteria in the Web Content Accessibility Guidelines (WCAG) 2.2. We also rated 4.1.1 Parsing, which WCAG 2.2 removed, so buyers who need WCAG 2.0 or 2.1 results get an answer. That makes 56 criteria in total.
- Supports41 criteria
- Partially Supports15 criteria
- Does Not Support0 criteria
Because some criteria are Partially Supports, the product does not currently conform to WCAG 2.x Level AA.
The most serious problem blocks a task completely: people who use a keyboard can't schedule an inspection, because the date picker can't be used without a mouse (2.1.1). The VPAT template rates a criterion Partially Supports when only some of the product fails it, so that is the rating here. The companion findings report rates this issue Critical, its highest severity.
| Version | Criteria | Supports | Partially Supports | Does Not Support |
|---|---|---|---|---|
| WCAG 2.0 Level A and AA | 38 | 28 | 10 | 0 |
| WCAG 2.1 Level A and AA | 50 | 36 | 14 | 0 |
| WCAG 2.2 Level A and AA | 55 | 40 | 15 | 0 |
Report information
- Name of Product/Version
- Example Permit Portal, version 4.2 (build 4.2.118), web application
- Report Date
- Product Description
- A web application that residents and contractors use to apply for building permits, upload documents, pay fees, schedule inspections and check the status of their applications. Tested on desktop browsers and on physical phones.
- Contact Information
- Example Civic Software, accessibility team: accessibility@example.com
Report author: SiteAligned, independent accessibility consultancy, hello@sitealigned.com - Notes
-
What we tested. The vendor's demo site, configured for a fictional county, running build 4.2.118. Six flows were tested end to end:
- Create an account and sign in
- Start, save and submit a permit application, through all five steps: Property, Project, Contacts, Upload documents and Review
- Pay permit fees, including the hosted payment page from the fictional provider ExamplePay (version 3), which every applicant uses
- Schedule an inspection on an issued permit
- Check application status in the Applications list
- Get help: the help pages and the "How to apply" video
We also reviewed the common screens these flows pass through: the home page, site search results, the error page, account settings and the Español link.
Not in scope. The staff and reviewer interface (covered by a separate ACR), the Spanish-language version of the portal, emails the portal sends, generated PDF permits and receipts, native mobile apps and tablets. Content that each county configures, such as its seal, help text and fee names, may differ from the demo.
How to read the remarks. "Every," "all" and "never" refer to the screens and flows listed above. F-numbers such as F1 refer to findings in the companion findings report, which also describes two advisories: problems that meet WCAG but still make tasks harder. Advisories are not counted in the conformance levels below.
Updates. Example Civic Software plans to update this report after major releases. Version 1.0 is the first issue.
Evidence. A test log for every criterion, with screenshots and screen reader recordings for every finding, is kept for three years and is available to Example Civic Software's customers on request.
- Evaluation Methods Used
-
SiteAligned's manual test process, based on the W3C Website Accessibility Conformance Evaluation Methodology (WCAG-EM): a structured sample of screens plus complete processes, each tested against the WCAG 2.2 Understanding documents. Every criterion was tested by hand with the assistive technology, browsers and tools below. Automated scans were a first pass only, because automated rules can check only part of WCAG.
Testing was led by a tester who holds the US Department of Homeland Security (DHS) Trusted Tester certification for Section 508, the US federal accessibility law for information and communication technology. This report is not a DHS Trusted Tester test report.
Test environment
| Assistive technology or method | Platform and device | Browser | Used for |
|---|---|---|---|
| NVDA 2025.3.2 | Windows 11 25H2 | Firefox 147 | Full screen reader pass of every flow |
| JAWS 2026.2512.50 | Windows 11 25H2 | Chrome 144 | Full screen reader pass of every flow |
| Narrator | Windows 11 25H2 | Edge 144 | Spot checks of key flows |
| VoiceOver | macOS 26.2 | Safari 26.2 | Spot checks of key flows |
| VoiceOver | iOS 26.2 on iPhone 16 | Safari 26.2 | Every flow at phone width, on a physical device |
| TalkBack 16.2 | Android 16 on Pixel 9 | Chrome 144 | Every flow at phone width, on a physical device |
| Dragon Professional 16; Voice Control | Windows 11 25H2; macOS 26.2 | Chrome 144; Safari 26.2 | Spot checks of names and labels (2.5.3) |
| Keyboard only | All of the above | All of the above | Every flow: reach, operate, focus order and visibility |
| Zoom to 200% and 400%; 320 by 256 CSS pixel viewport; text-spacing bookmarklet | Windows 11 25H2; macOS 26.2 | Chrome 144; Safari 26.2 | Resize, reflow and text spacing |
| Contrast themes Night sky and Desert | Windows 11 25H2 | Edge 144 | Custom controls and focus indicators |
| Colour Contrast Analyser 3.5 | Windows 11 25H2 | Not applicable | Manual contrast measurement (1.4.3, 1.4.11) |
| Read Aloud, Immersive Reader and automatic translation | Windows 11 25H2 | Edge 144 | Beyond WCAG: content hidden from these tools |
| axe DevTools (axe-core 4.10); WAVE; W3C Nu HTML Checker | Windows 11 25H2 | Chrome 144 | First pass on every tested screen, including open dialogs and error states; never the verdict |
Applicable Standards/Guidelines
This report covers the degree of conformance for the following accessibility standard/guidelines:
| Standard/Guideline | Included In Report |
|---|---|
| Web Content Accessibility Guidelines 2.0 | Level A (Yes) Level AA (Yes) Level AAA (No) |
| Web Content Accessibility Guidelines 2.1 | Level A (Yes) Level AA (Yes) Level AAA (No) |
| Web Content Accessibility Guidelines 2.2 | Level A (Yes) Level AA (Yes) Level AAA (No) |
This WCAG edition reports WCAG 2.x only. It does not report Section 508 chapters 3, 5 and 6 (functional performance criteria, software and support documentation) or EN 301 549 clauses beyond WCAG, such as video player controls and support services. Buyers who need those should ask for the 508, EU or INT edition.
Terms
The terms used in the Conformance Level information are defined as follows:
- Supports
- The functionality of the product has at least one method that meets the criterion without known defects or meets with equivalent facilitation.
- Partially Supports
- Some functionality of the product does not meet the criterion.
- Does Not Support
- The majority of product functionality does not meet the criterion.
How SiteAligned applies these terms
We follow the template definitions. When nothing in the product is covered by a criterion, WCAG counts it as met, so we rate it Supports and say why in the remark. When one serious failure appears in a product that otherwise meets a criterion, we rate it Partially Supports; the remark explains the impact and the findings report gives its severity.
WCAG 2.x Report
Note: When reporting on conformance with the WCAG 2.x Success Criteria, they are scoped for full pages, complete processes, and accessibility-supported ways of using technology as documented in the WCAG 2.0 Conformance Requirements.
Each criterion shows which WCAG versions include it. Level AAA was not evaluated, so Table 3 is omitted, as the template allows.
Table 1: Success Criteria, Level A
Notes: Results apply to the screens and flows listed under Notes above.
| Criteria | Conformance Level | Remarks and Explanations |
|---|---|---|
| 1.1.1 Non-text Content Level A (2.0, 2.1 and 2.2) | Partially Supports | Status icons in the Applications list (Approved, Pending, Rejected) are images with no text alternative. NVDA and JAWS skip them and VoiceOver reads their file names, such as "status-approved.png," so people using screen readers don't learn the status (F2). All other images have accurate alternatives, including the county seal, and decorative images are hidden from assistive technology. |
| 1.2.1 Audio-only and Video-only (Prerecorded) Level A (2.0, 2.1 and 2.2) | Supports | There is no prerecorded audio-only or video-only content on the tested screens, including help pages and onboarding, so there is no content this criterion applies to. |
| 1.2.2 Captions (Prerecorded) Level A (2.0, 2.1 and 2.2) | Supports | The one prerecorded video, "How to apply for a permit" (3 minutes), has accurate, synchronized captions, including speaker changes and meaningful sounds, checked against the full audio. |
| 1.2.3 Audio Description or Media Alternative (Prerecorded) Level A (2.0, 2.1 and 2.2) | Supports | An audio-described version of the video, linked below the player, describes the on-screen actions and text that the narration doesn't speak. It is captioned as well. |
| 1.3.1 Info and Relationships Level A (2.0, 2.1 and 2.2) | Partially Supports | Headings, lists, landmarks and form labels are marked up correctly. The fee summary on the Payment step puts all fee names in one container and all amounts in another, so the pairing of each fee with its amount is shown only visually (F5). |
| 1.3.2 Meaningful Sequence Level A (2.0, 2.1 and 2.2) | Partially Supports | The reading order keeps its meaning on every tested screen, and the two-column application form stacks in the same order at narrow widths. The exception is the fee summary, where screen readers read every fee name first and then every amount (see 1.3.1, F5). |
| 1.3.3 Sensory Characteristics Level A (2.0, 2.1 and 2.2) | Supports | Instructions don't rely on shape, color, size, visual location, orientation or sound; for example, steps say "Select Save and continue" rather than "press the blue button on the right." |
| 1.4.1 Use of Color Level A (2.0, 2.1 and 2.2) | Partially Supports | Color is not the only cue in most places: links in running text are underlined, status icons differ in shape, and form errors use text and an icon. On the Upload documents step, a rejected file is shown only by its border changing from gray to red (see 3.3.1, F3). |
| 1.4.2 Audio Control Level A (2.0, 2.1 and 2.2) | Supports | No audio plays automatically. The help video starts only when someone activates it. |
| 2.1.1 Keyboard Level A (2.0, 2.1 and 2.2) | Partially Supports | Every function works with a keyboard except the inspection date picker, which can't be opened or used without a pointing device: Tab skips the calendar and the arrow keys do nothing. The inspection date can only be set with the picker and is required, so people who use a keyboard can't schedule an inspection (F1). Uploaded documents can be reordered with Alt+Up and Alt+Down, which the Upload documents step explains on screen and which also work while a screen reader is running. |
| 2.1.2 No Keyboard Trap Level A (2.0, 2.1 and 2.2) | Supports | Focus can leave every component with standard keys. The Add document dialog keeps focus inside while it is open, as a modal dialog should, and closes with Escape or its Close button. |
| 2.1.4 Character Key Shortcuts Level A (2.1 and 2.2) | Supports | There are no single-character keyboard shortcuts, so there is no content this criterion applies to. |
| 2.2.1 Timing Adjustable Level A (2.0, 2.1 and 2.2) | Partially Supports | Sessions end after 20 minutes without activity. A warning appears two minutes before, with a Stay signed in button that can be used any number of times. The warning is not made known to people using screen readers, so they are not warned before time runs out (F4). |
| 2.2.2 Pause, Stop, Hide Level A (2.0, 2.1 and 2.2) | Supports | There is no moving, blinking, scrolling or auto-updating content. |
| 2.3.1 Three Flashes or Below Threshold Level A (2.0, 2.1 and 2.2) | Supports | No content flashes, including in the help video. |
| 2.4.1 Bypass Blocks Level A (2.0, 2.1 and 2.2) | Supports | A "Skip to main content" link is the first focusable element on every tested screen, and every screen uses header, navigation, main and footer landmarks. |
| 2.4.2 Page Titled Level A (2.0, 2.1 and 2.2) | Supports | Every tested screen has a unique, descriptive title, for example "Upload documents, step 3 of 5, Permit application." |
| 2.4.3 Focus Order Level A (2.0, 2.1 and 2.2) | Partially Supports | Focus order is logical except after the Add document dialog closes: focus moves to the page itself instead of back to the Add document button, so people using a keyboard have to tab back through the page to continue (F6). |
| 2.4.4 Link Purpose (In Context) Level A (2.0, 2.1 and 2.2) | Supports | Each link's purpose is clear from its text or its sentence. The repeated "View" links in the Applications list include the permit number as visually hidden text. |
| 2.5.1 Pointer Gestures Level A (2.1 and 2.2) | Supports | No function requires a multipoint or path-based gesture. Dragging documents to reorder them depends only on where the drag starts and ends, so it is not path-based (see 2.5.7). |
| 2.5.2 Pointer Cancellation Level A (2.1 and 2.2) | Supports | Controls act when the pointer is released, moving off a control before release cancels the action, and dropping a dragged document outside the list cancels the move. |
| 2.5.3 Label in Name Level A (2.1 and 2.2) | Partially Supports | The accessible names of all other controls include their visible labels, checked in the browser's accessibility tree and spot-checked with Dragon and Voice Control. The date picker's day cells show a day number but have no accessible name (see 4.1.2, F1). |
| 2.5.4 Motion Actuation Level A (2.1 and 2.2) | Supports | No function uses device motion, so there is no content this criterion applies to. |
| 3.1.1 Language of Page Level A (2.0, 2.1 and 2.2) | Supports | Every tested screen declares English as its language. |
| 3.2.1 On Focus Level A (2.0, 2.1 and 2.2) | Supports | Moving focus to a control never changes the context or submits anything. |
| 3.2.2 On Input Level A (2.0, 2.1 and 2.2) | Supports | Changing a setting never submits a form or moves the person to another screen. Choosing a permit type updates the following fields in place and announces the change. |
| 3.2.6 Consistent Help Level A (2.2 only) | Supports | The Help link and the permit office phone number appear in the same place in the footer on every tested screen. |
| 3.3.1 Error Identification Level A (2.0, 2.1 and 2.2) | Partially Supports | Form errors are described in text beside each field and listed at the top of the form. On the Upload documents step, a rejected file type is shown only by a red border, with no text (F3). |
| 3.3.2 Labels or Instructions Level A (2.0, 2.1 and 2.2) | Supports | Every field has a visible label, and required fields are marked "required" in the label, including the inspection date. Typed date fields, such as the project start date, state the expected format, and file fields list the accepted file types. |
| 3.3.7 Redundant Entry Level A (2.2 only) | Supports | Information entered earlier, such as the property address and contact details, is filled in automatically on later steps. |
| 4.1.1 Parsing Level A (2.0 and 2.1; obsolete in 2.2) | Supports | For WCAG 2.0 and 2.1, the September 2023 errata update indicates this criterion is always supported. See the WCAG 2.0 Editorial Errata and the WCAG 2.1 Editorial Errata. In WCAG 2.2 this criterion is obsolete and removed. |
| 4.1.2 Name, Role, Value Level A (2.0, 2.1 and 2.2) | Partially Supports | Custom controls expose correct names, roles and states to NVDA, JAWS, VoiceOver, TalkBack and Narrator, except the inspection date picker, whose day cells have no role, full date or selected state (see 2.1.1, F1). |
Table 2: Success Criteria, Level AA
Notes: Results apply to the screens and flows listed under Notes above.
| Criteria | Conformance Level | Remarks and Explanations |
|---|---|---|
| 1.2.4 Captions (Live) Level AA (2.0, 2.1 and 2.2) | Supports | There is no live audio or video on the tested screens, including help and onboarding, so there is no content this criterion applies to. |
| 1.2.5 Audio Description (Prerecorded) Level AA (2.0, 2.1 and 2.2) | Supports | The one prerecorded video has an audio-described, captioned version that covers the on-screen actions and text the narration doesn't speak. |
| 1.3.4 Orientation Level AA (2.1 and 2.2) | Supports | Every tested screen works in portrait and landscape; nothing locks the orientation. |
| 1.3.5 Identify Input Purpose Level AA (2.1 and 2.2) | Supports | Fields that ask for the applicant's own information use the correct autocomplete values for name, email, phone and street address. The property address field is about the property, not the applicant, so it correctly has none. |
| 1.4.3 Contrast (Minimum) Level AA (2.0, 2.1 and 2.2) | Supports | All text on the tested screens meets 4.5:1, including placeholder text, hints and error messages, and large headings meet 3:1. |
| 1.4.4 Resize Text Level AA (2.0, 2.1 and 2.2) | Supports | Text resizes to 200% with no loss of content or function. |
| 1.4.5 Images of Text Level AA (2.0, 2.1 and 2.2) | Supports | The county seal is a logo, which the criterion allows. Document thumbnails are previews of the files people upload, and their full text is in the documents themselves. |
| 1.4.10 Reflow Level AA (2.1 and 2.2) | Partially Supports | Content reflows to a single column at 320 CSS pixels wide (and fits 256 CSS pixels high) on every tested screen except the Payment step, where the fee summary forces the whole page to scroll sideways (F5). A true data table may scroll on its own; the page may not. |
| 1.4.11 Non-text Contrast Level AA (2.1 and 2.2) | Partially Supports | Controls, icons and focus indicators meet 3:1, except the custom-styled checkbox borders on the Contacts step, which measure 1.8:1 against white (F8). |
| 1.4.12 Text Spacing Level AA (2.1 and 2.2) | Supports | No content is cut off or overlaps when line, paragraph, letter and word spacing are increased to the WCAG values. |
| 1.4.13 Content on Hover or Focus Level AA (2.1 and 2.2) | Supports | Fee tooltips appear on keyboard focus as well as hover, can be dismissed with Escape, stay open while the pointer is over them, and don't disappear on their own. |
| 2.4.5 Multiple Ways Level AA (2.0, 2.1 and 2.2) | Supports | Pages can be reached through the main navigation and the site search. The steps of a permit application are exempt because they are steps in a process. |
| 2.4.6 Headings and Labels Level AA (2.0, 2.1 and 2.2) | Supports | Headings and labels describe their topic or purpose, for example the heading "Upload documents" and the field label "Project start date." |
| 2.4.7 Focus Visible Level AA (2.0, 2.1 and 2.2) | Supports | Every interactive element on the tested screens shows a visible focus indicator. |
| 2.4.11 Focus Not Obscured (Minimum) Level AA (2.2 only) | Supports | The sticky header and the timeout warning never entirely hide the focused element, checked at 100%, 200% and 400% zoom. |
| 2.5.7 Dragging Movements Level AA (2.2 only) | Partially Supports | Documents can be added by dragging or with the Choose file button in the Add document dialog. People using a mouse or touch screen can reorder uploaded documents only by dragging; there are no Move up or Move down buttons. The keyboard shortcut (see 2.1.1) doesn't meet this criterion, which needs a single-pointer alternative (F7). |
| 2.5.8 Target Size (Minimum) Level AA (2.2 only) | Supports | Every target that isn't a link inside a sentence is at least 24 by 24 CSS pixels or has enough space around it. The smallest are the checkboxes (24 by 24); Remove file buttons are 28 by 28 and date picker day cells 32 by 32. |
| 3.1.2 Language of Parts Level AA (2.0, 2.1 and 2.2) | Supports | The "Español" link is marked as Spanish, and there are no other passages in another language on the tested screens. The Spanish-language version of the portal was not in scope. |
| 3.2.3 Consistent Navigation Level AA (2.0, 2.1 and 2.2) | Supports | The main navigation (Home, My applications, Help) appears in the same order on every tested screen. |
| 3.2.4 Consistent Identification Level AA (2.0, 2.1 and 2.2) | Supports | Controls that do the same thing have the same label throughout, for example "Save and continue" on every step. |
| 3.3.3 Error Suggestion Level AA (2.0, 2.1 and 2.2) | Partially Supports | Form error messages say how to fix the problem, for example "Enter a project start date after today, like 11/14/2026." A rejected upload gets no message, so no correction is suggested even though the accepted file types are known (see 3.3.1, F3). |
| 3.3.4 Error Prevention (Legal, Financial, Data) Level AA (2.0, 2.1 and 2.2) | Supports | Before an application or payment is submitted, a review screen shows every entry and lets the person go back and change it. |
| 3.3.8 Accessible Authentication (Minimum) Level AA (2.2 only) | Supports | Typing a password is a cognitive function test, but sign-in supports password managers and pasting, and also offers an emailed sign-in link. There is no CAPTCHA or puzzle. |
| 4.1.3 Status Messages Level AA (2.1 and 2.2) | Partially Supports | Most status messages are announced, such as "Draft saved." The "File uploaded" message is not announced to screen readers (F9). |