Making Animations and Transitions Accessible: A Guide for Developers
Animations can do a lot. They add personality, smooth out user interactions, and help guide people through an interface. But they can also do harm. For some users, animation can cause confusion, distraction, or even physical discomfort. This guide is not an argument against animation. It is a reminder that animation has impact, and that not everyone experiences it the same way. As developers, we need to be more intentional about how we use it. When Animation Becomes a Barrier For users with vestibular disorders, motion on the screen can trigger dizziness, nausea, or a sense of imbalance. For people with seizure disorders, flashing or rapidly changing animations can be dangerous and even life threatening. Others may have cognitive conditions like ADHD or autism where excessive movement makes it difficult to concentrate or process what is happening on the screen. Some users simply prefer a quieter experience. They may not have a diagnosed condition, but they still find unnecessary motion tiring or distracting. It is easy to overlook this if you do not experience it yourself. But if we say we build for everyone, we have to mean it. Start with System Preferences: prefers-reduced-motion The simplest and most respectful way to start is by checking for the user's motion preference. Operating systems like macOS, Windows, Android, and iOS all have settings that allow users to request reduced motion. We can respond to this preference using the prefers-reduced-motion media query in CSS: @media (prefers-reduced-motion: reduce) { .animated-element { animation: none !important; transition: none !important; } } This approach lets users tell us what they need without having to explain it. All we have to do is listen. If you are using JavaScript-based animation libraries like GSAP or Framer Motion, you can check the preference in code: const prefersReducedMotion = window.matchMedia('(prefers-reduced-motion: reduce)').matches; if (prefersReducedMotion) { // Adjust or disable animations } Respecting user preferences should be a default part of how we work. It is a baseline, not a bonus. Not All Motion is Bad There is nothing inherently wrong with animation. In fact, when used well, it can improve accessibility. For example: A smooth fade-in can reduce the visual jolt of new content appearing A transition between steps in a form can help users stay oriented Highlighting a change of state can help reinforce what just happened The difference is in how the animation is used. Movement that supports the content or clarifies the experience is useful. Movement that decorates without purpose can become a barrier. Examples of Helpful vs Harmful Animation Helpful Motion Fading in a modal or tooltip Transitioning form steps smoothly A button scaling slightly on click Highlighting focused elements Potentially Harmful Motion Parallax scrolling effects Spinning loaders that never stop Background zoom effects or auto-playing sliders Fast flashing or flickering elements Design for Motion from the Start If you already have animation in your product, you can take steps to improve it. But ideally, accessibility is considered during the design phase. Here are a few practical ways to approach motion accessibly from the beginning: Make Motion Purposeful: If you are going to animate something, know why. Is it communicating something important? Is it helping users understand a change of state or transition? If not, ask whether it is really needed. Avoid Essential Content Depending on Animation: Do not delay important content using animation. If a modal contains critical information, it should be present in the DOM from the start. Assistive technologies like screen readers need access to it immediately. Give Users Control: Avoid auto-playing animations, especially ones that loop or flash. If motion is necessary, give users a way to pause or dismiss it. This is especially important for any animation that runs longer or involves flashing lights. Simplify for Reduced Motion: Instead of removing animations completely, you can provide alternate versions. For example, replace a complex sliding effect with a simple fade. Maintain clarity, but reduce the intensity. Be Consistent: Design motion as part of a system. Use similar timing, easing, and direction patterns. Predictability reduces cognitive load and makes the experience feel more trustworthy and stable. Cognitive and Neurological Considerations Motion affects more than just the vestibular system. For users with ADHD, autism, or processing disorders, unpredictable movement or flashy transitions can create serious usability issues. Too much motion can lead to overstimulation and make it harder to complete tasks. This is why simplifying transitions, reducing distractions, and following consistent animation patterns is beneficial for a much broader audience than

Animations can do a lot. They add personality, smooth out user interactions, and help guide people through an interface. But they can also do harm. For some users, animation can cause confusion, distraction, or even physical discomfort.
This guide is not an argument against animation. It is a reminder that animation has impact, and that not everyone experiences it the same way. As developers, we need to be more intentional about how we use it.
When Animation Becomes a Barrier
For users with vestibular disorders, motion on the screen can trigger dizziness, nausea, or a sense of imbalance. For people with seizure disorders, flashing or rapidly changing animations can be dangerous and even life threatening. Others may have cognitive conditions like ADHD or autism where excessive movement makes it difficult to concentrate or process what is happening on the screen.
Some users simply prefer a quieter experience. They may not have a diagnosed condition, but they still find unnecessary motion tiring or distracting. It is easy to overlook this if you do not experience it yourself. But if we say we build for everyone, we have to mean it.
Start with System Preferences: prefers-reduced-motion
The simplest and most respectful way to start is by checking for the user's motion preference. Operating systems like macOS, Windows, Android, and iOS all have settings that allow users to request reduced motion.
We can respond to this preference using the prefers-reduced-motion media query in CSS:
@media (prefers-reduced-motion: reduce) {
.animated-element {
animation: none !important;
transition: none !important;
}
}
This approach lets users tell us what they need without having to explain it. All we have to do is listen.
If you are using JavaScript-based animation libraries like GSAP or Framer Motion, you can check the preference in code:
const prefersReducedMotion = window.matchMedia('(prefers-reduced-motion: reduce)').matches;
if (prefersReducedMotion) {
// Adjust or disable animations
}
Respecting user preferences should be a default part of how we work. It is a baseline, not a bonus.
Not All Motion is Bad
There is nothing inherently wrong with animation. In fact, when used well, it can improve accessibility.
For example:
- A smooth fade-in can reduce the visual jolt of new content appearing
- A transition between steps in a form can help users stay oriented
- Highlighting a change of state can help reinforce what just happened
The difference is in how the animation is used. Movement that supports the content or clarifies the experience is useful. Movement that decorates without purpose can become a barrier.
Examples of Helpful vs Harmful Animation
Helpful Motion
- Fading in a modal or tooltip
- Transitioning form steps smoothly
- A button scaling slightly on click
- Highlighting focused elements
Potentially Harmful Motion
- Parallax scrolling effects
- Spinning loaders that never stop
- Background zoom effects or auto-playing sliders
- Fast flashing or flickering elements
Design for Motion from the Start
If you already have animation in your product, you can take steps to improve it. But ideally, accessibility is considered during the design phase. Here are a few practical ways to approach motion accessibly from the beginning:
Make Motion Purposeful: If you are going to animate something, know why. Is it communicating something important? Is it helping users understand a change of state or transition? If not, ask whether it is really needed.
Avoid Essential Content Depending on Animation: Do not delay important content using animation. If a modal contains critical information, it should be present in the DOM from the start. Assistive technologies like screen readers need access to it immediately.
Give Users Control: Avoid auto-playing animations, especially ones that loop or flash. If motion is necessary, give users a way to pause or dismiss it. This is especially important for any animation that runs longer or involves flashing lights.
Simplify for Reduced Motion: Instead of removing animations completely, you can provide alternate versions. For example, replace a complex sliding effect with a simple fade. Maintain clarity, but reduce the intensity.
Be Consistent: Design motion as part of a system. Use similar timing, easing, and direction patterns. Predictability reduces cognitive load and makes the experience feel more trustworthy and stable.
Cognitive and Neurological Considerations
Motion affects more than just the vestibular system. For users with ADHD, autism, or processing disorders, unpredictable movement or flashy transitions can create serious usability issues. Too much motion can lead to overstimulation and make it harder to complete tasks.
This is why simplifying transitions, reducing distractions, and following consistent animation patterns is beneficial for a much broader audience than most developers assume.
Test with Motion in Mind
Testing for accessibility should include motion. Here are a few steps you can take:
- Turn on the Reduce Motion setting in your operating system and browse your app
- Use browser tools like Chrome DevTools to simulate reduced motion
- Observe if animations are still being triggered unnecessarily
- Ask real users, especially those with known motion sensitivities, how the experience feels
Animation is something you can test just like color contrast or screen reader behavior. Make it part of your accessibility checklist.
Conclusion
Animations and transitions are not just visual enhancements. They affect how people experience and interact with your product. When done well, they can help users understand and enjoy the interface. When done poorly, they can exclude or even harm.
Accessibility is not about removing creative elements. It is about making sure those elements are thoughtful, intentional, and inclusive. Designing for motion sensitivity is not extra work. It is part of doing the work well.
Every decision we make as developers either includes more people or leaves someone behind. Choosing accessible motion means choosing to include.
Further Reading and Resources
If you want to go deeper into this topic, here are some helpful resources: