Skip to content

How tab suspend works

Tab suspend is TabControl’s answer to “I have 80 tabs open and Safari feels sluggish.” Instead of asking you to close tabs, TabControl parks them: the tab stays exactly where it is in your tab strip, but the page it was holding is released.

Safari doesn’t let extensions discard a tab outright, so TabControl swaps the page for a tiny placeholder. Everything the old page was holding goes with it — its JavaScript heap, its video players, its timers. The tab keeps its position, its title, and its favicon, so a strip of suspended tabs still looks like your tabs rather than a row of identical icons. Click one and TabControl sends it back to the original URL.

From your perspective: the tab list doesn’t change, and the tab you click “loads” for a moment. From Safari’s perspective: a noisy tab just freed up hundreds of megabytes of RAM.

TabControl suspends automatically, on tabs that match rules you set. You keep your tab strip; Safari keeps less memory.

Worth setting expectations clearly:

  • It doesn’t close tabs. If you want tabs gone, close them or use Save & Close.
  • It isn’t instant across Safari’s whole memory footprint. Safari reclaims memory per-tab as it discards them — you’ll see usage drop gradually, not all at once.
  • It doesn’t help with pinned tabs by default. Pinned tabs are skipped; they’re pinned for a reason.
  • It doesn’t affect tab history. Navigating back and forward in a restored tab still works.
  • It doesn’t un-suspend on its own. A discarded tab reloads when you click it, not when it decides it’s time.

TabControl checks your tabs on a regular interval. For each tab, it asks: has it been idle long enough? If yes — and none of your exclusion rules match — it’s suspended.

“Idle” means the tab hasn’t been the active tab, hasn’t played audio, hasn’t received focus. TabControl doesn’t inspect page content; it relies on the signals Safari makes available to extensions.

Suspend can be limited to background windows only if you want to be certain it never touches the window you’re currently in. See Configure suspend for that toggle.

Clicking a discarded tab wakes it. TabControl stays out of the way for single-tab wakes.

When you switch to a window full of discarded tabs, TabControl can batch-wake the tab you clicked plus a few nearby tabs, so navigation feels less janky. The batch size and delay are configurable.

Suspend itself is cheap — a single call per tab, no polling beyond a timer. The real cost of Safari slowness is usually the tabs themselves (large SPAs, embedded videos, background JavaScript). Suspend is a treatment, not a cure. If you have 300 open tabs, suspend will help; if you have 10 and Safari is slow, suspend won’t move the needle.