We'd like to set Google Analytics cookies to learn how people use the Knowledge Base, so we can improve it. We set them only if you accept.

Skip to main content
Digital Accessibility Knowledge Base

This guide is for developers, product managers, and auditors who don't work with assistive technology (AT) day to day. It walks you through NVDA, a free screen reader for Windows, so you can confirm accessibility issues on your own pages. If you're on a Mac, refer to the VoiceOver on Mac guide. The concepts are the same, only the keys differ.

Why this guide matters

Many accessibility issues can only be confirmed by using the page the way a screen reader user does. NVDA (NonVisual Desktop Access) is one of the most widely used desktop screen readers, and it's free and open-source. That makes it a practical addition to a regular QA routine, alongside automated tools like Evinced.

NVDA in a nutshell

NVDA reads the screen aloud and lets you operate Windows entirely from the keyboard. Like every screen reader, it reads the accessibility tree, the structured version of the page the browser exposes, not the pixels on screen.

You work with NVDA through three layers:

LayerWhat it controlsSample keys (NVDA = the modifier, Insert or Caps Lock)
Browse cursorReads the page as a virtual documentH, next heading
Focus cursorOperates focusable controlsTab / Shift+Tab
Elements ListLists headings, links, landmarks, and form fieldsNVDA+F7

NVDA speaks through Windows text-to-speech voices, supports more than 55 languages, and can run portably from a USB stick handy for on-site test machines.

Note: Shortcuts in this guide use NVDA's default desktop keyboard layout. The laptop layout changes some of them.

Before you start: staying in control

The first time NVDA starts talking, it can feel overwhelming. That's normal, and you're always one key away from quiet:

  • Press Shift to pause speech, and Shift again to resume

  • Press Ctrl to stop the current announcement

  • Press NVDA+Q, then Enter, to quit NVDA completely

Note: NVDA can display everything it speaks as text in the Speech Viewer (NVDA+N › Tools › Speech Viewer). As a sighted tester, keep it open, it lets you read the announcements instead of relying on audio alone. You can also turn on a visual outline of NVDA's position under NVDA+N › Preferences › Settings › Vision › Focus Highlight.

A webpage open next to the NVDA Speech Viewer window, which displays each announcement as a line of text

Install and first-run checklist

  1. Download NVDA from nvaccess.org and run the installer. Accept the User Account Control prompt, and keep "Create desktop shortcut" checked; it binds the Ctrl+Alt+N launch shortcut.

  2. Start NVDA – Press Ctrl+Alt+N. It works from anywhere in Windows.

  3. Set up the welcome dialog:

    • Check "Use CapsLock as an NVDA modifier key"; recommended on laptops, where the default modifier (Insert) is often missing

    • Leave "Start NVDA automatically" off for occasional testing

  • NVDA welcome dialog with keyboard layout options and a checkbox to use Caps Lock as the NVDA modifier
  1. Learn the basics – The built-in user guide (NVDA+N › Help › User Guide) opens with a short getting-started section. Reading it takes about ten minutes and covers everything in this guide's cheat sheet.

Note: Press NVDA+1 to turn on input help; NVDA then announces what each key combination does instead of running it. Press NVDA+1 again to turn it off.

Core concepts

The NVDA modifier

Most NVDA commands start with the NVDA key: Insert by default, or Caps Lock if you checked the welcome-dialog option. In NVDA+N › Preferences › Settings › Keyboard you can:

  • Choose which keys act as the modifier (Caps Lock, numpad Insert, or Insert)

  • Switch between the desktop and laptop keyboard layouts

NVDA keyboard settings with the desktop and laptop layout options and the checkbox to use Caps Lock as the modifier

Browse Mode vs. Focus Mode

NVDA opens web pages in Browse Mode, where the page is a virtual document you read with the arrow keys and single-letter shortcuts. When you land on an input field, NVDA switches to Focus Mode so normal typing works. You can switch manually with NVDA+Space a rising or falling sound confirms the change.

Single-letter navigation

In Browse Mode, single letters jump between elements: H for the next heading, D for the next landmark, K for the next link, F for the next form field. Add Shift to go backward. This is usually the fastest way for beginners to move through a page.

The Elements List

The Elements List is NVDA's answer to VoiceOver's Rotor. Press NVDA+F7, pick a tab (Links, Headings, Form Fields, Buttons, or Landmarks), and arrow through the list. Typing filters it. Press Enter to jump to the selected item.

The NVDA Elements List dialog with the Headings tab selected, listing the headings of a webpage

Your first walkthroughs

How to read the tables

NVDA means the modifier key (Insert or Caps Lock). The announcement column is abridged the exact wording varies by NVDA version.

"Hello World" test in Microsoft Edge

StepCommandAnnouncement (abridged)
Start NVDACtrl+Alt+N"Welcome to NVDA…"
Open the address barCtrl+L"Address and search bar"
Load the demo pageType example.com, then EnterPage title
List the headingsNVDA+F7, then the Headings tabThe list indicates one heading
Jump to the headingPress HReads the <h1> text
Switch to Focus Mode and backNVDA+SpaceA rising or falling sound
Stop speech and quitCtrl, then NVDA+Q and EnterSpeech stops
Microsoft Edge displaying the demo page with the NVDA focus highlight outlining the main heading

Landmark audit of a production page

  1. Load the site under test (local dev server or staging).

  2. Press NVDA + F7 and choose the Landmarks tab.

  3. Press ↓ through the list and note missing or duplicated regions.

  4. Press Enter on a landmark to jump to it.

  5. Press D / Shift + D to move between landmarks on the page itself.

  6. Press N / Shift + N (next block of text past the links) to confirm body copy is reachable.

  7. Record any orphaned content that sits outside <main> or another landmark.

Settings worth changing

NVDA's settings (NVDA+N › Preferences › Settings) have many categories. These three matter most for testing:

CategoryWhy it mattersWhat to change
KeyboardInsert is missing on many laptopsUse Caps Lock as the modifier
Browse ModeControls single-letter navigation and page layoutKeep "screen layout" on to match the visual page
Document FormattingDecides which details NVDA announces (fonts, tables, link states)Turn off details you don't test to shorten announcements
NVDA Document Formatting settings, indicating which document details NVDA announces

Cheat sheet

Everyday keys

TaskKeys
Start NVDACtrl+Alt+N
Quit NVDANVDA+Q, then Enter
Pause or resume speechShift
Stop the current announcementCtrl
Read the current lineNVDA+↑
Read from the current positionNVDA+↓
Next or previous headingH / Shift+H
Next or previous landmarkD / Shift+D
Open the Elements ListNVDA+F7
Switch Browse and Focus ModeNVDA+Space
Input help on or offNVDA+1

Web testing checklist

ScenarioExpected outcome
Skip linkThe first Tab press announces the skip link, like "Skip to main content, link"
ARIA live regionsTrigger a toast or status message NVDA reads the update without moving focus
Labeled fieldsTab to an input announces its accessible name, role, and state
Heading hierarchyPressing H walks <h1>–<h6> in a logical order

Troubleshooting and team tips

  • NVDA swallows a key you need? Press NVDA**+F2**, then the key, to pass it straight to the application

  • Lost in Browse Mode? Press Ctrl+R to refresh the page and reset the virtual cursor

  • Speech too fast or slow? Use the synth settings ring: NVDA+Ctrl+←/→ selects a setting (like Rate), and NVDA+Ctrl+↑/↓ changes it

  • Custom widgets unlabeled? Add a role and aria-label or aria-labelledby, and confirm the widget is focusable (tabindex="0")

Learn More