Accessibility

Last updated: August 3, 2026

The Tradellen platform is operated by Tradellen LLC. We target WCAG 2.2 Level AA. This page states our conformance as partially conformant, lists what we measured and what we found, and — just as plainly — names what we have not tested. We do not claim more than we can show.

Our commitment

Tradellen is used by dispatchers, office managers, technicians and business owners, on desktops in an office and on phones in a truck. Some of them are blind or have low vision, some are colour-blind, some navigate entirely by keyboard, some use voice control, and some just need bigger text at the end of a long day. The product has to work for all of them, so accessibility is treated as a functional requirement here, not a compliance exercise.

Conformance status

Partially conformant with WCAG 2.2 Level AA. "Partially conformant" means most of the standard has been met and verified, but not all of it has been evaluated. The specific reason we do not claim full conformance is stated below under What we have not tested — principally that no screen reader has been driven end-to-end by a human, and no independent third party has audited us.

Standards this maps to

What we measured, and what we found

The figures below come from automated measurement across 16 surfaces — the marketing site, the legal pages and six screens of the signed-in application — at 390, 768 and 1280 CSS px in two rendering engines (Chromium and WebKit): 64 page×width×engine combinations per run. Reflow, text resizing and focus behaviour are measured separately, and include 320 px, the narrowest width WCAG requires support for.

Automated results, measured 3 August 2026. "Before" is the same measurement taken on this codebase prior to this round of fixes.
CheckCriterionBeforeNow
Text failing contrast on a solid background1.4.3 (AA)4060
Controls with no accessible name4.1.2 (A)00
Images with no alt text1.1.1 (A)00
Decorative icons exposed to screen readers1.1.1 (A)1,2820
Skipped heading levels1.3.1 (A)00
Duplicate element IDs (break label association)1.3.1 (A)00
Pages with no <main> landmark1.3.1 (A)860
Pages with no "skip to content" link2.4.1 (A)860
Personal-data fields with no autocomplete1.3.5 (AA)40
Pointer targets under 24×24 px2.5.8 (AA)90
Links whose purpose is unclear from their text2.4.4 (A)00
Positive tabindex (breaks tab order)2.4.3 (A)00
aria-controls pointing at nothing4.1.2 (A)00
Data tables with no header cells1.3.1 (A)00
Pages missing a language declaration3.1.1 (A)00
Horizontal page scrolling at 320 px wide1.4.10 (AA)00
Content clipped at 200% text size1.4.4 (AA)00
Content clipped under the text-spacing overrides1.4.12 (AA)00
Focusable controls with no visible focus indicator2.4.7 (AA)00
Animation still running under reduced-motion2.3.310
Dialogs with no accessible name4.1.2 (A)all0
Non-dialogs wrongly marked as dialogs4.1.2 (A)40
Dialogs Escape failed to close2.1.2 (A)all0
Text clipped by a line clamp at 200%1.4.4 (AA)10

About the contrast number

The 406 failures were real and are fixed. They were not cosmetic: they included the brand teal used as body text on white (1.9:1, where 4.5:1 is required), footer text at 2.16:1, and a control in the homepage demo whose label rendered near-white on a near-white background at 1.05:1. Each was corrected by darkening the text colour to the nearest value that clears the threshold while holding the same hue, so the brand palette is unchanged — a teal is still the same teal, just legible.

One honest caveat on method. Contrast can only be computed exactly when the background is a solid colour, and that is where the zero above applies. Where text sits on a gradient, we instead sample the pixels actually painted behind each glyph. That second method found eight more genuine failures in the signed-in app’s sidebar — text as low as 1.72:1 — which are also fixed.

It currently leaves 37 unresolved readings: 36 inside the animated product mockups on the marketing pages, which render at a reduced scale so their text is finer than a pixel grid can measure cleanly, and one on an element that another element overlaps in the capture. Each was checked individually — the mockup text sits on dark gradients and the overlapped one is grey on white at 5.4:1, so all of them pass. We would rather tell you the method has a boundary than quote a round number that hides it.

What is built in

Each item here is asserted by one of the runners listed under How we test — the behavioural ones by verify-a11y-claims.js, which drives the real interface. If one of these stops being true, a test fails rather than this page quietly becoming wrong.

Technical specifications

Accessibility here relies on the following working together in your browser. Where a technology is not supported or is turned off, some of the above may not apply:

What we have not tested

Stated plainly, because you may need it for a vendor review, and because a disabled user deserves to know where the gaps are before they hit one:

How we test

Measurement is code in the repository, not a one-off report, so it is re-run when the interface changes:

Accessibility test runners. Each writes a JSON report that backs the numbers above.
RunnerWhat it establishes
verify-wcag22.jsNames, roles, alt text, heading order, duplicate IDs, landmarks, target size, link purpose, autocomplete, language
verify-contrast-fixplan.jsContrast where the background is an unambiguous solid colour, plus the nearest conforming replacement for any failure
verify-contrast-truth.jsContrast over gradients and images, sampled from the pixels actually painted behind each glyph
verify-reflow-focus.jsReflow at 320 px, 200% text, text-spacing overrides, focus visibility, reduced motion
verify-a11y-claims.jsThe behavioural promises above, driven against the real interface: dialogs take focus, announce a name, close on Escape and give focus back; status is never colour-only; drag-and-drop has a non-drag path

We deliberately compute contrast ratios, rendered sizes and counts directly rather than reporting rule IDs from a scanner. A rule ID tells you something failed; a ratio tells you by how much, and lets you argue with us.

Assessment approach: self-evaluation. This statement was prepared by Tradellen LLC using the automated measurement described above, plus manual review of the results. It has not been reviewed or approved by an external body. Statement prepared 3 August 2026; the measurements were taken on that date against the code released on it.

Compatibility

Tradellen is built to current web standards and tested in Chromium- and WebKit-based browsers on desktop and mobile. It should work with assistive technology that supports those browsers. Because we have not completed screen-reader testing, we cannot yet name specific screen reader and browser pairings as verified.

Tell us where it fails

If any part of Tradellen is difficult or impossible for you to use, we want the specific case, and we will treat it as a defect rather than a suggestion.

Email hello@tradellen.com with ACCESSIBILITY in the subject line, or call +1 (513) 801-1536.
Please include the page or screen, what you were trying to do, and the browser and assistive technology you were using, if you know them.

If we do not put it right

Say so in reply and it is escalated within Tradellen LLC rather than closed. If you are still not satisfied, you are entitled to take it further, and we would rather tell you how than have you find out the hard way:

Nothing here asks you to give up any right, and contacting us first is not a condition of complaining anywhere else.

Where this page can be wrong

This statement describes the state of the product on the date at the top, measured by the runners named above. Software changes. If you find something on this page that is no longer true, that is itself a defect worth reporting — use the same address.