Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Haptics add a sense of touch to digital interactions, making experiences feel more responsive and intuitive. While most digital interfaces rely on visual or auditory feedback alone, haptic feedback provides a physical confirmation that reinforces user input and creates a clearer, more immediate connection between action and response.
Windows supports contextual haptic feedback through the InputHapticsManager API, enabling apps to deliver consistent touch feedback across supported devices.
Tip
For code examples and implementation details, see Implement haptic feedback. For additional visual guides, see Haptics design and implementation on microsoft.design.
Why add haptics?
Adding haptic feedback to your app benefits users in three key ways:
Clarity — Haptic feedback reinforces interactions by providing a physical confirmation, helping make actions feel responsive and reducing uncertainty about whether an action occurred.
Inclusion — Haptics extend feedback beyond visual and auditory channels, helping make interactions more accessible for users with different needs and preferences.
Delight — Thoughtfully designed haptics bring interactions to life through subtle, expressive feedback—adding moments of delight beyond basic function.
Passive vs. active haptics
Haptic feedback can be either:
- Passive — comes directly from physical interaction with hardware (for example, the tactile click of a physical button).
- Active — generated by the device and controlled through software using the
InputHapticsManagerAPI.
The InputHapticsManager API enables active haptics, letting your app control when feedback occurs and what it feels like. Haptics are most effective when used alongside visual and auditory feedback, reinforcing interactions without adding complexity.
Haptic language
Windows provides a set of predefined haptic waveforms designed for common interaction patterns. Each waveform has a distinct feel and purpose, helping create consistent experiences across applications and devices.
Waveforms are defined by three characteristics:
| Characteristic | Description |
|---|---|
| Intensity | How strong the feedback feels. |
| Decay | How quickly the feedback fades. |
| Sharpness | The character of the feedback, ranging from soft to crisp. |
Interaction feedback waveforms
These waveforms provide feedback during an interaction.
| Waveform | API constant | Description |
|---|---|---|
| Hover | Hover |
A light pulse that indicates hover states, signaling an upcoming action. |
| Collide | Collide |
A soft pulse that indicates reaching a boundary or limit. |
| Align | Align |
A sharp pulse when an object snaps to an alignment guide. |
| Step | Step |
A firm pulse for discrete changes, such as moving through steps or values. |
| Grow | Grow |
A dynamic pulse that conveys motion, transitions, or intelligent system activity. |
Process confirmation waveforms
These waveforms communicate the outcome of a completed action.
| Waveform | API constant | Description |
|---|---|---|
| Success | Success |
An ascending pattern that confirms a completed action. |
| Error | Error |
A descending pattern that indicates a failed action. |
Note
Collide, Align, Step, and Grow were added in Windows SDK 10.0.28000.1839. On earlier SDK versions, fall back to Click or check for support with ApiInformation before using them.
User control and intensity
Haptic preferences vary by user. Windows allows users to adjust intensity or turn haptics off entirely in Settings > Bluetooth & devices > Touch.
Design your experience so it remains clear and usable even when haptics are reduced or disabled. Never rely on haptics as the sole indicator of an interaction outcome.
When to use haptics
Haptics should feel like a natural part of an interaction—not a distraction. Use them to reinforce user input, not to add decoration. The following principles guide when and how to use haptics effectively.
1. Establish a clear cause–effect relationship
Haptic feedback should be a reliable response to user input. Reserve it for user-initiated actions to create a clear, intuitive connection. Delays weaken that connection—aim for latency under 50 ms between the triggering event and feedback delivery.
2. Provide signals, not noise
Not every interaction needs feedback. Use haptics where they add value. The following patterns represent common scenarios where haptics improve clarity:
| Scenario | Purpose | Trigger | Recommended waveform |
|---|---|---|---|
| Object alignment | Indicate when an object aligns to the edge or center of another object. | Cursor snaps to an alignment guide while moving or resizing. | Align |
| Drop target | Indicate that an item can be dropped at the current location. | Dragging an item over a valid drop target. | Click (Hover) |
| Slider detent | Indicate discrete steps or values within a range. | Control reaches a step or snaps to a value. | Step |
| Screen edge | Indicate that a boundary has been reached. | Dragging a window to the edge of the screen to activate Snap. | Collide |
3. Provide haptics consistently
Apply haptics consistently across similar interactions so users can build an understanding of what each signal represents. Use each waveform for its intended purpose and avoid mixing patterns for the same interaction type.
When combining haptics with visual or audio feedback, align them in timing and intensity. Well-designed haptics may go unnoticed consciously, but their absence is felt.
Related articles
Windows developer