Complex gestures and simple gestures


A simple gesture is a single point of contact on the screen: click, double-click, long press. A complex gesture involves multiple fingers simultaneously (pinch to zoom) or follows a precise trajectory (swipe). WCAG requires that any functionality triggered by a complex gesture be equally accessible via a simple gesture.


A carousel that can only be navigated by swiping the screen. A map impossible to zoom without pinching with two fingers. For anyone navigating with an eye tracker or mouth stick, these interfaces are walls.

#What WCAG criterion 2.5.1 says

WCAG criterion 2.5.1 (level A, the minimum) establishes a clear rule: any functionality triggered by a complex gesture must also work with a simple gesture at a single point, unless the complex gesture is essential to the functionality itself.

Two categories of complex gestures according to the RGAA glossary:

  • Multipoint: multiple fingers in simultaneous contact. Pinch to zoom, spread to unzoom, two-finger rotation.
  • Path-based: the finger must follow a precise path. Swipe left, draw a shape, slide along a slider.

A simple gesture, by contrast: a click, a tap, a double-click, a long press. A single point of contact, no imposed trajectory.

#How to provide alternatives

The principle is straightforward: each complex gesture has its equivalent in a button or clickable control.

Complex gestureSimple alternative
Swiping in a carousel"Previous" and "Next" buttons
Pinching to zoom a map+ and − buttons
Drag-and-drop to reorder"Move up" and "Move down" buttons
Two-finger rotationRotation button with increments

The common trap: thinking that swiping a carousel is an "essential" gesture. No. The W3C is clear: "essential" means the functionality itself relies on the gesture (a freehand drawing application, for example). Navigating between slides is nothing essential, buttons do exactly the same thing.

#The mistake everyone makes

Many think this criterion only applies to touch screens. Wrong. It applies to any pointing device. A mouse drag-and-drop to reorganize a list is a path-based gesture. Without "Move up" / "Move down" buttons as an alternative, you're in violation at level A.

Another commonly overlooked point: the criterion doesn't cover gestures handled by the browser or operating system (native pinch zoom, for example). It only concerns gestures interpreted by your own code.

Who is affected? People with motor disabilities (tremors, Parkinson's, paralysis), users of assistive technologies that emulate a single pointer (head pointer, eye tracker), but also anyone in a temporary situation: an arm in a cast, wearing gloves, commuting on public transport.

#In summary

Every multipoint or path-based gesture in your interface must have an equivalent as a single point of contact. A button, a click, a tap. If the alternative exists, you're compliant. If it's missing, even a simple carousel without navigation buttons puts you out of compliance.

Share this article

Learn more