For OS X 10.4+: Download Scroll Reverser v1.5.1 (12 Mar 2012)
macOS 10.14 / 10.15 users: To get Scroll Reverser working, please do the following:
1) Go to System preferences → Security & Privacy → Privacy → Accessibility
2) Click the Lock icon and enter your password
3) Enable Scroll Reverser in the list
4) 10.15 only: Also add Scroll Reverser to the Input Monitoring list.
Scroll Reverser is a free Mac app that reverses the direction of scrolling. It is available for macOS 10.4 onwards.
It has independent settings for trackpads, mice and Wacom tablets, and for horizontal and vertical scrolling.
If you wish to make a voluntary donation you can do so below.
FAQ / Troubleshooting
It doesn't detect my trackpad. If you have an older Mac without a multi-touch trackpad (late 2007 and earlier) then Scroll Reverser will see your trackpad as a mouse. This also affects some Logitech external trackpads. I know of no fix.
Can you make it reverse 3- and 4-finger swipes too? No, this is not possible. However, swipe direction respects the "Scroll Direction: Natural" setting in System Preferences. Set that to your liking, then use Scroll Reverser to adjust scrolling with respect to that base setting.
Can you make it reverse scrolling on volume sliders? No, this is not possible.
I am controlling a machine via remote desktop, and Scroll Reverser is running on both the local and remote machine. Anything I can do to make it work nicely? Run this command at terminal on the remote machine:
defaults write com.pilotmoon.scroll-reverser ReverseOnlyRawInput -bool YES then quit and restart Scroll Reverser.
v1.7.6 (11 May 2017)
- Some internal changes to the way preferences are loaded. (As part of investigating Issue #38: Scroll reverser preferences randomly change.)
- Translation updates, including a new Norwegian translation (thanks, Patrick).
v1.7.5 (24 Apr 2017)
- Fixes the following problems:
- Presence of Scroll Reverser triggering additional security dialogs (for example, in Keychain permissions dialogs);
- "Shake to locate cursor" not working with Trackpad while Scroll Reverser is running;
- Notification center getting stuck half-open while Scroll Reverser is running.
- Added Simplified Chinese (zh-CN) translation. (Thanks, Ruocheng Wang.)
- Added Dutch translation. (Thanks, Erik.)
v1.7.4 (11 Nov 2016)
- The relaunch-on-wake implementation is now more robust.
- A small correction to the Polish translation.
v1.7.3 (7 Nov 2016)
- Scroll Reverser now silently relaunches itself when your Mac wakes from sleep. (This is because of the ongoing problem where macOS sometimes stops sending gesture events to Scroll Reverser after awaking from sleep, preventing it from telling the difference between trackpad and mouse. Hopefully, this will help.)
- Added Hungarian and Polish translations. (Thanks, Léki and Artur.)
- Fixed a bug where, on unchecking "Show in menu bar", the "Icon Hidden" message would appear multiple times.
v1.7.2 (26 May 2015)
- Fixes for bug where Scroll Reverser would sometimes stop working, requiring app restart. (Now it should hopefully not stop working, and if it does you can just toggle Scroll Reverser off/on to reset it.)
- You can now right-click (or control-click) the menu bar icon to toggle Scroll Reverser on/off.
- New algorithm to (hopefully) distinguish more accurately between trackpad and mouse.
- Added a debug console to help with fault-finding. To show the debug window, option-click (⌥-click) the Scroll Reverser menu bar icon.
- Added Korean, Russian, Slovak and Traditional Chinese translations. (Thanks Josef, Byungkook Jang, Dmitry, and Johnny.)
v1.7.1 (7 Jan 2015)
- Fixed bug (introduced in v1.7) where Scroll Reverser would sometimes stop working after using it for a while.
- Added Romanian translation. (Thanks, Gabriel.)
v1.7 (18 Dec 2014)
- Brand new preferences window to replace the clunky old menu.
- Important fixes for compatibility with the upcoming Yosemite update 10.10.2.
- Adds AppleScript support for turning Scroll Reverser on and off.
- Now treats a Wacom mouse's scrolling as coming from a mouse, rather than a tablet.
- Gave the app icon a freshen up.
- Localized in Brazilian Portuguese, German, Greek, Italian, and Japanese. (Thanks, Humberto, Peter, Nikos, Vincenzo and Fu-sen.)
v1.6.1 (25 Sep 2014)
- Updated for OS X Yosemite. (Specifically, the menu bar icon now supports Dark Mode.)
v1.6 (21 May 2013)
- Updated the status icon for retina displays.
- Better accuracy detecting traditional wheel mice from trackpads. (No change to Magic and Mighty mouse detection.)
- Added the option to automatically check for updates.
- Fix minor bug which casused a console warning about 'scrollPhase is deprecated...'.
- Requires OS X 10.7 Lion and above. (Version 1.5.1 still supports 10.4 and above.)
v1.5.1 (12 March 2012)
- Signed with a Developer ID for OS X 10.8 Gatekeeper.
v1.5 (23 February 2012)
- Now works with OS X 10.4 Tiger.
- More reliable detection between mouse and trackpad.
- Fixed a bug that led to high memory usage.
- Added a welcome window that appears on the first run.
- Added German localization. (Thanks, Peter.)
v1.4.4 (29 September 2011)
- Fixed a memory leak.
- Fixed a problem with the Italian localization.
- Added Romanian localization. (Thanks, Gabriel.)
v1.4.3 (9 September 2011)
- Added French localization. (Thanks, Marcel and E.)
v1.4.2 (18 August 2011)
- Changed default on Lion to not reverse horizontal scrolling.
- Added Spanish localization. (Thanks, Pedro.)
v1.4.1 (18 August 2011)
- Restored PowerPC and 32-bit Intel support.
- Better Wacom tablet detection.
v1.4 (11 August 2011)
- Added independent settings for horizontal and vertical scrolling.
- Added independent settings for scrolling with trackpad, mouse and Wacom tablet.
- Fixed a Firefox compatibility problem.
- Dropped PowerPC and Intel 32-bit support (by mistake).
- Added Italian localization. (Thanks, Vincenzo.)
v1.3 (28 June 2011)
- Added PowerPC support.
- Added Greek localization. (Thanks, ecrisis.)
v1.2 (11 April 2011)
- Added option to hide the menu bar icon.
- Added Brazilian Portuguese localization. (Thanks, Humberto.)
v1.1 (1 April 2011)
v1.0 (8 March 2011)
- Initial release.