Glossary/Processes you will see
nsurlsessiond
Also: background downloads
Quick answer
nsurlsessiond is the macOS process that downloads and uploads files in the background on behalf of apps and the system. When an app hands a transfer to macOS so it can continue after the app closes, nsurlsessiond does the work, which is why it can show heavy network use without an app open.
The name comes from NSURLSession, the part of macOS that apps use to make network requests. A background session is a transfer the app asks the system to run for it. iCloud, the App Store, software updates, Music, Podcasts and many third-party apps use it, so nsurlsessiond shows the combined traffic of whoever is downloading.
That is also why it is hard to read: nsurlsessiond can sit at the top of Activity Monitor's Network tab, and nothing there says which app asked for the download.
Why nsurlsessiond is using so much network
Something large is transferring: a macOS or app update, an iCloud Photos upload, a podcast back catalog, or an app syncing its data. The traffic belongs to that app, and nsurlsessiond is carrying it.
To see where it is connecting, run nettop -p nsurlsessiond in Terminal. The remote addresses usually make the source obvious: Apple's content servers for updates and iCloud, or a third-party app's own domain.
How to stop it
Stop the transfer at its source: pause the App Store download, check System Settings → General → Software Update, pause iCloud Photos in the Photos settings, or turn off automatic downloads in the app that asked for them.
Quitting nsurlsessiond in Activity Monitor does not help for long. macOS starts it again and the transfers resume, because the apps still want them.
How to see what nsurlsessiond is downloading
There are two nsurlsessiond processes, and which one is busy tells you where to look.
- Open Activity Monitor, choose View → All Processes, click the Network tab and type
nsurlin the search field. - Look at the User column. The instance under the _nsurlsessiond account carries downloads for macOS itself, such as software updates. The one under your name carries downloads for your apps and iCloud.
- Watch the Rcvd Bytes and Sent Bytes columns. Rcvd Bytes growing means a download, and Sent Bytes growing means an upload, such as photos going to iCloud.
- If the system instance is the busy one, open Terminal and run
softwareupdate --listto see whether a macOS update is on offer. You can also check System Settings → General → Software Update. - If your own instance is busy, think about which apps download in the background: the App Store, Music, Podcasts, Photos and cloud storage apps are the usual ones. Pause them one at a time and see whether the traffic stops.
Normal nsurlsessiond use vs a problem
Normal: heavy traffic for a while, then nothing. An update or an upload has a size, and once it has moved, nsurlsessiond goes quiet.
Worth looking into: it moves data for days, or the same amount of data again and again. The usual causes:
- A download that fails near the end and starts over, often a large update on an unstable connection.
- iCloud Photos uploading a large library for the first time, which can take days on a slow upload link.
- Podcasts set to download every episode of many shows.
- An app that syncs a large folder in the background and never quite catches up.
- A slow network, which turns a short download into one that runs all day.
How to limit background downloads on a hotspot
On an iPhone hotspot or any network with a data cap, turn on Low Data Mode for that network: open System Settings → Wi-Fi, click Details next to the network, and turn on Low Data Mode. Apple describes it as a way to reduce your data use over that network. Features that respect it hold back their automatic transfers there, iCloud Photos syncing among them.
The setting belongs to that one network, so your home Wi-Fi keeps downloading as usual.
Questions people ask
What is nsurlsessiond on Mac?
The macOS process that runs background downloads and uploads for apps and the system, such as updates, iCloud and podcasts. Its network use is the total of every background transfer.
Why is nsurlsessiond using so much data?
An app or macOS itself is downloading something large in the background, often a software update or an iCloud sync. `nettop -p nsurlsessiond` in Terminal shows where it is connecting.
Can I disable nsurlsessiond?
No, and quitting it only pauses transfers until macOS restarts it. Turn off the automatic downloads you do not want, in the app or in System Settings, instead.
Is nsurlsessiond safe?
Yes. It is part of macOS and lives at /usr/libexec/nsurlsessiond, on the sealed part of the disk that only Apple's updates can change. It only moves data that an app or macOS asked it to move.
Why are there two nsurlsessiond processes?
One runs as the _nsurlsessiond system account for macOS's own downloads, and one runs as you for your apps. The User column in Activity Monitor shows which is which.
Related
Looking for something better than Activity Monitor? See the best Activity Monitor alternatives for Mac, or browse every term in the glossary.