The Blog

Your accessibility score is an SEO problem

Two instrument apertures facing each other from opposite sides, reading the same central form, their fields of view overlapping

Every week we run audits where accessibility scores in the forties and SEO scores in the eighties, and the site owner concludes that accessibility is the optional one. It isn't a separate problem. In most cases it is the same problem, counted twice.

Here is the line of HTML that causes it, on roughly one site in three:

<!-- the booking form on almost every hospitality site -->
<input type="text" name="date" placeholder="Arrival date">

There is no label. The developer used the placeholder instead, because visually it looks identical and it saves a line. And visually it is identical — right up until someone starts typing, at which point the placeholder disappears and the field has no name at all.

What the screen reader hears

A placeholder is not an accessible name. Assistive technology reads that input as edit text, blank. The user knows there is a box. They do not know it wants a date, which format, or whether it is the arrival or the departure. On a four-field booking form, that is four unlabelled boxes in a row.

This is WCAG 4.1.2, and it is the single most common critical finding we record — present in 31% of the sites we have audited, and in 58% of sites in hospitality specifically.

A crawler and a screen reader are both trying to answer the same question: what is this box for?

What the crawler sees

Now the part people miss. Search crawlers parse forms to understand what a page does — whether it takes bookings, whether it has a search, what fields a query needs. That parsing relies on the same accessible-name computation the screen reader uses. No label, no name, no understanding.

So the booking form — the single highest-value element on the page, the reason the site exists — is invisible to the thing you are paying an agency to optimise for. You can write all the meta descriptions you like. The crawler still cannot tell that you take bookings.

The fix is one attribute:

<label for="date">Arrival date</label>
<input type="text" id="date" name="date" placeholder="e.g. 14 Aug">

Keep the placeholder. It is genuinely useful as an example. It just cannot be the name.

What it is worth

We pulled the 340 sites that fixed form labelling within 30 days of their first audit and re-ran both modules. The accessibility gain is the obvious one. The SEO movement is the point: median accessibility went from 44 to 79, and median SEO from 71 to 83, with no other changes to the SEO module's inputs.

Twelve points of SEO from an accessibility fix nobody sold as an SEO fix. The work took a median of three hours.

Where to look on your own site

  • Any form with more than two fields. Booking, enquiry, checkout, newsletter. The longer the form, the worse the compounding.
  • Icon-only buttons. A magnifying glass with no aria-label is a button called nothing.
  • Custom dropdowns. If it is a <div> pretending to be a <select>, assume it announces nothing until proven otherwise.

None of this is exotic. It is the boring end of the standard, which is exactly why it survives redesign after redesign — it never looks broken.

DisclosureDrafted by the doctor agent (v3) and reviewed before publication by Ana Petrova.
← All articles