Accessibility
Last updated:
Reach is built for VoiceOver and TalkBack from the start and checked continually. A test with blind users is coming. This page sets out what has been checked, what is still missing and where the app falls short today.
This page is a voluntary report on the current state. It does not confirm that Reach meets any accessibility standard.
What has been checked
Every screen against a fixed list
We build every screen in the app to this list. We check this in the code and with automated tests, and the main paths also on the iPhone with VoiceOver. Where a screen doesn't meet a point yet, it's listed under known limits below.
- Every control has a name, a role and its current state, for example “selected”.
- Every chart also says in words what it shows. The answer comes as a sentence before the chart.
- Focus follows the reading order. When a panel opens, focus lands in a deliberately chosen place.
- New results, notices and errors are announced, not just shown.
- Tap targets are large enough, and every swipe gesture has a second way that needs no gesture.
- No state is shown by color alone.
- Text grows when you choose a larger text size in your system settings.
Review rounds
There have been several review rounds since July 2026. The four most recent:
- A review of the main paths through the app, in the code. Findings included units read out as abbreviations instead of words, and tap targets that were too small. What remained open was focus when something disappears from the screen. This point is listed under known limits below.
- A review with TalkBack on an Android emulator, which is an Android phone simulated on a computer. Of seven findings, four are fixed, including the most important one: after a panel opened or closed, focus landed in the wrong place. For two findings, the diagnosis was wrong. We have since fixed the last one in the code for the most common case. Some cases are still open, and it hasn't been checked on a device yet. It's listed under known limits below.
- A review of the whole app, in the code. Findings included missing announcements after saving, a recovery code read out in one piece, tap targets that were too small and too little contrast. These points are still open and listed under known limits below.
- Two reviews of the changes since 15 October, in the code. Several points from the round before are now fixed in the code. New findings included missing headings in the Goal tab, places where focus has no set target, values read out as “percent” instead of “percentage points”, and a time limit on the Undo button. The percentage points are now fixed in the code, the other points are still open. All of them are listed under known limits below.
We have also gone through the main paths with VoiceOver on the iPhone: setup, adding a measurement, Overview and History. A full run through every screen on a device is still to come.
We carried out these reviews ourselves. A review by people who use a screen reader themselves is still to come.
Automated tests
More than 30 automated tests check with every change that some of these points still hold. One example: a test fails if a unit is passed to the screen reader as an abbreviation, so “kg” instead of “kilograms”. Such tests don't cover every place: when you set a goal, this test doesn't catch it yet. That is listed under known limits below.
This website
We check every page of this website with an automated tool, in both the light and the dark design. In the last check it found no errors. Tools like this only find some barriers, though.
What is still missing
- A full test on real devices: VoiceOver on the iPhone and TalkBack on an Android phone, along a fixed route through the whole app.
- A test with at least three blind users.
Both will follow. We will give a date here once it's set. Until then, we don't promise that the whole app works well with a screen reader.
Known limits
- On the iPhone, it's still open whether focus always lands in the right place after a panel opens or closes. For Android, we improved this in the emulator.
- When you hide a card with a notice, focus moves to the next card. This is fixed in the code but hasn't been checked on a device yet. If you hide the last card, or the card just before a weekly or monthly review, focus has no set target afterwards.
- After you delete your cycle tags in Profile, focus doesn't land in a set place. After the consent question for cycle tags, it jumps to the top of the panel instead of back to the tag.
- We haven't yet checked the full-screen chart in landscape with VoiceOver.
- After you save a goal in the Goal tab, the screen reader announces nothing. There, and after you create a backup, focus doesn't land in a set place.
- VoiceOver doesn't yet announce errors in the app lock, errors in the Withings connection in settings, or the notice that confirmed milestones are reset when you change the start date.
- When you enter your starting weight during setup, focus loses its target when the input field opens or closes.
- When you set a goal, including during setup, and when you edit milestones, Reach passes units to the screen reader as abbreviations, so “kg” instead of “kilograms”, and plus and minus as symbols instead of words.
- In the week card in the History tab and in the body fat forecast in the Analysis tab, the screen reader sometimes reads the unit as an abbreviation, so “kg” instead of “kilograms”.
- In the Goal tab, the sections in the Recomposition and Maintain modes are not marked as headings. There, you can't jump from section to section with the screen reader.
- The recovery code of a backup is read out in one piece, not character by character.
- Some notes and disabled buttons have too little contrast, for example when you delete all data and in the app lock.
- Some tap targets are smaller than recommended, for example a button when you switch modes and the weight field when you add a reading.
- In the calendar, today is only shown by its color. The screen reader doesn't say “today”.
- In the Analysis tab, the screen reader read the body fat pace as “percent per week”. It means percentage points per week. This is fixed in the code but hasn't been checked on a device yet.
- After you save a reading, Reach shows an Undo button. With a screen reader, it stays without a time limit. Without a screen reader, it disappears after 6 seconds, even if you use other accessibility features such as Zoom, Switch Control or Voice Control. You can delete the reading in the History tab at any time afterwards.
- If you open data entry from the Goal tab, or from a History or Analysis tab that is still empty, focus doesn't land in a set place after Undo.
- After “See them in the list” in the History tab, the screen reader announces only the number of measurements, and focus doesn't land in a set place.
- Nobody has listened yet to what the screen reader reads out in French, Spanish and Greek. The Greek version is machine-translated.
- We will only check system dialogs and the app lock in the full device test.
- We haven't checked use with an external keyboard or with Switch Control yet.
- The labels in the bar at the bottom and the view switcher in the History tab only grow so far with large system text. This keeps room for the content.
- Reach: Weight is only available for iPhone so far. The Android version is not yet on Google Play.
If you notice a limit that is missing here, please write to us.
Accessibility feedback
Found a barrier, or does something sound wrong when read aloud? Write to hello@reachyourgoals.app. Every message is read.
It helps to know which device and screen reader you use, and on which screen it happened.