a product of althor.dev

Methodology

What we measured, how, what it does not tell you, and how we behave on the networks we touch.

The corpus

The entity list is CISA's authoritative registry of .gov domains, cisagov/dotgov-data, file current-full.csv. It is published under CC0 1.0 (public domain) and updated daily. We filter it by the Domain type column, then draw a sample from what remains. Each run records the exact file it used and the exact cohort it drew:

Runs feeding the pages on this site.
RunDomain typesRegistry fetchedRegistry sha256Registry rows of those typesSampled
2026-08-stateState or territory2026-08-0816041b3dcffcdb8109ca4731aa3db2dc767d2130df77d4f769a0c42c2f4310af1405300

How the sample is drawn

This index is a sample, not a census. It is drawn for coverage across jurisdictions, and it is not population-weighted: the registry carries no population field, and we do not substitute a proxy for one. Nothing here should be read as representative of any jurisdiction's websites in aggregate, or as a ranking between jurisdictions.

The draw is deterministic. Given the registry file, the domain types, the seed and the size below, anyone can recompute the identical cohort:

  1. Take every registry row whose Domain type is one of the requested types. Group them by the registry's State column; rows with no state form their own group.
  2. Within each group, sort rows ascending by sha256(seed + "|" + domain) as lowercase hex, breaking ties on the domain name. A keyed hash rather than a language-specific random generator, so the ordering is recomputable in any language.
  3. Order the jurisdictions themselves the same way, ascending by sha256(seed + "|group|" + jurisdiction). Alphabetical order would be wrong: when the sample is smaller than the number of jurisdictions, an alphabetical sweep returns Alabama, Alaska, Arizona every time, which is a bias rather than a sample.
  4. Walk the jurisdictions in that order, taking one unused row from each in turn. Repeat until the sample size is reached, every jurisdiction is exhausted, or a jurisdiction hits the per-jurisdiction cap.

Round-robin is what keeps the cohort from being dominated by whichever jurisdiction happens to have registered the most domains. Arizona alone accounts for 136 of the 1,405 State-or-territory rows in the registry; an uncapped draw would inherit that skew.

Sampling parameters, per run.
RunRuleSeedRequested sizePer-jurisdiction cap
2026-08-statestratified-round-robin-sha256-v22026-08300none

The scan

Engine versions and conduct settings, per run.
RunScannera11yscan CLIaxe-coreBrowserConcurrencyRequests/min capRetry cap
2026-08-statea11yscan-govindex 1.0.00.1.34.12.1chromium/151.0.7922.342121

How we behave on your network

What this does not tell you

Regulatory context

This section is background on why WCAG 2.1 Level AA is the standard we measure against. It is not a statement about any entity in this index.

The Department of Justice's rule on the accessibility of web content and mobile apps provided by state and local governments adopts WCAG 2.1 Level AA as the technical standard, codified at 28 CFR part 35, subpart H (ada.gov fact sheet).

An Interim Final Rule effective April 20, 2026 (Federal Register document 2026-07663, 91 FR 20902, federalregister.gov) extended the compliance dates to April 26, 2027 for public entities with a population of 50,000 or more, and April 26, 2028 for public entities with a population under 50,000 and for special district governments.

Which of those dates applies to a given entity depends on facts this dataset does not contain, and meeting a standard is not the same question as what an automated scan of one page detects. We take no position on either for any entity here.

Reproducing it

The scan engine is open source under MIT. Any single result can be re-run:

npx github:st0rm-bless3d/a11yscan#v0.1.1 https://example.gov/ --min-impact serious

Source: https://github.com/st0rm-bless3d/a11yscan. Note that the CLI's default tag set is wider than this index's (it adds wcag22aa and axe's best-practice rules), so it reports a superset of what we count. The whole result set is also available as a downloadable dataset under CC BY 4.0.