yabai is the most capable tiling window manager on macOS, and the one with the largest asking price, paid in security rather than money. Almost every discussion of it collapses into the same argument about System Integrity Protection, usually without anyone stating accurately what SIP has to do with it. Here is the accurate version.
The short answer
Get yabai if you want the deepest window control available on a Mac, you are comfortable in a terminal, and you have decided that partially disabling System Integrity Protection is an acceptable trade on your machine. If that last clause gives you pause, stop here and look at AeroSpace instead, which reaches almost as far and commits to never asking.
What yabai is
The project describes itself as “a tiling window manager for macOS based on binary space partitioning” that “allows you to control your windows, spaces and displays freely using an intuitive command line interface”. That last part is the important half. yabai is not really an app you use, it is a daemon you send commands to. Every action is a shell invocation, which is why it composes with anything and why it looks intimidating from the outside.
| Price | Free |
|---|---|
| Licence | MIT, open source |
| Minimum macOS | Big Sur 11.0.0 and later on Intel x86-64; Monterey 12.0.0 and later on Apple Silicon |
| Interface | Command line. No graphical settings window |
| Hotkeys | Not built in. skhd is the usual pairing, but any tool that runs shell commands works |
| Requires disabling SIP | Partially, and only for the scripting addition. Basic tiling works with SIP fully on |
| Restores a saved layout | Not documented |
The SIP question, stated properly
System Integrity Protection is the macOS feature that stops even an administrator from modifying protected parts of the system. yabai wants to modify one: Dock.app. The documentation puts it plainly, and note the word “partially”, which most summaries drop:
“System Integrity Protection can be (partially) disabled for yabai to inject a scripting addition into Dock.app for controlling windows with functions that require elevated privileges.”
Two things follow from that sentence. First, this is optional. Install yabai, leave SIP alone, and you get tiling. Second, the features gated behind the scripting addition are the ones people install yabai for in the first place, so in practice most yabai users end up making the change.
Whether that is acceptable is genuinely your call and depends on the machine. On a personal Mac where you install everything yourself, plenty of experienced people consider it a reasonable trade for a tool they use every waking hour. On a work machine, on anything holding credentials that are not yours to risk, or on a Mac under a mobile device management policy, it is usually not your call at all. We are not going to pretend there is a universal answer here.
What yabai does not do
It has no opinion about your displays changing
The documentation does not address what happens when a monitor connects or disconnects, and documents no feature for saving or restoring a layout. This is not an oversight, it is the philosophy: a tiling window manager computes an arrangement from the windows that exist right now. Unplug a monitor and yabai will tile whatever is left, correctly, according to binary space partitioning. What it will not do is reproduce the arrangement you had chosen, because it was never storing one.
It is not friendly, and does not try to be
There is no settings window and no first run wizard. Configuration is a shell script, hotkeys are a separate program, and the community answer to most problems is a code snippet. That is a feature for the audience it is written for. If you want a Mac app, look at Tiles or Rectangle.
Where Putback fits, honestly
Disclosure: we make Putback, so read this critically. Putback is not a yabai alternative and not a tiler. It records where your windows sit as you work, keeps a separate memory per display setup, and puts everything back when your displays change. It touches no protected system component, so it needs nothing turned off.
For a committed yabai user the honest answer is that you probably do not need it for tiled windows, because yabai will re-tile them. The overlap is the windows living outside the tiler, and the case where the arrangement you want is a decision rather than a computation. The category map is in the Mac window manager comparison, and the mechanism behind the scramble is in why your Mac windows move when you unplug a monitor.

