Say "accessibility" and most people picture a blind user listening to a page through a screen reader. That person exists, and the work is worth doing for them. But they are not the reason your site is losing enquiries today.
In our experience the group looks more like this. Someone standing outside in bright sunlight, holding the phone in their own shadow so they can make out anything on the screen at all. Someone with one arm occupied by a child, filling in your form with one thumb. Someone who is tired at nine in the evening, whose eyes no longer pick pale grey text off a pale background. Someone on a bus with the sound off, watching your video in silence. And someone who is seventy and is your customer.
Permanent disability is part of that picture. It is simply not the whole of it. We are not going to invent a percentage here, because we do not know it. But take a look at the average age of your customers and at how many of them arrive on a phone. That is your number.
A small warning before you read on: this article is not legal advice. We are not lawyers and we do not know your company's situation. It is a list of the things we see on websites in practice, together with how to check for them yourself.
And one thing straight away, because it is the first question people ask. European rules in this area have been tightening over the past few years, and some businesses now have obligations they did not have before. Whether you are one of them depends on what you sell, who you sell it to and how large your company is. Ask a lawyer that question. We do not know the answer, and no article on the internet knows it on your behalf. Everything else below applies regardless of the answer.
This is not charity, it is the same work
The claim in the title is a simple one. Accessibility is not a good deed you perform on somebody else's behalf. It is the same work that makes a page readable, findable and fast.
Look at what a screen reader wants from a page. Real headings, not text that was made big and bold. Alternative text on images. Labels on form fields. Content that sits in the same order in the code as it does on the screen. Now look at what a search engine crawler wants, and at what an AI assistant wants. It is very nearly the same list.
That is not a coincidence. A screen reader is a machine that reads a page with the design stripped away. A search crawler is a machine that reads a page with the design stripped away. An assistant is a machine that reads a page with the design stripped away. All three ask you for the same thing: say in the code what you are saying to the eye with bold type, size and empty space.
Which is why we do not have a service page by that name and do not sell it as a separate discipline. Most of this work already sits inside search engine optimisation and inside building the site in the first place. If somebody offers you accessibility as an entirely separate project, ask what is in it that your site did not need anyway.

Seven things you can check yourself today
Each one comes with a check that takes a couple of minutes. No tools required, just a browser.
Contrast that survives daylight
The most common fault on this whole list, and almost always a deliberate choice: pale grey text on a white background, because it looks calm. On a good monitor in an office it is calm. Outdoors on a phone it is not there at all.
The check: turn your screen brightness down to half, step back a metre and read the text in your own footer. If you have to lean in, your customer does not lean in, they leave. Do the same with your buttons: pale text on a pale button is the same mistake in a more important place.
Text that can be made larger
Plenty of people browse with the zoom turned up, and they do it every day rather than as an emergency measure. The page has to survive that.
The check: press Ctrl and + five times (on a Mac, Cmd and +). That takes you to double size. Then look at three things: whether text runs out of its box, whether anything is now hidden underneath something else, and whether the word on a button is still readable. Ctrl and 0 puts it back.
Alternative text, including the empty kind
Alt text is the sentence a screen reader speaks in place of the image. It is also what a search engine sees, and what appears on the screen when an image fails to load.
There is a piece of nuance here that almost nobody knows. A decorative image should get an empty alt attribute, not a description. If your page has a decorative arc in the background or an icon used as a divider, "blue arc" helps a listener not at all, it only interrupts the reading. An empty alt tells the screen reader that this image can be skipped, and it does skip it. An image that carries meaning, on the other hand, needs a sentence about what it means on this page, not a file name.
The check: open your media library and look at the last ten images. If the alt field holds something along the lines of IMG_2841, it was filled in by a machine rather than a person. You can inspect a single image too: right click on it, choose "Inspect", and look for alt on the highlighted line.
A form field needs a real label
A very common design move: the fields are empty and grey with a faint word, "Email", sitting inside them. That word is a placeholder and it disappears the moment the person starts typing. Half the form filled in, the phone rings, they come back and no longer know which field was which.
For a screen reader the situation is worse: in many cases there is nothing to read out at all and it simply announces "text field".
The check: open your contact form and click not on the field but on the word sitting next to it. If the cursor jumps into the field, the label is real and properly connected. If nothing happens, it is just text placed beside a box. This is also the cheapest fix a form can get.
A heading is structure, not a typeface
If your heading was made by taking an ordinary paragraph and turning it big and bold, then it is a heading on the screen and it is not a heading in the code. A screen reader user can jump through a page heading by heading, roughly the way you skim it with your eyes. With no headings there is nothing to jump between, and the whole page has to be listened to.
The check: right click on your big bold line, choose "Inspect". If the highlighted line is an h2, you are fine. If it is a strong inside a paragraph, what you have is text that was made bold. This is exactly the same check we run from the search side, and that is the point.
A link should say where it goes
A screen reader can pull every link on a page into one list. If your blog page has nine links and each one reads "read more", that list contains the words "read more" nine times and not one clue.
The check: read your link texts out loud without the sentences around them. If one of them says nothing on its own, rewrite it. Instead of "read more", "read how contrast behaves in sunlight". The same fix strengthens the search side, because link text is one of the strongest hints about what is waiting on the other end.
Video with the sound off
Think for a moment about where your video actually gets watched: on a bus, in an office, at night with no headphones. In all of those the sound is off. Captions are not a special need here, they are the default situation.
The check: open the video on your front page and turn the sound all the way down. If you cannot follow what is being said, neither can most of your viewers. Most video platforms can generate captions automatically these days, and those need reading through by hand afterwards, because with Estonian the machine usually gets the names and the numbers wrong.
Five minutes with a keyboard

The eighth item gets its own section, because it tells you more than the other seven together. Some people do not use a mouse at all. A tremor, pain in the wrist, a laptop trackpad in a car: there are more reasons than people assume.
Put the mouse down. Actually down, not to one side. Click in the address bar, press Tab and start moving. Try to reach the menu, then the contact form, then fill the form in and send it. Tab moves forward, Shift and Tab move back, and the space bar or Enter presses things.
A broken result looks the same every time, and we see it often:
- You cannot see where you are. The focus outline was removed in the design because it looked ugly. Now something is moving around the page and nothing shows you what.
- You get stuck. The cookie bar or the chat window takes the focus and will not give it back. For a keyboard user the page ends right there.
- The menu will not open. It was built to open when the mouse moves over it, and a keyboard cannot pretend to be a mouse.
- The button does nothing. "Send" is a styled box in the design rather than a real button. Identical to the eye, not to the keyboard.
- The order jumps around. You fall from the header into the footer and back to the middle, because the design moved the blocks and the code still has them in the old order.
Check one more thing: press Esc while a popup is open. It should close, and the focus should return to where it came from.
If you cannot finish that test, that is your single most important finding. No report will summarise it better than your own fingers just did.
The script that promises to fix the site in one line
Sooner or later an offer reaches you: one line of code on the page and the site is compliant. We do not use these, and it is worth knowing why.
A script like that does two things. It puts a button in the corner of the page which opens a panel offering larger text, stronger contrast and a special font or two. And it tries to guess automatically at whatever the page is missing: writing alt text onto images, inferring headings, connecting labels to fields.
The first half is more useless than harmful. A person who needs larger text set that up on their own device a long time ago. They do not arrive on your site looking for assistive tools, they arrive with theirs already running. Your panel offers them a copy of what they have, and now and then that copy argues with their real settings.
The second half is the reason we do not install them. Automatic guessing is guessing. Alt text written by a machine about an image it does not understand is not better than missing alt text. It is a confidently wrong sentence, and that is harder to spot than an empty space.
And one thing worth checking yourself before you buy a script like this: go and find what daily screen reader users say about them. We read those, and that is what settled our own decision.
The honest part: the panel itself is not a crime, and one or two things inside it are genuinely useful, such as a switch that turns animations off. The harm is not in the button. The harm is in the sentence sold alongside it, that the list is now done. Contrast lives in the design. The label lives in the form. The heading lives in the content. None of those three is anywhere a script can be pasted.
What it costs

Two very different answers, depending on whether the site exists yet.
On a site being built now it is close to free, because it consists mostly of decisions rather than work. Two colours get chosen with contrast in mind rather than by eye alone. The form gets built with labels, because building it with labels takes no longer than building it without. A heading is made a heading. The only place a real cost appears is half an hour of arguing about one shade of grey. That is why it is not a separate line on our quotes: it is not extra work, it is how a site gets put together.
On an existing site it is a list of small fixes plus one awkward one. The small ones are alt texts, form labels, link texts, putting the focus outline back, opening the menu to the keyboard. Each of those is between ten minutes and an hour, they can be done one at a time, and they do not conflict with each other.
The awkward one is colour. Contrast almost always fails inside the brand palette itself, which means the fix touches something somebody once signed off on. Our usual compromise: the brand colour stays on the large things where it works (backgrounds, big headings, decoration), and a darker version of it is made for small text and buttons. The palette does not disappear, it gains one shade. That conversation is a design conversation rather than a technical one, and it is the one that usually stalls.
Where to start when the list looks long
It is long, and there is no need to take the whole thing on at once. Start with the two that help the most people for the least work.
The first is contrast. It touches everyone: sunlight, tired eyes, older eyes, a cheap screen. It is also the only item whose fix is immediately visible to you too.
The second is form labels. The form is where your site earns money. Every person who abandons a form halfway is an enquiry you do not receive, and you never find out they were there.
Do the rest when you are touching the pages anyway. A new image gets its alt text at the moment it is uploaded. A new page gets real headings. Next time the video is edited, captions go on. That way it never becomes a project that never starts. Accessibility drifts in exactly the way speed and compliance drift: every individual change is small and nobody checks afterwards. Which is precisely why it belongs inside web management, where somebody looks regularly rather than once.
If you want to know where you stand before you start, our compliance audit is free and walks the site. And here is the limit worth knowing about any machine that checks a page, ours included: an automatic check only sees one half. It sees that an alt attribute is missing. It cannot see that the alt attribute says "image". It measures the contrast number. It cannot see that your Tab key jumps from the header to the footer.
The other half is you: five minutes with a keyboard and one trip outside with a phone. Those two together give you almost the whole picture, and neither of them costs anything.
Frequently asked questions
Accessibility is not a good deed for someone else: it is the same work that makes a page readable, findable and fast. A screen reader wants real headings, alt text and form labels, and a search crawler and an assistant want nearly the same: all three read a page without its design. A reader with a permanent disability exists and the work is worth doing for them, but they are not the whole picture, which also holds someone with a phone in sunlight, someone filling a form with one thumb and a customer of seventy.
Seven things, and a browser is the only tool needed. Contrast: turn your screen brightness down to half, step back a metre and read your own footer text. Zoom: press Ctrl and + five times and see whether text runs out of its box or hides under something else. The other five are alt text on images, where decoration gets an empty alt attribute and a meaningful image gets a sentence, a real label on form fields, a heading that is a heading in the code, link text that says alone where it goes, and captions on video.
Put the mouse down, actually down. Click in the address bar and start moving with Tab: Shift and Tab go back, the space bar or Enter presses things. Try to reach the menu, then the contact form, fill it in and send it. A broken result looks the same every time: the focus outline is invisible, the cookie bar takes the focus and will not give it back, the menu opens only for a mouse, or the order jumps from header to footer. If you cannot finish that test, that is your most important finding.
Such a script puts a panel with larger text and stronger contrast behind a button, and guesses what the page is missing. The panel is more useless than harmful: someone who needs larger text set it up on their own device long ago. The guessing is why we do not install them: alt text a machine writes for an image it does not understand is a confidently wrong sentence. The harm is not in the button but in the promise that the list is done: contrast is in the design, the label in the form, the heading in the content.
The answer depends on whether the site exists yet. On a new site it is close to free, because it is mostly decisions rather than work: colours get chosen with contrast in mind, the form gets built with labels, a heading is made a heading. On an existing site it is a list of small fixes, each between ten minutes and an hour: alt texts, form labels, link texts, the focus outline put back. The awkward one is colour: contrast almost always fails inside the brand palette itself, which somebody once signed off on.
Read next

Almost nobody can say where the photos on their website came from, and the person who could has long since moved on. The four ways a photo gets onto a site, and how to go through your own media library before anybody asks.