Certain applications start automatically when booting a computer running macOS, sometimes unwanted. There are several ways how to disable the startup after logging in. Since the default way via the User-Interface does not always work, I will show some advanced tricks based on my concrete problem with the Ivanti VPN client. The proposed solution is also applicable to other programs.

The Default Way

The easiest way is by clicking on the Apple icon in the upper left corner and visiting the System Settings. You can search for Login Items and see a list of applications under the Open at Login headline. Just remove the apps you don't want to start after logging in.

Example of the Login Items Page in System Settings
Example of the Login Items Page in System Settings

Alternatively, if the app is currently running, right-click on the icon and see if Options -> Open at Login is selected and de-select it.

Example of the Dock Context Menu to disable 'Open at Login'
Example of the Dock Context Menu to disable 'Open at Login'

If the application isn't listed or checked, just go and read on.

The Advanced Way

Many programs aren't listed in the official system settings but still start automatically. In my case, I was able to remove the VPN software Ivanti Secure Access Client from Autostart, which was not possible with the solutions above. I will show you how:

After searching a lot, I found good questions and answers at superuser on StackExchange (see reference list below). Besides the official UI, different locations in your System or Library folder contain startup information. Here are some of those locations:

# Home Folders

# Library Folders

# System Library Folders

Open Finder or a terminal, navigate to those locations (e.g., cd /Library/LaunchDaemons) and look for files containing the application name. You can also use find . -type f -name "*NAME*" (replace NAME with your search String) in the directories for searching in the terminal. After finding them, remove those files and restart your Mac to see if it worked (maybe backup them first to prevent unintended accidents).

In my case for the Ivanti VPN Client, I couldn't find any files. After digging a bit deeper, I found out that the relevant files start with net.pulsesecure. in their name. But after identifying and removing /Library/LaunchAgents/net.pulsesecure.pulseagent.plist, the application still started in a loop, and I couldn't kill it.

To solve the problem, I recreated the above-mentioned file and opened it with a text editor (sudo vi /Library/LaunchAgents/net.pulsesecure.pulseagent.plist). Nearly at the end, search for the <false/> after <key>Disabled</key> and change it to <true/>. Store the file (in vi editor with :wq + Enter) and now it shouldn't start after a reboot anymore.