Accessibility Conformance Report

WCAG 2.1 Level A and AA, in the VPAT® 2.5 format.

Product
SiteSquare web application, public website and vendor upload portal
Vendor
SoloFive LLC
Report date
October 29, 2026
Product version
Web application as deployed on the report date
Contact
hello@sitesquare.app

How this was evaluated

This is a self-evaluation by the vendor, not an independent audit. It combines an automated scan of every page type with axe-core (version 4.10) against WCAG 2.1 A and AA rules, signed in and signed out; automated checks that run on every build (every form label is tied to its control, the status vocabulary and colours are shared, dialogs trap and return focus, tested in a real browser on every release); and a check that every page reflows at 320 pixels wide — the width of a 1280-pixel screen at 400% zoom — without horizontal scrolling. Screen-reader testing has not yet been done systematically; it is the next step, and this report will be revised with its results. Automated tools find only part of what can go wrong, which is why the levels below say “Partially supports” wherever we know of a gap.

Supports: 40 · Partially supports: 3 · Not applicable: 7

Success criteria

WCAG 2.1 Level A and AA success criteria with SiteSquare’s conformance level and remarks
CriterionLevelConformanceRemarks
1.1.1 Non-text contentAPartially supportsProduct screenshots and icons that carry meaning have text alternatives; decorative glyphs are hidden from assistive technology. The in-browser certificate preview is a rendered image of a third party’s PDF and has no text alternative of its own — the extracted fields beside it are text, and the original file can be downloaded.
1.2.1 Audio-only and video-only (prerecorded)ANot applicableNo audio or video content.
1.2.2 Captions (prerecorded)ANot applicableNo video content.
1.2.3 Audio description or media alternative (prerecorded)ANot applicableNo video content.
1.2.4 Captions (live)AANot applicableNo live media.
1.2.5 Audio description (prerecorded)AANot applicableNo video content.
1.3.1 Info and relationshipsASupportsSemantic headings, lists, landmarks and tables with header cells. Every form label is programmatically tied to its control — a source test fails the build on a label that names nothing. Grouped controls use fieldset and legend.
1.3.2 Meaningful sequenceASupportsReading order follows the DOM; layouts are built with flow and grid order, not absolute positioning.
1.3.3 Sensory characteristicsASupportsInstructions name controls by their label, not by shape, colour or position.
1.3.4 OrientationAASupportsNo orientation lock on the web or in the phone app.
1.3.5 Identify input purposeAASupportsFields that collect the user’s own information (name, email, organization, password, one-time code) carry their autocomplete tokens.
1.4.1 Use of colourASupportsCompliance status always carries a word as well as a colour; required-versus-found findings are written out. Links inside running text are underlined, not marked by colour alone.
1.4.2 Audio controlANot applicableNo audio.
1.4.3 Contrast (minimum)AASupportsEvery text colour token is chosen to clear 4.5:1 on each surface it sits on, with the measured ratios recorded beside the token. Verified by an automated scan of every page type.
1.4.4 Resize textAASupportsText is sized in rem and every page reflows at 320 pixels wide (400% zoom on a 1280-pixel screen), which covers 200% text resizing.
1.4.5 Images of textAASupportsNo images of text, other than product screenshots on the marketing pages, which are described in text.
1.4.10 ReflowAASupportsEvery page reflows to 320 CSS pixels without two-dimensional scrolling; wide data tables scroll inside their own region, which the criterion allows.
1.4.11 Non-text contrastAAPartially supportsFocus indicators, form-control borders and status markers meet 3:1. Some decorative chart segments rely on adjacent text labels rather than 3:1 against their neighbours.
1.4.12 Text spacingAASupportsNo fixed-height text containers; content survives increased line, letter and word spacing.
1.4.13 Content on hover or focusAASupportsNo custom hover tooltips; help text is always visible beside its field.
2.1.1 KeyboardASupportsEvery action is a native button, link or form control. Keyboard operation of dialogs is tested in a real browser on every release; the rest relies on native controls and has not been walked page by page with a keyboard alone.
2.1.2 No keyboard trapASupportsDialogs trap focus deliberately while open, release it on Escape and return it to the control that opened them — pinned by an end-to-end test.
2.1.4 Character key shortcutsASupportsThe one shortcut (search) uses a modifier key.
2.2.1 Timing adjustableASupportsSessions extend on activity; no timed forms. Sign-in codes expire for security, which the criterion exempts.
2.2.2 Pause, stop, hideASupportsNo auto-moving or auto-updating content.
2.3.1 Three flashes or below thresholdASupportsNothing flashes.
2.4.1 Bypass blocksASupportsA “Skip to main content” link on every page, and landmark regions.
2.4.2 Page titledASupportsEvery page has a descriptive title.
2.4.3 Focus orderASupportsFocus follows the visual order; dialogs move focus in and restore it on close.
2.4.4 Link purpose (in context)ASupportsLinks name their destination; repeated “Review” links sit in a row that names the vendor.
2.4.5 Multiple waysAASupportsNavigation, global search, and links from Home to every filtered list.
2.4.6 Headings and labelsAASupportsHeadings in order; every control has a visible label.
2.4.7 Focus visibleAASupportsA 2-pixel focus outline on every focusable element, kept in forced-colours mode.
2.5.1 Pointer gesturesASupportsNo path-based or multipoint gestures.
2.5.2 Pointer cancellationASupportsActions fire on click (up-event), using native controls.
2.5.3 Label in nameASupportsAccessible names begin with the visible label text.
2.5.4 Motion actuationANot applicableNo motion-operated functions.
3.1.1 Language of pageASupportsThe document language is declared as English.
3.1.2 Language of partsAASupportsAll content is in English. Vendor and insurer names are proper names.
3.2.1 On focusASupportsFocus never changes context.
3.2.2 On inputAPartially supportsForms submit only on an explicit button. The department switcher in the sidebar reloads the page when a department is chosen; it is labelled as a view filter.
3.2.3 Consistent navigationAASupportsOne sidebar for the app and one header and footer for public pages, each a single shared component.
3.2.4 Consistent identificationAASupportsStatus words, buttons and icons are shared components with one vocabulary, held by tests.
3.3.1 Error identificationASupportsErrors are described in text, announced through a live region, and shown beside the field where one is at fault.
3.3.2 Labels or instructionsASupportsEvery field has a visible label and, where needed, a hint tied to it.
3.3.3 Error suggestionAASupportsRefusals say what is allowed (“a whole number of days from 0 to 365”).
3.3.4 Error prevention (legal, financial, data)AASupportsDeletions ask for confirmation; deleting a company requires retyping its name; approvals can be reviewed before they are made.
4.1.1 ParsingASupportsGenerated by React; no duplicate ids (field ids are generated). Obsolete in WCAG 2.2.
4.1.2 Name, role, valueASupportsNative controls throughout; custom dialogs use role="dialog" with a name; toggles expose their state.
4.1.3 Status messagesAASupportsSuccess and error messages use an always-present live region, so they are announced without moving focus.

Legal disclaimer

This report describes SiteSquare as of the date above. It is provided for information and is not a warranty. If something in SiteSquare is hard or impossible to use, write to hello@sitesquare.app — we treat accessibility reports as bugs, and we will provide information in another format while we fix one.

Accessibility Conformance Report · SiteSquare