How to remove login items and launch agents on a Mac
Last updated
A Mac that takes ages to settle after login, or a mystery icon in the menu bar, usually means too many things start automatically. macOS has two kinds: login items you can see in System Settings, and launch agents and daemons that run quietly in the background. Here's how to find and remove both.
Step 1: System Settings › Login Items
Open System Settings › General › Login Items & Extensions (just Login Items on macOS 13 Ventura and 14 Sonoma). There are two lists:
- Open at Login: apps that open when you log in. Select one and click the − button to remove it. The app itself stays installed.
- Allow in the Background: helpers and services registered by apps, often by developer name. Switch one off to stop it running. Click ⓘ to see the files behind an item.
Many apps also have their own "Open at login" or "Launch at startup" setting. If you remove an item and it reappears, switch that setting off in the app.
Step 2: look in the LaunchAgents and LaunchDaemons folders
Background services are defined by small .plist files in these folders. Open each with Go › Go to Folder… (⇧⌘G):
~/Library/LaunchAgents: agents for your account only. No admin password needed./Library/LaunchAgents: agents for every user./Library/LaunchDaemons: system‑wide services, usually running as root.
Leave /System/Library/LaunchAgents and /System/Library/LaunchDaemons alone; they belong to macOS and are protected anyway.
The file name is usually the service's label, for example com.google.keystone.agent.plist for Google's updater. Quick Look (Space) shows what's inside: ProgramArguments is what runs, RunAtLoad means it starts at login or boot, and KeepAlive means macOS restarts it if it stops.
Step 3: see what's running
In Terminal, list the services loaded for your user, minus Apple's own:
launchctl list | grep -v com.apple
The first column is the process ID (a dash means not running right now), the second is the last exit status, the third is the label. To see everything macOS's Background Task Management knows about, including items registered by apps:
sudo sfltool dumpbtm
Step 4: stop and remove a launch agent
First unload it, so it stops now and doesn't restart:
# an agent in your own LaunchAgents folder
launchctl bootout gui/$(id -u) ~/Library/LaunchAgents/com.example.agent.plist
# a system-wide daemon
sudo launchctl bootout system /Library/LaunchDaemons/com.example.daemon.plist
Then move the .plist to the Trash. If the plist points to a helper program that belonged to an app you've already deleted (often in /Library/PrivilegedHelperTools or ~/Library/Application Support), remove that too.
Disable before you delete if you're unsure. launchctl disable gui/$(id -u)/com.example.agent stops a service from loading without deleting anything; launchctl enable undoes it. And never remove items named com.apple.*.
Which items are worth removing?
- Leftovers of apps you deleted. If
ProgramArgumentspoints to a file that no longer exists, the agent fails silently at every login. Safe to remove. - Updaters (Google, Microsoft, Adobe and others). Removing them stops automatic updates; the app may reinstall them when you next open it.
- Menu bar helpers and sync tools you don't use.
- Anything you don't recognise. Search the label. Malware and adware often use launch agents with names made to look like Apple's (
com.apple.lookalikes), random strings, or programs in hidden or temporary folders.
If you're removing an app completely, also see How to completely uninstall apps on a Mac.
Doing it with Glint
Glint's Startup Items page lists launch agents and daemons from all three folders, grouped as your agents, agents for all users and system services, with tags for items that run at login or are kept alive. For agents in your own folder you can click Remove: Glint stops the service and moves its plist to Quarantine, so if something breaks you can restore it and it runs again at your next login. System‑wide items need an admin password to remove, so Glint shows them for reference only. A button opens macOS's Login Items settings for the rest. Glint's Security Scan separately flags suspicious background services, such as ones with fake Apple names, in hidden or temporary folders, or unsigned.
FAQ
What is the difference between a launch agent and a launch daemon?
A launch agent runs on behalf of a logged-in user and can show things on screen. A launch daemon runs as a system service, usually as root, whether or not anyone is logged in. Agents live in LaunchAgents folders, daemons in /Library/LaunchDaemons.
Is it safe to remove launch agents?
Removing a third-party agent stops that helper from running; at worst a feature of its app, such as automatic updates or a menu bar icon, stops working. Never remove anything named com.apple.* or anything in /System/Library.
Why does a removed login item come back?
The app re-adds it when it starts, usually because of a “launch at login” or “start helper” option in its settings. Turn that option off in the app, or uninstall the app.
Glint is a free disk cleaner for macOS 14 Sonoma and later, on Apple Silicon and Intel. No limits, no account, and everything stays on your Mac.