489

You may have encountered a situation in which Mac changes the order of desktops based on some events like alerts on a program or a web page in browser.

How could I disable this logical change?

Note: I'm using El Capitan, but I had this problem since Mavericks.

Tetsujin
  • 115,663
Reyraa
  • 5,108

2 Answers2

810

General Solution

System Settings/Preferences > Search for "Spaces" > Uncheck Automatically rearrange Spaces based on most recent use

Newer MacOS Ventura (v13)

System Settings > Desktop & Dock > Scroll down to Mission Control section > Uncheck Automatically rearrange Spaces based on most recent use

enter image description here


Older macOS (v12 and older)

System Preferences > Mission Control
Uncheck Automatically rearrange Spaces based on most recent use.

enter image description here

This will fix the order of all your regular Spaces - but not Fullscreen spaces, which always go to the right of existing numbered Spaces.


From comments: Note this cannot fix the Mac confusing which external screen is which. That's not user-controlled at all, & seems to occur mainly [though not always] when the external screens are identical.

Late note:
This echoes the behaviour of Cmd/Tab or equivalent in most operating systems, so could be considered a 'sensible' default.
just to save this attracting even more comments on why it was a good/bad choice of default.

tilde
  • 103
Tetsujin
  • 115,663
7

You can also use the terminal to change the setting.

To disable rearrangement:

defaults write com.apple.dock "mru-spaces" -bool "false" && killall Dock

To enable rearrangement:

defaults write com.apple.dock "mru-spaces" -bool "true" && killall Dock