Accessibility
Last updated: August 12, 2026
This page says what CSVUndo aims for, what it currently does, and — more usefully — what it still gets wrong. It is written after a full keyboard and screen-reader pass over every page, not as a statement of intent.
The target
We hold the site to WCAG 2.2 Level AA. That is a target, not a certificate: no independent audit has been carried out, and everything below is our own testing.
What works today
- Everything is reachable by keyboard. Every page opens with a “Skip to content” link, and the target it jumps to is programmatically focusable rather than relying on browser behaviour.
- Every data table can be scrolled without a mouse. The comparison tables and the tool previews are wider than a phone screen by design, so each one is a focusable region with a name, across the site.
- Tables announce their columns. Every header cell carries a scope, and every table carries a caption naming what it holds, so a screen reader in table mode can tie a value to its column.
- Results are announced, errors interrupt. The tool result area is a polite live region; errors such as “That is a PDF, not a CSV” get an assertive one of their own, so they are not queued behind a status update.
- Controls say why they are disabled. A column that cannot be padded explains itself in a real cell that the checkbox points at, instead of showing a bare warning symbol.
- Decorative emoji are hidden. The icons in headings and buttons are marked so they are not read out as “keycap digit zero”.
- Nothing depends on colour alone, no content flashes, and the page works at 200% zoom and in a browser with a user stylesheet.
Known shortfalls
Stated plainly, because a statement that lists only successes is not much use:
- The progress counter during a large repair is deliberately silent to assistive technology. It updates roughly every 30 milliseconds and announcing each tick would flood a screen reader; the start and the finish are announced instead. If you would rather have periodic progress, tell us.
- Repairing a very large file blocks the tab for a moment while the file is read, before the first progress message appears. Everything runs on your own machine, which is the whole point of the site, and that is the cost.
- The tool pages carry no dedicated “start over” control except on the merger. Reloading the page is currently the way to begin again with different options.
- We have tested with NVDA and VoiceOver in current Chrome, Firefox and Safari. JAWS and Dragon have not been tested.
- No independent audit has been commissioned.
Report a barrier
If something on this site stops you doing what you came to do, that is a bug and we want it. Email [email protected] or use the contact page. Tell us the page, what you were using (browser, screen reader, keyboard only), and what happened. It is a one-person inbox, so a reply may take a few days, but accessibility reports are read first.
Why this matters here specifically
CSVUndo exists so that nobody has to hand a spreadsheet of customer data to a stranger's server to get it repaired. That promise is worth very little if the tool that keeps it cannot be operated without a mouse. The same reasoning applies to both: see how to verify the no-upload claim.