Why the lead form is the most sensitive spot on your site
A homepage can be browsed even if parts of the design aren't perfect. A lead form is different - it's the one moment on the site where a visitor has to act precisely: fill a field, understand an error message, click a specific button. Any small friction at that exact point - not just for people with disabilities, but for anyone using a browser autofill manager or filling a form quickly on mobile - translates directly into a lead that never gets sent. A site can look flawless and still lose leads right at this step.
A missing label - what it actually means, and why a placeholder isn't enough
A <label> element is programmatically tied to an input field (via for and id, or by wrapping it directly). A screen reader announces that label every time the user enters the field. A placeholder is not a substitute - it's hint text that disappears the moment the visitor starts typing, so even a sighted user who filled half a form and loses track of which field they're back in loses that context too. In WebAIM Million 2025, a missing input label was the third most common failure found in an automated scan of the web's top one million home pages.
A submit button with no accessible text
A button with an arrow icon, a checkmark, or even the word "Submit" rendered only as a background image - no visible text and no aria-label - is announced by a screen reader as an empty "button," with no description of what it does. Per the same report, 29.5% of home pages had empty buttons of exactly this kind. The fix is simple: visible text on the button, or at minimum aria-label="Submit the form" on an icon-only button.
Contrast in input fields and error messages
A light-gray input border on a light background, or an error message that relies only on red color with no text or icon, both fail the same way: low contrast. This is the single most common failure in WebAIM Million 2025 - 79.1% of home pages failed text contrast below the WCAG 2 AA threshold. For a lead form, the concrete impact: a field whose border is barely visible, or a "required field" message colored red alone with no supporting text, won't register easily for someone with limited vision - or for anyone looking at the screen in bright sunlight.
A practical checklist for a lead form
- Every input field is tied to a real label (
label for) - not just a placeholder. - The submit button has visible text describing the action, or an
aria-labelif it's icon-only. - The focus outline on an active field hasn't been stripped - a common "clean design" mistake that also breaks keyboard navigation.
- Error messages are tied to their field (
aria-describedby), not conveyed by color alone. - Text and field-border contrast meets the WCAG 2 AA threshold (4.5:1 for regular text).
- Required fields are marked in text ("required"), not only with a red asterisk.
And when the form runs inside GoHighLevel
GoHighLevel's form builder allows adding custom code - CSS and HTML - on top of a builder-made form, so you can add labels, aria attributes, and contrast fixes without writing a form from scratch. But it doesn't happen automatically: a form template thrown together quickly in the builder, with no review, can easily ship with a placeholder instead of a label and an icon-only button - exactly the failures described above. One manual check - tabbing through the form with only the keyboard and seeing whether it's clear which field you're in - surfaces almost every issue of this kind in under a minute.
Not sure if your form is accessible?
We build and audit lead forms - custom-coded or inside GoHighLevel - so they're accessible, clear, and close leads instead of turning them away.
Get started