What Is UserEventAgent, and Why Is It Running on My Mac?

You’re looking through Activity Monitor when you notice a process you’re unfamilar with: UserEventAgent. Should you be worried? No: this is a core part of macOS.

This article is part of our ongoing series explaining various processes found in Activity Monitor, like kernel_task, hidd, mdsworker, installd, WindowServer, blued, launchd, backup, opendirectoryd, powerd, coreauthd, configd, mdnsresponder, and many others. Don’t know what those services are? Better start reading!

What Is UserEventAgent?

Today’s process, UserEventAgent, is a daemon, which means it runs in the background. UserEventAgent monitors various things about your system at the user level. To quote the man page for the process:

The UserEventAgent utility is a daemon that loads system-provided plugins to handle high-level system events which cannot be monitored directly by launchd.

That’s not terribly clear, so let’s break this down. Previously, we talked about the process configd, which runs in the background and monitors the status of various things about your Mac. For example, configd keeps track of whether you’re online or off, and alerts the other programs you use when that state changes. There are a collection of configd plugins that allow the process to do this.

UserEventAgent plays a similar role as configd, but monitors a set of things that configd cannot—mostly because configd is system-wide and run by root, while UserEventAgent is focused on your user account and runs at the user account level. You can make this more tangible by browsing the plugins UserEventAgent manages: they’re in /System/Library/UserEventPlugins.

In the UserEventPlugins folder, you’ll find plugins related to Bluetooth, the zero configuration networking tool Bonjour, time zones, Time Machine, and even the Touch Bar. UserEventAgent is monitoring the status of all these things and reporting that status to the applications you use.

This is a wide variety of functionality, meaning there are a lot of potential reasons for UserEventPlugins to start using up a great deal of system resources. We couldn’t begin to outline them all here.

There are a few basic things you can try should you notice a spike in resource use by UserEventPlugins, though. The first thing to try (no surprise) is restarting your Mac. It’s rudimentary, but will make most problems go away. If the problem persists, try disabling any hardware or software you added recently. If that stops the high resource usage, you’ve likely found a bug: stop using the software or hardware in question, and then see if there’s a software update that solves the issue.

Image credit: Fabian Irsara

Justin Pot is a staff writer for How-To Geek, and a technology enthusiast who lives in Hillsboro, Oregon. Follow him on Twitter and Facebook, if you want. You don't have to.