The NVDA screen reader can be downloaded free of charge by anyone. We do this because we believe everyone, especially the world’s poorest blind people deserve access to computers and a way out of poverty. If you have the means, no matter how big or small, please consider making a donation before downloading NVDA. We rely on donations and grants to continue improving NVDA and to ensure it remains compatible with the world’s rapidly changing technology.

What's New:

New Features

  • You can now toggle reporting of graphics from NVDA's document formatting settings. Note that disabling this option will still read the alternative texts of graphics. (#4837)
  • You can now toggle NVDA's touchscreen support. An option has been added to the Touch Interaction panel of NVDA's settings. The default gesture is NVDA+control+alt+t. (#9682)
  • Added new German braille tables. (#11268)
  • NVDA now detects read-only text UIA controls. (#10494)
  • The existence of marked (highlighted) content is reported in both speech and braille in all web browsers. (#11436)
  • This can be toggled on and off by a new NVDA Document Formatting option for Highlighting.
  • New emulated system keyboard keys can be added from NVDA's Input gestures dialog. (#6060)
  • To do this, press the add button after you selected the Emulated system keyboard keys category.
  • Handy Tech Active Braille with joystick is now supported. (#11655)
  • "Automatic focus mode for caret movement" setting is now compatible with disabling "Automatically set focus to focusable elements". (#11663)


  • The Report formatting script (NVDA+f) has now been changed to report the formatting at the system caret rather than at the review cursor position. To report formatting at the review cursor position now use NVDA+shift+f. (#9505)
  • NVDA no longer automatically sets the system focus to focusable elements by default in browse mode, improving performance and stability. (#11190)
  • CLDR updated from version 36.1 to version 37. (#11303)
  • Updated eSpeak-NG to 1.51-dev, commit 1fb68ffffea4
  • You can now utilize table navigation in list boxes with checkable list items when the particular list has multiple columns. (#8857)
  • In the Add-ons manager, when prompted to confirm removal of an add-on, "No" is now the default. (#10015)
  • In Microsoft Excel, the Elements List dialog now presents formulas in their localized form. (#9144)
  • NVDA now reports the correct terminology for notes in MS Excel. (#11311)
  • When using the "move review cursor to focus" command in browse mode, the review cursor is now set at the position of the virtual caret. (#9622)
  • Information reported in browse mode, such as the formatting info with NVDA+F, are now displayed in a slightly bigger window centered on screen. (#9910)

Bug Fixes

  • NVDA now always speaks when navigating by word and landing on any single symbol followed by white space, whatever the verbosity settings. (#5133)
  • In applications using QT 5.11 or newer, object descriptions are again reported. (#8604)
  • When deleting a word with control+delete, NVDA no longer remains silent. (#3298, #11029)
  • Now the word to the right of the deleted word is announced.
  • In general settings panel, the language list is now sorted correctly. (#10348)
  • In the Input Gestures dialog, significantly improved performance while filtering. (#10307)
  • You can now send Unicode characters beyond U+FFFF from a braille display. (#10796)
  • NVDA will announce Open With dialog content in Windows 10 May 2020 Update. (#11335)
  • A new experimental option in Advanced settings (Enable selective registration for UI Automation events and property changes) can provide major performance improvements in Microsoft Visual Studio and other UIAutomation based applications if enabled. (#11077, #11209)
  • For checkable list items, the selected state is no longer announced redundantly, and if applicable, the unselected state is announced instead. (#8554)
  • On Windows 10 May 2020 Update, NVDA now shows the Microsoft Sound Mapper when viewing output devices from synthesizer dialog. (#11349)
  • In Internet Explorer, numbers are now announced correctly for ordered lists if the list does not start with 1. (#8438)
  • In Google chrome, NVDA will now report not checked for all checkable controls (not just check boxes) that are currently not checked. (#11377)
  • It is once again possible to navigate in various controls when NVDA's language is set to Aragonese. (#11384)
  • NVDA should no longer sometimes freeze in Microsoft Word when rapidly arrowing up and down or typing characters with Braille enabled. (#11431, #11425, #11414)
  • NVDA no longer appends nonexistent trailing space when copying the current navigator object to the clipboard. (#11438)
  • NVDA no longer activates the Say All profile if there is nothing to read. (#10899, #9947)
  • NVDA is no longer unable to read the features list in Internet Information Services (IIS) Manager. (#11468)
  • NVDA now keeps the audio device open improving performance on some sound cards (#5172, #10721)
  • NVDA will no longer freeze or exit when holding down control+shift+downArrow in Microsoft Word. (#9463)
  • The expanded / collapsed state of directories in the navigation treeview on is now always reported by NVDA. (#11520)
  • NVDA will auto detect the NLS eReader Humanware braille display via Bluetooth as its Bluetooth name is now "NLS eReader Humanware". (#11561)
  • Major performance improvements in Visual Studio Code. (#11533)

Changes For Developers

  • The GUI Helper's BoxSizerHelper.addDialogDismissButtons supports a new "separated" keyword argument, for adding a standard horizontal separator to dialogs (other than messages and single input dialogs). (#6468)
  • Additional properties were added to app modules, including path for the executable (appPath), is a Windows Store app (isWindowsStoreApp), and machine architecture for the app (appArchitecture). (#7894)
  • It is now possible to create app modules for apps hosted inside wwahost.exe on Windows 8 and later. (#4569)
  • A fragment of the log can now be delimited and then copied to clipboard using NVDA+control+shift+F1. (#9280)
  • NVDA-specific objects that are found by Python's cyclic garbage collector are now logged when being deleted by the collector to aide in removing reference cycles from NVDA. (#11499)
  • The majority of NVDA's classes are tracked including NVDAObjects, appModules, GlobalPlugins, SynthDrivers, and TreeInterceptors.
  • A class that needs to be tracked should inherit from garbageHandler.TrackedObject.
  • Significant debug logging for MSAA events can be now enabled in NVDA's Advanced settings. (#11521)
  • MSAA winEvents for the currently focused object are no longer filtered out along with other events if the event count for a given thread is exceeded. (#11520)