32

The obvious answer you can find everywhere is:

defaults write .GlobalPreferences com.apple.mouse.scaling -1

which disables mouse acceleration, but locks you at one sensitivity.

Old solutions:

SmoothMouse no longer works. Mouse Acceleration Preferences Pane and SteelSeries ExactMouse both behave the same as com.apple.mouse.scaling -1 at all tracking speed settings (but without restart required).

Is it possible to disable mouse acceleration while still being able to adjust the sensitivity?

10
  • 1
    Maybe Steermouse?
    – Trellis
    Commented Aug 17, 2018 at 20:36
  • 1
    CursorSense from the same developer seems to still work, but I'm a little peeved I have to pay money to change my mouse sensitivity. Commented Aug 20, 2018 at 13:51
  • If you're in a trial period for CursorSense, you might be able to get an acceptable result from Mouse Acceleration.
    – Trellis
    Commented Aug 20, 2018 at 17:04
  • Mouse Acceleration appears to offer an inverse setting scale which removes acceleration, but I can't tell that any of the values currently change anything related to speed when the displayed value is negative.
    – Trellis
    Commented Aug 20, 2018 at 17:07
  • 2
    I ended up ditching the Magic Mouse 2 and going with the Logitech MX Vertical. The MX Vertical has variable sensitivity built into the firmware, which with the defaults write .GlobalPreferences com.apple.mouse.scaling -1 option, alleviates my problem. Really disappointing that a basic feature like this was removed from macOS and the only solutions cost money. Commented Sep 13, 2018 at 14:20

5 Answers 5

20

Nov 2021: LinearMouse is actively developed & free.

A UI so no terminal messing. It can also help with the scroll wheel acceleration as well.

enter image description here

1
  • 2
    Incredible ! After so many years of hassle... I should definitely learn swift to help the project =)
    – uptoyou
    Commented May 29, 2022 at 19:54
18

The built-in options are limited. To achieve your goal a combination of different software could be needed.

Sensitivity and mouse acceleration

Terminal

Like you have already mentioned, the following setting needs to be applied to disable mouse acceleration.

defaults write .GlobalPreferences com.apple.mouse.scaling -1

It can be a good idea to establish a script to automatically perform this action during login to ensure it is properly applied.

Alternatively, mouse acceleration can be configured using SteerMouse (presented below).

SteerMouse

SteerMouse can then be used to adjust your sensitivity. It does require a license, but it also resolves the issue.

Simply download and install the software, either from their homepage or by using e.g. Homebrew:

brew install --cask steermouse

The Cursor settings can then be adjusted to your liking. Acceleration should be left at 0, while sensitivity can be tuned to your preference.

  • Speed = ON
  • Acceleration = 0
  • Sensitivity = 0-2000

SteerMouse cursor settings

  • If using e.g. BetterTouchTool, then remember to turn Buttons, Wheel and Chords off in SteerMouse. These are known to conflict and generate erratic mouse behavior, as they both utilize similar macOS API endpoints.

Scrolling

Semi-related are also modifications to scrolling which can improve the Mac mouse usage experience.

SmoothScroll

Scrolling with a mouse on macOS can feel unnatural. To improve this one can utilize applications such as SmoothScroll for a better flowing scroll. Further adjustments can be made to customize the speed and related settings to ones need.

SmoothScrool settings

It can be downloaded and installed directly from the homepage, or by using e.g. Homebrew:

brew install --cask smoothscroll

Scroll direction

It can be preferential to have different scroll directions between the trackpad and mouse. This can be adjusted in System Preferences -> Mouse. Checking/unchecking Scroll direction: Natural modifies this behavior.

Scroll direction - System Preferences

Notes

  • The recommended options have been tested to work on macOS Ventura 13.2.1.
  • Licenses might be required for the suggested software.
  • I am in no way affiliated with the software developers, just a satisfied user. These are workarounds I have found when attempting to resolve the issue(s).
2
  • 2
    steermouse is a paid app Commented Dec 10, 2019 at 0:30
  • @MuhsinFatih Indeed. I have yet to find free solutions capable of achieving the desired results.
    – Nerolite
    Commented Dec 11, 2019 at 10:04
2

Under Big Sur, defaults write .GlobalPreferences com.apple.mouse.scaling -1 still works but requires a restart. However once restarted and my MacBook Pro goes into sleep mode and comes out of it, the mouse acceleration is back again. It requires a full restart after each time it goes into sleep mode.

1

Speaking for Big Sur:

CursorSense is capable of this, however it is paid software.

Instead I found https://github.com/docwhat/killmouseaccel which is a free solution that will remove acceleration on a mouse or touchpad, while maintaining the ability to adjust sensitivity.

Launching it on startup is covered well here: https://stackoverflow.com/a/13372744

0

Not a software solution (and I'm on Big Sur in 2021), so possibly not the answer you were looking for. But, I use a Logitech MX518 Hero which lets you store different DPI profiles physically on the mouse. I mainly use this mouse with Windows (which is where I set all the hardware profiles). But then when I swap over to MacOS machine with KVM, as long as I have the accel disabled via Terminal, then the mouse behaves exactly the same as it does on the Windows machine.

2
  • Unfortunately, this leads to pixel skips on Retina. I would need exactly 0.5x linear sensitivity to configure things the same as Windows.
    – mm201
    Commented Apr 20, 2021 at 22:01
  • Ah, when I use my MacBook with external keyboard and mouse, I'm also using an external (non-Retina) display.
    – The111
    Commented Apr 21, 2021 at 3:22

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .