What does this mean?

People using screen readers are not able to see the layout of a form. To make forms accessible, they must define explicit text labels for each form control.

Usually the best solution is to use a <label> element. The label may be linked to by the form control:

<label for="name">Full name</label>
<input type="name" id="name">

or the <label> can be wrapped around the form control:

    Full name <input type="name">

Buttons are different, as their labels are specified by the code for the button, e.g.

<input type="submit" value="Send message">
<button>Send message</button>

Alternatively ARIA attributes, such as aria-label may be used, but this information will not be conveyed to visual users. For more information, see W3C's guide to labeling controls.

Hidden input fields (<input type="hidden">) do not require labels. Note that the placeholder attribute should not be used as an alternative to a label.

3.8% done

How close this website is to fixing this issue.

HTML Found on page Issues
<input type="text" value="Type your keywords" onfocus="if (this.value == 'Type your keywords') this.value = '';" onblur="if (this.value == '') this.value = 'Type your keywords';" name="s"> 50
<div title role="button" tabindex="0" style="width: 40px; height: 60px; overflow: hidden; position: absolute; cursor: pointer; touch-action: none; left: -20px; top: -60px; z-index: 0;">...</div> 10
<input type="text" value name="s" placeholder="Search" id="s"> 1
61 distinct issues were found in the sample of 52 web pages.
More results from The Gloucester Charities Trust