Accessibility Statement
Last updated: 2 November 2026
We want SongLens to be usable by everyone, including people who use a screen reader, navigate by keyboard or switch, need larger text, or need higher contrast. This page says honestly where we are — including what still falls short.
1. What we are aiming for
We aim to meet WCAG 2.1 Level AA in both this website and the SongLens Android app.
- This website: we believe it conforms to WCAG 2.1 AA.
- The app: partially conforms. The gaps we know about are listed in section 4.
"Partially conforms" means parts of the app do not yet fully meet the standard. We would rather say that than claim conformance we have not earned.
2. This website
- Semantic HTML with a single
h1per page and headings in order, so a screen reader can navigate by structure. - A skip link to the main content as the first focusable element.
- Every colour pair meets AA contrast in both light and dark themes. This is checked by a script against the real stylesheet, not by eye — see section 6.
- Fully keyboard operable, with a visible focus outline on every interactive element.
- Text sized in relative units, so it scales with your browser's font setting. The layout reflows to 320px and to 200% zoom without horizontal scrolling.
- Follows your system light/dark preference.
- No JavaScript is required to read anything. No motion, no autoplay, no timeouts.
- No cookies, no analytics, no third-party embeds, no web fonts — so nothing here can fail to load and take the content with it.
- Tables have proper headers and scroll inside their own container rather than forcing the page sideways.
Known limitation on this site
The Privacy Policy page began life as an export from a policy generator. Its underlying markup is not as clean as the pages we wrote by hand — headings sit inside decorative wrappers, and the document is long and densely nested. We strip the vendor's hardcoded colours and font sizes at build time so the page inherits the site's accessible typography and works in dark mode, and we repair the mis-nested elements the export ships with. The text is complete and readable, but we intend to replace it with hand-written markup.
3. The SongLens app
Recent work has addressed a number of real barriers:
- Contrast. Thirteen colour combinations failed AA — including every primary button and every link in the light theme, and error messages in both themes. All are fixed, and an automated test now fails the build if a new one is introduced.
- Screen readers. Every icon-only button now has a label, including the show/hide password toggles, which previously announced nothing at all. Cover artwork that merely repeats the song title beside it is marked decorative so it is not read out as a meaningless "image"; images that carry information, such as a file you attach to a support request, are labelled.
- Keyboard and password managers. Sign-in and sign-up fields now declare what they hold, so your password manager can fill them, and the last field of each form submits from the keyboard.
- Touch targets. The button that removes a support attachment was 24px; it is now 44px.
4. Known issues in the app
These are outstanding. Each is tracked.
| Issue | Who it affects | Status |
|---|---|---|
| No full audit with a real screen reader | TalkBack users | The fixes above were made from code review. A pass with TalkBack on a real device is still to be done, and will find things code review cannot. |
| Touch targets not systematically verified | Anyone with limited dexterity | Individual controls have been fixed as found. The app has not been measured end-to-end against the 48 × 48dp guideline. |
| Large text and display scaling untested | Anyone using larger system text | The app respects the system text size, but layouts have not been checked at the largest settings for clipping or overlap. |
| Disabled controls are low contrast | Low-vision users | Disabled elements are exempt from the contrast requirement, so this is conformant — but "conformant" and "readable" are not the same thing, and we would like to improve it. |
| The app is English only | Non-English speakers | No translations yet. Text is not marked with a language attribute for screen readers switching voices. |
| iOS | iPhone and iPad users | There is no released iOS app, so VoiceOver support is untested. |
5. AI-generated content
Interpretations are written by an AI model. We control how they are presented — text size, contrast, structure, and the fact that they are announced as AI-generated — but not the wording itself, which is generated fresh each time. If an interpretation is hard to follow, unclear, or reads badly with a screen reader, please tell us: that is useful feedback about the prompt, and we can change it.
6. How we check
- Contrast on this site is verified by a script that reads the actual stylesheet and checks every colour pair against the WCAG formula, in both themes.
- Contrast in the app is asserted by a unit test over the real colour tokens, so a failing pair breaks the build.
- Both are run as part of ordinary development, not as a one-off exercise.
What we have not done: an audit by an accessibility specialist, or testing with users who rely on assistive technology. Neither has happened yet, and both would find more than our own checks do.
7. Tell us about a barrier
If something in SongLens is difficult or impossible for you to use, please email [email protected]. It helps if you can say what you were trying to do, what got in the way, and what device or assistive technology you use — but send it however is easiest for you.
We aim to reply within 5 working days. We will tell you honestly whether we can fix it and roughly when, rather than leaving you without an answer.
If you need something from SongLens in another form, ask — we will find a way to get it to you.
8. Scope of this statement
This statement covers the SongLens website at songlens.app and the SongLens
Android app. It does not cover Google Play, or the third-party services SongLens links to,
which have their own accessibility statements.
SongLens is not a public sector body, so this statement is not made under the EU Web Accessibility Directive. We publish it because it is the right thing to do, and because the European Accessibility Act's requirements for consumer services are worth meeting on purpose rather than by accident.