AAArdvark

Website Contact the business

AAArdvark AAArdvark helps teams make their websites accessible and compliant through automated testing, issue tracking, and expert accessibility consulting.

AAArdvark helps organizations make their websites accessible and compliant with ADA, Section 508, and WCAG standards. Our accessibility testing platform combines automated scans with visual issue tracking, collaboration tools, and expert audits to help teams find and fix accessibility barriers faster. We believe accessibility should be approachable, actionable, and integrated into every stage of digital design and development - not an afterthought.

09/25/2026

Inclusive Design 24 wrapped yesterday: 24 hours of accessibility talks, free to watch, with sessions running around the clock so every time zone got a turn.

Thank you to the ID24 organizers and to every speaker. We were glad to support the event this year.

The recordings are on YouTube. If you're not sure where to start, here are two we recommend:

• "Digital Accessibility Ethics: a new framework to advance accessibility," a panel with Lainey Feingold, Léonie Watson, Shilpi Kapoor, Meena Das, Jutta Treviranus, and Sheri Byrne-Haber. They walk through a new framework for making ethical choices about accessibility, from buying software to building it.

• "Building for People in the Age of AI Agents" with Neha Pandit. AI tools that browse websites for people keep getting stuck on the same barriers people have faced for years.

Watch the full playlist: https://bit.ly/4Avfdyv

09/23/2026

Your site scores 98% accessible. What did that number measure, and what did it skip?

Almost every accessibility tool hands you a score now, and most of them are built the same way: count the automated checks that passed, divide by the total, and show you a percentage. That number can look great on a site a keyboard user can't get through. In this session, Natalie MacLees walks through how accessibility scores are actually calculated, what they reward, and what they can't see.

You'll learn:

• How the common scoring methods work (pass rates, weighted issue counts, per-page averages) and why they tend to flatter a clean automated scan
• What automated testing can't measure, and why that matters for any score built on it alone
• What an honest score has to do differently: say what kind of testing produced it, report progress rather than compliance, and refuse a top grade for testing that hasn't been done
• How to read a score from any tool, including the questions to ask before you trust it
• A live look at AAArdvark's new Accessibility Score, which caps an automated-only scan at a B and only climbs when manual testing is done, so you can watch the ceiling move in real time

Whether you're a developer, a designer, a content person, or the one who has to report on accessibility to someone else, you'll leave knowing what a score can tell you, what it can't, and how to make one mean something.

The story behind the score: https://aaardvarkaccessibility.com/i-spent-years-refusing-to-build-an-accessibility-score/

Bring your questions and join us live.

09/23/2026

A website can score 100 on an accessibility check and still be impossible to get through without a mouse.

That isn't a trick. It's how most accessibility scores work. The tool counts the automated checks that passed, weights them, and shows you a number. Anything the tool can't check isn't in the number at all. So the score can be accurate and still leave out the part that decides whether a real person can use the site.

Today, Natalie is taking the common scores apart on a live stream, and then showing what a better one looks like.

Here's what you'll see:

• How the scores you already get from tools are calculated, read straight from those tools' own documentation
• The list of things one popular free tool admits it can't score, printed in its own report, that almost nobody scrolls down to read
• A live run on a page that scores 100, followed by a walk through that same page using only a keyboard
• The four things a score has to do to be worth trusting: say what kind of testing produced it, refuse the top grade until a human has tested, move when you fix things, and be able to go down
• AAArdvark's own Accessibility Score on that same page, including the part Natalie spent years saying we would never build

This isn't a takedown of any tool. Every score measures what was checked. None of them can show you what wasn't.

If you build websites, manage one, or have to report an accessibility number to a client or a boss, this one is for you. No accessibility background needed.

Today at 1pm Pacific. Join us here:
https://bit.ly/3TcON3W

09/16/2026

A WordPress agency owner wrote to us about three potential clients he hadn't signed yet.

He wasn't asking about scanning. He wanted to hand each of them a report on their own homepage before they signed, because in his words, that report is what gets them across the line.

We think more agencies should borrow the idea. Here's why it works.

Tell a potential client their website has accessibility problems, and you get a nod. Everyone has heard it. It goes into the proposal under "recommended" and stays there.

Hand that same person a report on their own homepage, showing how many problems there are, which ones to fix first, and which pages are in the worst shape, and it's a different conversation. The pitch stops being "trust us" and becomes "here's what we found, and here's what we'd fix first." Nobody has to be convinced that accessibility matters in general. They're looking at their own site.

Cyndy on our support team got him set up, and he wrote back within the hour: "I got the sites set up yesterday and will grab the PDFs today."

Three sites, three reports, three potential clients who get to see the problem before anyone asks them to pay for it. That's the part we care about, because the work that gets sold is the work that gets done. The sites that stay a line item in a proposal don't get fixed.

Since then, that report has changed. Every site now has a letter grade with a score from 0 to 100, a trend page covering the last 30 days, 90 days, or 12 months, and the PDF goes out with your own business name and colors on it instead of ours. Same job, easier to hand across a table.

If you build websites and accessibility keeps landing at the bottom of your proposals, try starting with the report instead of the pitch. The homepage scan is free, and the report is the part your potential client actually reads.

https://bit.ly/46QW1gD

09/11/2026

Most of us have one. A component that works fine when you click it, and that you have never once tried with a keyboard.

We want to run a stream called Roast My Component. You send in something you're not sure about, and Natalie tests it live with a keyboard and a screen reader and tells you what she finds.

A tab set. A modal. A date picker you inherited from someone who left. A custom dropdown that has been quietly bothering you for two years.

Three things worth saying up front, because we know this feels like volunteering for a telling-off:

You stay anonymous. Nobody gets named unless they ask to be.

It's the code being reviewed, not the person who wrote it. Nearly every component fails on the same small handful of things, and Natalie has written every one of those failures herself at some point.

All it costs you is a link. A live page, a CodePen, a repo, whatever is easiest. Don't tidy it up first, because that defeats the point.

Send it to [email protected], or message Natalie on whichever platform you already follow her on.

Submissions close Monday, September 21st. If we get enough, the stream runs October 7th.

09/09/2026

You uploaded a video, you switched on automatic captions, and the little CC button appeared. Done, right?

Not quite. Automatic captions are the accessibility equivalent of a checkbox that fixes nothing. They are usually good enough to look finished and rarely good enough to actually use. And if you have ever tried to follow along with a video using nothing but the captions, you already know exactly what that feels like.

There are four different things a video might owe its audience, and they are not interchangeable. Captions, subtitles, transcripts, and audio description each serve different people and solve different problems. Most teams pick one, assume it covers everybody, and never find out otherwise.

In this session we are going to sort that out and then put it to the test on real video, live.

• The four artifacts, who each one is actually for, and which WCAG criteria they satisfy
• Captions versus subtitles, which are not the same thing, and why the difference matters
• A live teardown of automatic captions, scored against a real quality standard
• Why a transcript is the cheapest accessibility win you are probably skipping
• Audio description, what it sounds like, and the YouTube feature that quietly changed this year
• The code, for the developers: WebVTT, the track element, and what browsers really support
• How to test a video player with a keyboard in about ninety seconds

Natalie is hard of hearing, so this is not a theoretical session. Captions are a thing she uses, and this is what she notices when they are done badly.

This is for developers, content creators, marketers, podcasters, and anyone who publishes video or audio. You do not need to be an accessibility expert to follow along.

Bring your questions, and bring a video you are unsure about. We will leave time at the end.

09/09/2026

You uploaded a video, the automatic captions appeared, and the little CC button showed up. Done, right?

Not quite. Automatic captions are usually good enough to look finished and rarely good enough to actually use. If you have ever tried to follow a video with nothing but the captions, you already know the feeling.

And captions are only one of four things a video might owe its audience. Captions, subtitles, transcripts, and audio description each serve different people and solve different problems. Most teams pick one, assume it covers everybody, and never find out otherwise.

Join Natalie today at 1pm Pacific to sort that out, and then put it to the test on real video, live. She starts with the automatic captions on our own past streams, because our vocabulary is a machine transcription minefield and nobody else needs to be the example.

She'll cover:

• The four artifacts, who each one is for, and which guidelines they satisfy
• Captions versus subtitles, and why the difference is not just wording
• A live teardown of automatic captions, scored against a published quality standard
• Why a transcript is the cheapest accessibility win most people skip
• Audio description, what it actually sounds like, and why the YouTube answer keeps moving
• How to test a video player with a keyboard in about ninety seconds

Natalie is hard of hearing, so this is one she lives with rather than one she looked up.

For developers, content creators, marketers, podcasters, and anyone who publishes video or audio. No accessibility expertise required.

Bring a video you're unsure about. We'll leave time for questions at the end.

https://bit.ly/46Jvl1D

09/04/2026

Every site in your AAArdvark workspace now has an Accessibility Score. A website with nothing but an automated scan behind it will get a B at best.

That limit is on purpose.

You run a scan, you get a list of problems, and then comes the hard part. Is that good? Is it better than last month? Which website needs you first? A list of problems answers none of those.

So every site now carries a letter grade with a 0 to 100 score behind it. What makes it different from most scores you have seen is that the grade is capped by how much testing has actually been done.

Automated tools only catch part of what matters. So a site that has only been scanned tops out at a B, however clean that scan comes back. Reviewing the potential problems and testing by hand in Visual Mode is what lifts the ceiling. Every grade is labeled so you know which one you are looking at: Automated only, In testing, or Manually tested.

A score that hands out an A for a passing scan is telling you something that isn't true.

Here's where the score shows up:

• The workspace dashboard is now a triage list. Every site shows its grade, where it sits in the workflow, and one next action. The sites that need attention sort to the top.
• Each site's own dashboard leads with where that site stands and what to do next, based on your role on the site.
• A new Trend Report charts the score over time against the grade bands, along with open versus resolved problems and how testing coverage is growing. Look at 30 days, 90 days, or 12 months.
• A new downloadable report puts all of it into a PDF under your own business name and colors, ready to hand to a client or a manager.

One thing worth saying plainly: the score reports progress, never compliance. No number can tell you a website is accessible. That still takes testing by hand and real people using the site.

Log in and see where your sites stand: https://bit.ly/4A1YGC6

08/28/2026

Your homepage probably answers at more than one web address.

That sounds like a technical curiosity until you audit the site. A plain HTML site serves its homepage at both / and /index.html. A site running on Microsoft's IIS server answers at / and /default.aspx. Add a trailing slash, a tracking tag picked up from an email campaign, or an accented character that got encoded along the way, and one page is suddenly several different addresses.

Each of those is a page you scan, a page you review, and the same set of issues you fix again. If your plan counts pages, it's also a page you paid for and don't actually have.

Until last week, AAArdvark counted them separately too. Now it doesn't.

We built one place in the app that decides whether two addresses point at the same page, and every screen that matches, imports, or deduplicates a page now asks it. A trailing slash, a default homepage filename, an encoded accent, a repeated slash, a fragment, a tracking parameter, and query parameters in a different order all resolve to a single page.

Some things deliberately stay separate. /about and /about.html are two pages, because plenty of servers serve them independently and the content can differ. A www address and a non-www one are a different site, not a different page.

We also left your saved addresses alone. Some servers answer at /about/index.html and return a "page not found" error for /about/, so AAArdvark compares addresses without ever rewriting the one it stored.

Visual Mode got the same fix. And if a site is already holding the same page twice, that can now be cleaned up.

This is worth knowing no matter what you audit with. A page and a web address were never the same thing.

08/26/2026

Every site has a modal. A share dialog, a confirm, a sign-up, a cookie notice. And most
of them are a div with a z-index and a focus trap someone copied off a blog post in 2019.

Here is the thing nobody told you: that advice is out of date. The browser will now trap
focus for you, make the rest of the page unreachable, handle Esc, and put focus back
where it came from, all without a single line of JavaScript. The hard part got solved.
What is left is the part that still breaks, and it is not the part people are working on.

In this stream we are building a modal dialog from an empty file, testing it with a
keyboard and a screen reader as we go. We start with the hand-rolled version most
codebases actually have, find five separate ways it fails, and then delete almost all of
it and watch four of those failures fix themselves.

We will cover:

• The modal you probably have, and the five tests that break it in under a minute
• Why writing aria-modal="true" does not make it true
• The focus trap bug that is in nearly every hand-rolled version
• Swapping to the dialog element and showModal, and what you get for free
• The three attributes people wrongly copy over during that swap
• Giving a dialog a name, and why "dialog" with no name leaves people stranded
• Where focus should land when a dialog opens, and why the close button is the wrong answer
• Locking the page behind it, because inert and still are not the same thing
• Closing with form method="dialog" and reading back what the user chose
• The one case where the browser's automatic focus return has nowhere to go
• closedby, the 2026 attribute that deletes your click-outside listener
• Animating a dialog in plain CSS, and honoring reduced motion

This one is for developers who want to know what is actually going on under a modal,
and for anyone who has inherited one and needs to work out whether it is any good. If
you have a component library modal in your project right now, you will leave knowing
how to test it in about ninety seconds.

Bring your questions. We test as we build, so you will see the failures and the fixes
in real time.

Address

Los Angeles, CA

Alerts

Be the first to know and let us send you an email when AAArdvark posts news and promotions. Your email address will not be used for any other purpose, and you can unsubscribe at any time.

Contact The Business

Send a message to AAArdvark:

Shortcuts

Share