State website accessibility rankings
Project ScanGov accessibility rankings for U.S. state websites, with the most common failures.
A 93
Average accessibility score of 43 fully scanned state sites
43 of 51
State sites fully scanned. We couldn't fully scan 8, so they're listed without grades
88%
Fully scanned state sites earning an A for accessibility (38 sites)
0%
Fully scanned state sites earning a D or F for accessibility (0 sites)
How U.S. state accessibility scores are distributed
Smoothed distribution of the 43 fully scanned U.S. state sites, score 0 to 100. Height shows how many sites score near each value.
Distribution of 43 scores. The data table lists counts by score range.
- Average
View the data table
| Score range | Sites |
|---|---|
| 0 to 9 | 0 |
| 10 to 19 | 0 |
| 20 to 29 | 0 |
| 30 to 39 | 0 |
| 40 to 49 | 0 |
| 50 to 59 | 0 |
| 60 to 69 | 0 |
| 70 to 79 | 2 |
| 80 to 89 | 3 |
| 90 to 100 | 38 |
Accessibility grade by state
Each state is colored by its main site's accessibility grade. Select a state for its report.
Legend: A B-C D-F Not fully scanned / no data
U.S. state sites by accessibility grade
Share of the 43 fully scanned U.S. state sites in each grade band
- A (90 to 100)
- B to C (70 to 89)
- D to F (below 70)
View the data table
| Group | A (90 to 100) | B to C (70 to 89) | D to F (below 70) |
|---|---|---|---|
| All U.S. state sites | 88% (38) | 12% (5) | 0% (0) |
What each check means
- Touch targets have sufficient size and spacing. Buttons and interactive elements are large enough to tap easily on touch screens. Users with motor disabilities struggle to tap small buttons.
- Links have a discernible name. Links have unique, descriptive text so users know where they go. Screen reader users cannot identify or interact with elements.
- Background and foreground colors have a sufficient contrast ratio. Text and background colors meet minimum contrast ratios. Users with low vision cannot read your text.
- Elements with visible text labels have matching accessible names. A button or link's visible label matches what screen readers announce. Voice control users cannot activate elements by their visible label.
- Document has a main landmark. The page has exactly one main content area so screen readers can navigate to it. Screen reader users cannot skip directly to main content.
All state sites by accessibility score
| Rank | Site | Checks passed | Grade |
|---|---|---|---|
| 1 |
nc.gov
State of North Carolina |
32 of 32 checks pass | A |
| 1 |
hawaii.gov
State of Hawaii |
31 of 31 checks pass | A |
| 1 |
nd.gov
State of North Dakota |
32 of 32 checks pass | A |
| 1 |
wv.gov
State of West Virginia |
28 of 28 checks pass | A |
| 1 |
wisconsin.gov
State of Wisconsin |
30 of 30 checks pass | A |
| 1 |
myflorida.gov
State of Florida |
27 of 27 checks pass | A |
| 1 |
alabama.gov
State of Alabama |
24 of 24 checks pass | A |
| 2 |
tn.gov
State of Tennessee |
36 of 37 checks pass | A |
| 2 |
mo.gov
State of Missouri |
35 of 36 checks pass | A |
| 3 |
maryland.gov
State of Maryland |
29 of 30 checks pass | A |
| 3 |
georgia.gov
State of Georgia |
28 of 29 checks pass | A |
| 3 |
iowa.gov
State of Iowa |
30 of 31 checks pass | A |
| 3 |
kentucky.gov
State of Kentucky |
29 of 30 checks pass | A |
| 3 |
nm.gov
State of New Mexico |
29 of 30 checks pass | A |
| 3 |
ny.gov
State of New York |
28 of 29 checks pass | A |
| 3 |
ct.gov
State of Connecticut |
29 of 30 checks pass | A |
| 3 |
vermont.gov
State of Vermont |
27 of 28 checks pass | A |
| 3 |
louisiana.gov
State of Louisiana |
24 of 25 checks pass | A |
| 3 |
pa.gov
State of Pennsylvania |
31 of 32 checks pass | A |
| 3 |
virginia.gov
State of Virginia |
27 of 28 checks pass | A |
| 3 |
mt.gov
State of Montana |
27 of 28 checks pass | A |
| 3 |
mississippi.gov
State of Mississippi |
30 of 31 checks pass | A |
| 3 |
nebraska.gov
State of Nebraska |
32 of 33 checks pass | A |
| 3 |
illinois.gov
State of Illinois |
31 of 32 checks pass | A |
| 3 |
ca.gov
State of California |
28 of 29 checks pass | A |
| 4 |
oklahoma.gov
State of Oklahoma |
30 of 32 checks pass | A |
| 4 |
de.gov
State of Delaware |
31 of 33 checks pass | A |
| 4 |
utah.gov
State of Utah |
29 of 31 checks pass | A |
| 4 |
texas.gov
State of Texas |
29 of 31 checks pass | A |
| 5 |
wyo.gov
State of Wyoming |
26 of 28 checks pass | A |
| 6 |
idaho.gov
State of Idaho |
32 of 35 checks pass | A |
| 7 |
sc.gov
State of South Carolina |
30 of 33 checks pass | A |
| 7 |
kansas.gov
State of Kansas |
29 of 32 checks pass | A |
| 7 |
maine.gov
State of Maine |
28 of 31 checks pass | A |
| 7 |
arkansas.gov
State of Arkansas |
30 of 33 checks pass | A |
| 7 |
oregon.gov
State of Oregon |
27 of 30 checks pass | A |
| 7 |
sd.gov
State of South Dakota |
29 of 32 checks pass | A |
| 7 |
in.gov
State of Indiana |
30 of 33 checks pass | A |
| 8 |
dc.gov
District of Columbia |
26 of 30 checks pass | B |
| 9 |
nj.gov
State of New Jersey |
28 of 34 checks pass | B |
| 10 |
ri.gov
State of Rhode Island |
21 of 26 checks pass | B |
| 11 |
alaska.gov
State of Alaska |
22 of 28 checks pass | C |
| 12 |
mn.gov
State of Minnesota |
11 of 15 checks pass | C |
About accessibility
Meet WCAG standards so every type of user can use your website.
Why it's important
People with disabilities need equal access to information and services online.
Risks
- People with disabilities cannot use your site.
Guidance
What we use to grade accessibility:
Standards
- [accesskey] values are unique
- [aria-*] attributes match their roles
- Uses ARIA roles only on compatible elements
- button, link, and menuitem elements have accessible names
- ARIA attributes are used as specified for the element's role
- Deprecated ARIA roles were not used
- Elements with role="dialog" or role="alertdialog" have accessible names
- [aria-hidden="true"] is not present on the document <body>
- [aria-hidden="true"] elements do not contain focusable descendents
- ARIA input fields have accessible names
- ARIA meter elements have accessible names
- ARIA progressbar elements have accessible names
- Elements use only permitted ARIA attributes
- [role]s have all required [aria-*] attributes
- Elements with an ARIA [role] that require children to contain a specific [role] have all required children
- [role]s are contained by their required parent element
- [role] values are valid
- Elements with the role=text attribute do not have focusable descendents
- ARIA toggle fields have accessible names
- ARIA tooltip elements have accessible names
- ARIA treeitem elements have accessible names
- [aria-*] attributes have valid values
- [aria-*] attributes are valid and not misspelled
- Buttons have an accessible name
- The page contains a heading, skip link, or landmark region
- Background and foreground colors have a sufficient contrast ratio
- <dl>'s contain only properly-ordered <dt> and <dd> groups, <script>, <template> or <div> elements
- Definition list items are wrapped in <dl> elements
- Document has a <title> element
- ARIA IDs are unique
- No form fields have multiple labels
- <frame> or <iframe> elements have a title
- Heading elements appear in a sequentially-descending order
- <html> element has a [lang] attribute
- <html> element has a valid value for its [lang] attribute
- <html> element has an [xml:lang] attribute with the same base language as the [lang] attribute
- Image elements have [alt] attributes
- Image elements do not have [alt] attributes that are redundant text
- Input buttons have discernible text
- <input type="image"> elements have [alt] text
- Form elements have associated labels
- Links are distinguishable without relying on color
- Links have a discernible name
- Lists contain only <li> elements and script supporting elements (<script> and <template>)
- List items (<li>) are contained within <ul>, <ol> or <menu> parent elements
- The document does not use <meta http-equiv="refresh">
- [user-scalable="no"] is not used in the <meta name="viewport"> element and the [maximum-scale] attribute is not less than 5
- <object> elements have alternate text
- Select elements have associated label elements
- Skip links are focusable
- No element has a [tabindex] value greater than 0
- Tables have different content in the summary attribute and <caption>
- Touch targets have sufficient size and spacing
- Cells in a <table> element that use the [headers] attribute refer to table cells within the same table
- <th> elements and elements with [role="columnheader"/"rowheader"] have data cells they describe
- [lang] attributes have a valid value
- <video> elements contain a <track> element with [kind="captions"]
- All heading elements contain content
- Identical links have the same purpose
- Document has a main landmark
- Elements with visible text labels have matching accessible names
- Tables use <caption> instead of cells with the [colspan] attribute to indicate a caption
- <td> elements in a large <table> have one or more table headers
- Image aspect ratio
- Valid doctype
- Character encoding
Grades/scores
ScanGov
About this ranking
About this data
ScanGov scans the homepage of the main website of each U.S. state government and the District of Columbia. Scores come from the checks in the ScanGov standards. Sites were scanned between 7/27/2026 and 10/25/2026. Each site's report shows its own scan date. A site counts as fully scanned when its homepage loaded and sent us its page content. Averages, grade shares, failure rates, and ranks use fully scanned sites only. We could not fully scan 8 sites. They did not respond, blocked the scanner, or sent no page content. They appear in the table without grades, with their scan status, and are left out of every figure. Grades follow the ScanGov grade scale. Rank follows the ScanGov ranking method. The full dataset, with every county's raw results, is in the ScanGov data repository.