---
title: My Favorite Mac VoiceOver commands
teaser: The world needs more accessibility tip listicles. Here's one about screen
  reader testing.
tags: web,accessibility,voiceover,usability
author: Dave Iverson
published_on: 2025-11-10
---

I hop into [VoiceOver](https://support.apple.com/guide/voiceover/welcome/mac) all the time to test the websites I'm building. By testing on a screen reader I can uncover bugs that a blind or low-vision persion will encounter.

Here are a few of the commands I use most often.

First the basics:

- <kbd>Command</kbd>+<kbd>F5</kbd> turns on VoiceOver
- The VoiceOver keys (abbreviated to VO) are <kbd>Control</kbd>+<kbd>Option</kbd>. Most VoiceOver commands use these two keys + with at least one more.
- Move around with <kbd>VO</kbd>+<kbd>Left Arrow</kbd> or <kbd>VO</kbd>+<kbd>Right Arrow</kbd>. Move into groups with <kbd>VO</kbd>+<kbd>Shift</kbd>+<kbd>Up Arrow</kbd> and back out with <kbd>VO</kbd>+<kbd>Shift</kbd>+<kbd>Down Arrow</kbd>. <kbd>VO</kbd>+<kbd>Space</kbd> interacts with stuff
- And, for goodness sake, increase the speech rate. The default rate is tedious

## 1. Ctrl: STOP TALKING!

<figure>
<div class="wistia_responsive_padding" style="padding:56.25% 0 0 0;position:relative;"><div class="wistia_responsive_wrapper" style="height:100%;left:0;position:absolute;top:0;width:100%;"><iframe src="https://fast.wistia.net/embed/iframe/werxbx66zz?web_component=true&seo=false" title="VoiceOver commands - stop talking Video" allow="autoplay; fullscreen" allowtransparency="true" frameborder="0" scrolling="no" class="wistia_embed" name="wistia_embed" width="100%" height="100%"></iframe></div></div>
<script src="https://fast.wistia.net/player.js" async></script>
  <figcaption>Using the <kbd>Control</kbd> key to pause and resume VoiceOver speech on thoughtbot.com</figcaption>
</figure>

VoiceOver gets overwhelming. The <kbd>Control</kbd> key halts the speech so I can take some time to process everything being said. Pressing <kbd>Control</kbd> again resumes where it left off.

## 2. Tab

<figure>
<div class="wistia_responsive_padding" style="padding:56.25% 0 0 0;position:relative;"><div class="wistia_responsive_wrapper" style="height:100%;left:0;position:absolute;top:0;width:100%;"><iframe src="https://fast.wistia.net/embed/iframe/rc6yyk50cm?web_component=true&seo=false" title="VoiceOver commands - tab Video" allow="autoplay; fullscreen" allowtransparency="true" frameborder="0" scrolling="no" class="wistia_embed" name="wistia_embed" width="100%" height="100%"></iframe></div></div>
<script src="https://fast.wistia.net/player.js" async></script>
  <figcaption>Using the tab key to navigate through interactive elements on thoughtbot.com</figcaption>
</figure>

This one's a bit of a cheat, but the <kbd>Tab</kbd> key gets extra powers when VoiceOver is on. As usual it jumps between interactive elements. But now I can close my eyes and listen - are the links and buttons and inputs described clearly? Are they missing labels or context? Are they in an unexpected order? Am I forced to tab through an entire nav section without a skip link?

## 3. VO+U: The rotor

<figure>
<div class="wistia_responsive_padding" style="padding:56.25% 0 0 0;position:relative;"><div class="wistia_responsive_wrapper" style="height:100%;left:0;position:absolute;top:0;width:100%;"><iframe src="https://fast.wistia.net/embed/iframe/pr544yd4l1?web_component=true&seo=false" title="VoiceOver commands - rotor Video" allow="autoplay; fullscreen" allowtransparency="true" frameborder="0" scrolling="no" class="wistia_embed" name="wistia_embed" width="100%" height="100%"></iframe></div></div>
<script src="https://fast.wistia.net/player.js" async></script>
  <figcaption>Opening the VoiceOver rotor on thoughtbot.com to see headlines, links and landmarks</figcaption>
</figure>

The Voiceover rotor menu is a treasure. It feels like using Mac's Spotlight. The <kbd>VO</kbd>+<kbd>U</kbd> rotor has two uses:

### See all the page element names in isolation

Firstly - do I see the headlines and links and inputs and landmarks that I expect? What's missing?

Secondly - can I understand what each element does? Are there links in the list named "⍰" or "click here"? I'd better fix them. Are form controls properly labeled? Do I see a button with the name "button"? Or an input named "edit text" Better fix them.

### Quick-jump to an element

I love jumping to landmarks (page regions defined by `<header>`, `<main>`, `<nav`>, etc.) because I can skip over the header/banner and get to the main page content. And it quickly becomes clear if the header or main or footer or navigation landmarks are missing - I'll get annoyed that I can't jump to them. Landmarks are the foundation of a quality webpage.

I also love jumping to headlines to navigate to the feature under test. If I can't quickly jump to a section of the page, that's an indication that the section is missing a headline.

When I'm debugging in an edit-reload-test loop, I can quickly get back to a feature by opening the rotor, typing to filter the list, and then jump straight to that element on the page.

## 4. VO+A: Start reading

<figure>
<div class="wistia_responsive_padding" style="padding:56.25% 0 0 0;position:relative;"><div class="wistia_responsive_wrapper" style="height:100%;left:0;position:absolute;top:0;width:100%;"><iframe src="https://fast.wistia.net/embed/iframe/y6xabqvz2a?web_component=true&seo=false" title="VoiceOver commands - read all Video" allow="autoplay; fullscreen" allowtransparency="true" frameborder="0" scrolling="no" class="wistia_embed" name="wistia_embed" width="100%" height="100%"></iframe></div></div>
<script src="https://fast.wistia.net/player.js" async></script>
  <figcaption>Using <kbd>VO</kbd>+<kbd>B</kbd> to tell VoiceOver to read the entire page</figcaption>
</figure>

This command tells VoiceOver to start reading the entire page starting from where I'm at. I can just sit back and listen for anomalies. <kbd>VO</kbd>+<kbd>B</kbd> will start reading from the beginning of the page.

## 5. VO+Semicolon: VO keys lock

When I'm navigating through a long page it can feel tedious to keep holding down the VO keys. Especially when I'm contoring my fingers to hit the right hotkeys. The VO keys lock (<kbd>VO</kbd>+<kbd>;</kbd>) acts like <kbd>Caps Lock</kbd> but for <kbd>Control</kbd>+<kbd>Option</kbd>. I can just use the arrows and spacebar and free up my other hand for a mug of tea.

## Share your tricks

These 5 commands + the basic navigation hotkeys probably account for 95% of my VoiceOver usage. If there are other neat VoiceOver screen reader tricks I'm missing out on, let me know on [Bluesky](https://bsky.app/profile/thoughtbot.com) or [Mastodon](https://thoughtbot.social/@thoughtbot).
