# Why an accessibility bug costs more on a subscription page

The UK spends around £2.2 billion a year on fresh flowers and plants, and roughly a fifth of that goes online. It is a market that runs on a handful of intense weeks each year, and increasingly on subscriptions, where a single order becomes a relationship worth many times the first sale. This review looks at what happens when a flower subscription signup shuts out customers using a keyboard or a screen reader, and why that is one of the most expensive mistakes a store can make.

## What the review found

On the surface, the flower site in this review looks completely fine. But when you put the mouse away and move through a subscription product page with a keyboard, it falls apart before you reach the _Add to Cart_ button.

It's not unreasonable to assume that a customer might land straight on a product page - arriving from a link, an ad, a search result, or even [an AI answer](/blog/ai-as-a-sales-channel-accessibility/). So that is where this starts.

**And very quickly we find 3 expensive problems for this store owner.**

1. **The account and basket links never get focus.** `Tab` from the logo and you drop straight into the body of the page, past both, with no way back to either without a mouse.

2. Then the part that should stop any store owner in their tracks. **The choice between paying monthly and paying upfront cannot be reached at all.** The single control that decides whether this becomes a subscription or a one-off order, the most valuable decision on the page, is the one a keyboard cannot touch.

3. If you make it down as far as the form - we're invited to add a gift message, a recipient name, address, and postcode. However - **none of these form fields have accessible labels**, so a screen reader has nothing to announce. The entire form reads back as: "_Empty textbox. Empty textbox. Empty textbox._" This is the same experience as handing a sighted customer a form with every label invisible, and telling them to guess. Most will not.

And someone, somewhere, doesn't get their flowers 💔

## The same bug, a very different bill

Missing accessible names on form labels is one of the most common failures on the web, and one of the easiest fixes too. It may seem like a non-issue, but on a subscription page it is anything but.

If this page were selling a single £25 bouquet, the maths is simple. One customer cannot finish the form, so you lose one sale. £25, once.

But it is not a one-off. It is a subscription.

So you do not lose £25. You lose it this month, and again next month, and every month after, for as long as that customer would have stayed. A customer worth £25 a month for a year is a £300 customer. The label did not cost you a bouquet. It cost you the relationship.

Same bug. Same line of code. **A very different bill.**

Hold onto that, because it changes how you should weigh every fix. **The price of an accessibility bug is not set by the bug. It is set by the page.** The more a page is worth, the more the same failure costs you for every day it sits there. And the page where a customer signs up to pay you again and again is, by definition, one of the most valuable pages you own.

And it is not only flowers. [Coffee](/reviews/browser-zoom-testing/) and recipe boxes, refills, pet food on repeat, gym memberships, software trials: anywhere a customer can subscribe instead of buying once, the signup is the most expensive page on the site to get wrong.

## How to check your own subscription page

You do not need specialist tools for most of this. You need to put your mouse to one side.

1. Start on the subscription product page itself.
2. Press `Tab` through the page. Can you reach everything that matters: account, basket, the plan options, every field, the confirm button?
3. Reach the plan choice with the keyboard. Monthly or upfront, weekly or fortnightly.
4. Fill in the form without looking at the layout. Does each field tell you what it wants on its own?
5. Make a mistake on purpose. Leave a required field blank and try to continue. Is the error obvious, or does nothing seem to happen?

Then run a screen reader (NVDA, VoiceOver, or JAWS) through the same journey and listen. The form that reads back as _"empty textbox, empty textbox"_ is the one losing you customers you never see leave.

## What good looks like

None of the fixes are clever. They are mostly making the page behave the way customers already expect.

Every field gets a visible label, linked to the field, announced clearly, and still there when someone starts typing. The plan and billing options are built from real form controls, not styled elements that only answer to a mouse, so keyboard and screen reader support come built in. Account, basket, and every control sit in a sensible tab order with nothing skipped. And focus goes where the customer expects: into the form, onto the error when one appears, onto the confirmation when the order lands.

This is not a redesign. It is the difference between a page that takes every customer's money and a page that turns away the ones worth the most.

## The takeaway

The form label was the cheapest thing on that page to put right. Leaving it was the most expensive, because of what sat behind it: not one bouquet, but every bouquet that customer would ever have bought.

A bug on a product page costs you a sale.

A bug on a subscription page costs you a customer.

Test the page where the money repeats first. It is the one you can least afford to leave broken.
