📑 Table of Contents
A slow Mac startup is one of the most common complaints from long-time Mac users. Over months and years of installing applications, each one may add background processes, login items, or launch agents that automatically start when your Mac boots up. The cumulative effect is a startup sequence that takes minutes instead of seconds, with your desktop becoming responsive only after dozens of background processes finish loading.
The good news is that macOS provides comprehensive built-in tools for managing every aspect of your startup sequence. From the new Login Items panel in System Settings to the powerful launchctl terminal command, you have full control over what runs when your Mac starts up. In this guide, we will show you how to identify and disable unnecessary startup items, explain the difference between LaunchAgents and LaunchDaemons, and cover advanced troubleshooting techniques like Safe Mode and NVRAM resets.
macOS Ventura introduced a completely redesigned Login Items panel in System Settings that, for the first time, shows not just user-added login items but also background processes that apps install. This transparency was a major step forward in giving users control over their startup sequence.
Managing Login Items via System Settings
macOS Ventura and Later
- Open System Settings (Apple menu → System Settings).
- Click General in the sidebar.
- Click Login Items.
- The top section shows "Open at Login" — apps that launch when you log in.
- Select any item and click the − button to remove it.
macOS Monterey and Earlier
- Open System Preferences → Users & Groups.
- Select your user account and click the Login Items tab.
- Select items and click the − button to remove them.
Some apps re-add themselves to Login Items after being removed. If this happens, look for a "Launch at Login" or "Start at Login" option in the app's own preferences/settings and disable it there.
Background Items (New in macOS Ventura)
Below the Login Items in System Settings, macOS Ventura and later show a new section: "Allow in the Background". This section reveals background processes that apps have installed, including:
- Updater services (checking for software updates automatically)
- Helper tools (clipboard managers, VPN connectors, cloud sync agents)
- System extensions (network filters, security tools, input devices)
Each item has a toggle switch. Disabling an item prevents it from running in the background. Some items may show a warning that the parent app requires the background process to function correctly.
Before macOS Ventura, there was no graphical way to see or manage background items installed by applications. Users had to manually inspect LaunchAgent folders using Finder or Terminal. The new Background Items panel finally brings transparency to hidden startup processes.
LaunchAgents and LaunchDaemons Explained
Behind the scenes, macOS uses a system called launchd to manage all startup processes. Understanding the two types of launch items helps you make informed decisions about what to keep and what to remove:
LaunchAgents
LaunchAgents run in the context of a logged-in user. They start when you log in and stop when you log out. They are stored in two locations:
~/Library/LaunchAgents/— Per-user agents. You have full control over these./Library/LaunchAgents/— System-wide agents that run for all users. Require admin privileges to modify.
LaunchDaemons
LaunchDaemons run at the system level, regardless of whether any user is logged in. They start at boot time and are stored in:
/Library/LaunchDaemons/— Third-party daemons. Require admin privileges./System/Library/LaunchDaemons/— Apple system daemons. Never modify these.
Finding and Listing Launch Agents
Use Finder to inspect these folders:
- Open Finder and press Cmd + Shift + G.
- Type
~/Library/LaunchAgentsand press Enter. - Review the .plist files. Each one represents a startup process.
- To disable an agent without deleting it, move it to a backup folder on your Desktop.
Never delete or modify files in /System/Library/LaunchDaemons/ or /System/Library/LaunchAgents/. These are Apple system processes protected by SIP and are essential for macOS to function.
Safe Mode Boot
Safe Mode starts your Mac with only essential system processes, disabling all third-party startup items, login items, and non-essential kernel extensions. It is invaluable for troubleshooting.
Intel Macs
- Shut down your Mac completely.
- Press the power button, then immediately hold the Shift key.
- Release Shift when you see the login window.
- "Safe Boot" appears in the menu bar.
Apple Silicon Macs (M1/M2/M3/M4)
- Shut down your Mac completely.
- Press and hold the power button until "Loading startup options" appears.
- Select your startup disk.
- Hold Shift and click "Continue in Safe Mode".
Safe Mode also clears various system caches, which can resolve issues caused by corrupted cache files. If your Mac works normally in Safe Mode but has problems in normal mode, the issue is likely caused by a third-party startup item.
NVRAM/PRAM Reset
NVRAM (Non-Volatile Random Access Memory) stores settings like display resolution, startup disk selection, speaker volume, and timezone. Resetting it can resolve various startup issues.
Intel Macs
- Shut down your Mac.
- Turn it on and immediately press and hold Cmd + Option + P + R.
- Hold for about 20 seconds (you may hear the startup chime twice).
- Release the keys and let your Mac start normally.
Apple Silicon Macs
Apple Silicon Macs do not have a manual NVRAM reset because the system automatically tests and resets NVRAM if needed during each startup. If you suspect NVRAM issues, simply shut down and restart your Mac.
PRAM and NVRAM are essentially the same thing on modern Macs. "PRAM" (Parameter RAM) was the original term used on older Macs. Apple now officially uses "NVRAM" but the reset procedure is identical.
Terminal Commands for Startup Management
List all loaded launch agents
launchctl list | head -30List user LaunchAgent files
ls -la ~/Library/LaunchAgents/List system LaunchAgent files
ls -la /Library/LaunchAgents/List system LaunchDaemon files
ls -la /Library/LaunchDaemons/Disable a specific launch agent
launchctl bootout gui/$(id -u) ~/Library/LaunchAgents/com.example.agent.plistRe-enable a launch agent
launchctl bootstrap gui/$(id -u) ~/Library/LaunchAgents/com.example.agent.plistBuilt-in vs Third-Party Startup Managers
| Feature | macOS Built-In | Third-Party Manager |
|---|---|---|
| Login Items management | ✅ System Settings | ✅ Usually same data |
| Background Items visibility | ✅ macOS Ventura+ | ✅ Also on older macOS |
| LaunchAgent management | ✅ Finder + Terminal | ✅ GUI with descriptions |
| Process descriptions | ❌ Just filenames | ✅ Human-readable names |
| One-click disable | ✅ Toggles in Settings | ✅ Toggle switches |
| Safe Mode | ✅ Built-in | ❌ Cannot replicate |
| NVRAM reset | ✅ Built-in | ❌ Cannot replicate |
| Cost | Free | $10–$30 |
macOS now provides excellent startup management tools, especially with the Ventura improvements. Third-party managers add value mainly for their human-readable descriptions of launch items and for managing LaunchAgents on older macOS versions without Terminal knowledge.