Skip to content
Grain
How it works Methodology Pricing Support
Get notified
  • How it works
  • The score
  • Methodology
  • Pricing
  • Questions
  • Support
  • About

Accessibility Statement

Last updated: September 23, 2026

We want everyone to be able to read a label with Grain, including people who use a screen reader, larger text, a keyboard, or reduced motion. This statement covers the website at grainios.com and the Grain iOS app. It says how far each one currently meets the accessibility standard, lists the gaps we have measured, and tells you how to reach us when something gets in your way.

1. Scope

  • The website: every page at grainios.com, including this one.
  • The Grain iOS app as distributed on the App Store.

This statement applies to the versions of both that were current on the date above. It is written against EN 301 549, the European standard referred to by the European Accessibility Act, which adopts the Web Content Accessibility Guidelines (WCAG) 2.1 at Level AA.

2. Conformance status

The website and the app are partially conformant with WCAG 2.1 Level AA. Partially conformant means that some parts of the content do not fully meet the standard. The gaps we know about are listed in section 4, together with the numbers we measured.

3. What works

3.1 In the app

  • Dynamic Type. Every named text style in the app is built on UIFontMetrics, so it scales with the text size you set in iOS Settings, including the accessibility sizes. A small number of elements stop growing early because the box around them cannot grow; they are listed in section 4.
  • VoiceOver. The Grain Score is announced as a number, and each row of the score breakdown is announced as a score out of 100, so the rating never depends on colour or on the ring alone.
  • Reduce Motion. The app reads the system Reduce Motion setting and turns its animations down when it is on.
  • Languages. The app is available in English, German, Spanish, French and Italian.

3.2 On the website

  • Every page declares its language, has a main landmark with a "Skip to content" link, and has one level-1 heading, with the other headings in order below it.
  • The Grain logo is hidden from screen readers wherever the name "Grain" is written next to it, so the name is read once.
  • On phones the menu is a button that is labelled and says whether it is open; the Escape key closes it. With JavaScript off, the menu links are shown as a plain list instead.
  • Keyboard focus is shown with a visible outline on every link, button and form field.
  • Text meets the WCAG AA contrast minimum: the muted text colour #5A6155 measures 5.8:1 on the page background and 5.3:1 on the darker sections, and white text on the green buttons (#45593D) measures 7.6:1.
  • When your system asks for reduced motion, the animations are switched off. No text is hidden while it waits for an animation.
  • The site can be read and used with JavaScript off, including the waitlist form.
  • The waitlist form's email field has a label, and its error and confirmation messages are announced to screen readers.
  • The pictures of the app on the home page each have a text description for screen readers.

4. Known accessibility issues

We measured the website on September 23, 2026 in a browser at widths from 320 to 1,920 pixels. Every page was checked for sideways scrolling, text smaller than 12 pixels, links that redirect or fail, and its landmark and heading structure; the home page was also checked with JavaScript switched off. Contrast was computed directly from the design tokens using the WCAG relative luminance formula. The app was measured the same way, from its colour and typography source rather than with a screen reader. A recorded screen-reader pass is still owed for both and is listed below.

4.1 Website

  • Small text inside the app pictures. The home page draws pictures of the app in HTML. They are hidden from screen readers and described in text, but at phone widths some of the labels drawn inside them are smaller than 12 pixels.
  • Screen-reader testing. The website has not yet had a recorded pass with VoiceOver or NVDA.
  • Language. This statement is published in English only.

4.2 Grain iOS app

  • Muted caption text contrast in light mode (WCAG 1.4.3). The muted text colour, #8A8178 in light mode, measures 3.6:1 on the page background, 3.8:1 on white cards and 3.3:1 on elevated cards. The dark-mode value, #807870, measures 4.1:1, 3.7:1 and 3.3:1 on those same three surfaces. It is used for placeholders, disabled states and small captions. This one is known and scheduled: the fix is a single colour token and it changes no score.
  • Sage green as text. The app's sage green, #7A8F6E, measures 3.3:1 on the light background where it is used as text or as an icon colour. A darker variant, #5A6E50, measures 5.2:1 and already exists in the theme; moving the remaining text uses onto it is scheduled alongside the fix above.
  • Icon-only buttons (WCAG 4.1.2). Some icon-only controls do not yet carry a VoiceOver label. The scanner screen is the main case: it has four labelled controls among 38 symbol images, and it has not yet had a recorded VoiceOver pass.
  • Text that stops growing (WCAG 1.4.4). Twenty-seven places in the app put a ceiling on how far Dynamic Type may grow them, because each one sits in a container whose height the app does not control. Twenty-three of those are icons. The other four are real words: the tab bar label at the bottom of every screen, a step number, a household-member emoji and a profile initial. The tab bar stops at 1.15 times the base size; the other capped places stop at 1.4 times. Nothing is clipped or truncated at any text size, but at the largest accessibility sizes those four stop short of the size the rest of the screen reaches.
  • Automated auditing. The app's test suite does not yet run Apple's built-in accessibility audit. Adding it for the scanner, the product page, the paywall and onboarding is on the list.

5. Feedback and contact

If you cannot use part of the website or the app, or you hit a problem that is not listed here, email contact@grainios.com. Tell us the page or screen, the assistive technology you use, and what happened. We usually reply within 48 hours, and where we can we will give you the information in another form.

6. Enforcement procedure

If you have reported an accessibility problem to us and you are not satisfied with our response, you can contact the authority responsible for enforcing accessibility requirements where you live. In the European Union, each member state designates such an authority under the European Accessibility Act (Directive (EU) 2019/882). In Great Britain the Equality and Human Rights Commission, and in Northern Ireland the Equality Commission for Northern Ireland, oversee the equality legislation that applies to digital services. We publish this statement and will keep it current whether or not an exemption under that Act turns out to apply to us.

7. Preparation of this statement

This statement was prepared on September 8, 2026 as a self-assessment and updated on September 23, 2026 after the website was rebuilt, using the measurements described in section 4. It will be reviewed whenever the website or the app changes in a way that affects the items above, and at least once a year.

Grain
  • Methodology
  • Pricing
  • About
  • Support
  • Privacy
  • Terms
  • Accessibility

The back of the label, read for you.

Grain is for information only and isn't medical advice. Scores are calculated by the rules on the methodology page. AI reads labels and photos, fills gaps in product data and answers questions, and it can be wrong.

The app is available in English, German, French, Spanish and Italian.

© 2026 Sonder Digital LLC · contact@grainios.com