Three things to check
- Keyboard: can you open, type, send and close without a mouse?
- Screen reader: are new messages announced, once, coherently?
- Focus: can you get out of the widget with the keyboard?
Focus trapping is the worst of the three. A user who tabs into a chat widget and cannot tab out has lost the whole page.
Streaming and screen readers
Answers that appear word by word can cause a screen reader to re-announce continuously, which is unusable. The message should be announced when complete, in a polite live region.
Sighted users still see the streaming; screen reader users get a sentence rather than a stutter.
Visual requirements
- Sufficient contrast in both light and dark contexts
- Text that resizes with browser settings
- The widget not covering essential content on mobile
- A close control that is large enough to hit
Test it yourself
Unplug the mouse and try to have a conversation. Then try it on a phone at 200% text size. Both tests take three minutes and find most problems.
If you can borrow a screen reader user for ten minutes, that is better than any checklist.
Chat can also improve accessibility
For some users, asking a question is considerably easier than navigating a complex site. A well-built chat widget is an accessibility improvement, not only an obligation.
That is only true if the widget itself is usable, which is why the three checks matter.