Timing functions control the acceleration curve of animations, making them feel natural and engaging. Choose the right timing function to match your animation's purpose and context.
Constant speed throughout the animation
Loading bars, continuous rotations
linearSlow start, fast middle, slow end (default)
General purpose animations
easeSlow start, accelerates to the end
Elements entering the scene
ease-inFast start, decelerates to the end
Elements leaving the scene
ease-outSlow start and end, fast middle
Smooth transitions, state changes
ease-in-outPlayful bounce effect
Button clicks, success feedback
cubic-bezier(0.68, -0.55, 0.265, 1.55)Elastic spring motion
Modal entrances, drawer openings
cubic-bezier(0.175, 0.885, 0.32, 1.275)Slight overshoot at the end
Card flips, reveals
cubic-bezier(0.68, -0.6, 0.32, 1.6)ease-out for elements enteringease-in for elements leavingease-in-out for state changeslinear for loading indicatorsprefers-reduced-motion