Finding accessibility issues across a publisher's entire academic catalog

Norton had strong ebook accessibility standards and a certified production process, but no way to check every title. I designed and built scanners that checked all 700+ ebook titles and 27,000 PowerPoint files, and gave the digital production team detailed reports. Within the first year, most titles had alt text, with a roadmap for the rest.

Problem
Accessibility issues in older titles were found when customers reported them, and there was no complete, detailed evaluation of the backlist or current titles.
My role
Accessibility Program Manager
Result
Detailed reports across the backlist and current titles. Within the first year, most titles had alt text, with a concrete roadmap for the rest.
Status
In use since early 2025, and still being extended.
Organization
W.W. Norton & Company
Type
Process & tooling
Areas
Accessibility, Technical program leadership

At a glance

Problem and constraints

Accessibility mattered at Norton long before the recent ADA Title II changes made it a legal requirement. The company had detailed standards for ebook accessibility, and I had recently led the team through Benetech’s Global Certified Accessible (GCA) certification, which certified that our ebook workflows produce WCAG AA and EPUB 3 conformant ebook files.

What we didn’t have was an accurate diagnosis of the backlist, or an authoritative, detailed evaluation of the titles we were already selling.

Part of my role is reviewing reported accessibility issues and driving remediation across product, UX and engineering. The digital production team was quick to fix problems when customers found them. But that approach is reactive, and in a classroom it can have real consequences for students with disabilities. We needed to diagnose the backlist and validate current titles before anyone ran into a problem.

Decisions and implementation

  1. Built a first scanner for ebooks that checked the most common issue, missing alt text.
  2. Added DAISY Ace, the same accessibility checker Benetech uses, across every title, alongside the alt text check rather than in place of it.
  3. Rebuilt each ebook from the online reader, so the checks saw what customers get.
  4. Built a second scanner for PowerPoint files that reads them straight from cloud storage.
  5. Made both scanners rescan only what had changed.
  6. Gave the digital production team detailed reports for the backlist and current titles.

I designed and built both scanners myself, starting in early 2025, in two phases: ebooks first, then PowerPoint resources.

Phase 1: ebooks

Starting with alt text. The first version checked one thing: whether each image had alt text. It was the most common problem, especially in older titles, and it can be checked from the markup alone. Empty alt text needed the same scrutiny as none at all: legacy production scripts had left many meaningful images with empty alt text, which tells a screen reader to skip them. The scanner signs in to the online reader, walks each book’s files in reading order, and counts images with alt text, with empty alt text and with none, logging exactly which images have empty or missing alt text.

Then the whole book, with Ace. After certification, we needed to know every title met the standard, not just the sample. Benetech uses DAISY Ace as one of its core tools for evaluating ebook accessibility, so it was a natural fit for checking the catalog as a whole. For each book, the scanner records the outcome, violations by severity, the rules broken, missing alt text, and language and metadata flags.

Why the alt text check stayed. Ace was an expansion, not a replacement. Like most automated checkers, Ace treats empty alt text as the sign of a decorative image and passes it. That’s the right rule in general, but it would have reported our legacy images as fine. The separate alt text check, which counts empty alt text on its own, is what caught them.

Checking what customers actually get. Instead of testing source files, the scanner rebuilds each ebook in memory from the online reader, so the checks run against something as close to the customer experience as possible. Images and fonts are swapped for tiny placeholders, because the checks look at markup and attributes, not pixels.

Phase 2: PowerPoint resources

The second scanner checks PowerPoint files against WCAG 2.2 AA-style criteria:

Downloading more than 100 GB of decks wasn’t practical, so a bulk version reads the archives straight from cloud storage, opens each deck in memory, and runs archives in parallel. It writes one report, and a local version produces detailed per-deck reports with screenshots of only the slides that have issues.

Why fix everything, even the false positives. Automated scanners don’t have enough context. Many of the issues the schools’ scanners flagged were false positives, such as reading order on slides or the contrast of non-essential text like a copyright line. Before scanners, accessibility was judged by its impact on actual students in the classroom. Moving the evaluation earlier, before a problem disrupts a student’s learning, is a real improvement. But scanners rarely weigh how much an issue matters. So our approach was to fix every issue, whether or not it made a meaningful difference to students. Even when a fix doesn’t change much for a student, it makes evaluating the content easier for instructors, and lets them spend their time teaching instead of chasing abstract compliance scores. I modeled the PowerPoint scanner’s per-slide scoring on the approach those tools use, so our results lined up with the scores instructors would see.

The top of a PowerPoint accessibility report for a collection called Example Biology. Summary tiles show 2 files, an average score of 68%, 4 errors and 2 warnings. An issue summary table lists each issue type with its severity, count and WCAG success criterion: missing language (severe, 2, 3.1.1 Language of Page), insufficient contrast (major, 1, 1.4.3 Contrast Minimum), missing title (minor, 1, 1.3.1 Info and Relationships), poor alt text (major, 1, 1.1.1 Non-text Content) and poor link text (minor, 1, 2.4.4 Link Purpose).
The summary of a PowerPoint report, from a scan of two made-up example decks. Each issue type is mapped to its WCAG success criterion.
One slide from the same report: a slide titled Results by region, with a bar chart and a faint caption reading Source: survey data. Below the slide preview, a flagged issue reads: Poor Alt Text, image Picture 2 has poor quality alt text.
Only slides with issues get a screenshot, next to what was flagged and how to fix it. Example data.

Rescanning only what changed

A full scan of either catalog takes time, so later scans focus on what’s new. The ebook scanner can resume where it stopped and rescan only books whose files changed. The PowerPoint scanners skip decks and archives that haven’t changed since the last scan.

From reports to fixes

Overall, accessibility was good, thanks to the program’s standards, processes and documented practices. But any book with missing alt text, color contrast problems or headings that were only visual wasn’t good enough. I gave the digital production team detailed reports across the backlist and current titles, so they could plan fixes by scale instead of waiting for complaints.

Results and limitations

What I would change

Bring in Ace sooner. I started with alt text alone because it was the most common problem and the easiest to check. Ace is far more comprehensive, and running it from the start, alongside the alt text check, would have shown the full picture earlier.

PowerPoint Accessibility Scanner on GitHub