What are Helper (Renderer) processes on a Mac?

Helper (Renderer) processes are the separate pieces that apps built on Chromium, such as Google Chrome, Slack and Spotify, use to draw their pages and windows. Each one runs a tab or a part of the app’s screen. They belong to the app they are named after, they are safe, and together they make up that app’s real memory and processor use. If you see many of them, that is normal. What matters is finding the one that is heavy.

Seeing a long list of “Helper (Renderer)” can look like an infection. It is not. It is one app, split into parts on purpose.

Why one app becomes many processes

Chromium is the open-source browser engine behind Chrome and several other browsers. Many desktop apps also use it, because it lets a company build one app that looks the same everywhere. Slack, Spotify, Discord and Visual Studio Code are examples of apps that work this way.

Chromium splits its work into separate processes. The main process manages the app. Renderer processes draw and run the pages. Other helpers handle things like graphics and networking. The point is safety and stability: if one page crashes, it takes down only its own process, not the whole app.

So in Chrome, each tab, or group of tabs, usually gets its own renderer. In an app like Slack, each window usually has a renderer of its own. In each case the process name carries the app’s name, as in “Google Chrome Helper (Renderer)” or “Slack Helper (Renderer)”. Sometimes it is a shorter name: Visual Studio Code’s are called “Code Helper (Renderer)”.

Why they add up

Every renderer needs its own memory, because each one holds its own copy of a page, its scripts and its images. Ten tabs can mean ten renderers, and the memory is the sum of all of them. That is why a browser can use far more than you expect, and why the number you see on any single row is only part of the story.

The question then becomes: which of them is the heavy one? Usually it is one or two. A tab playing video, a page that is running a lot of script, an open web app such as a design tool or a large spreadsheet, or a tab that has gone wrong and is looping. The rest are light.

For the browser side of this, Why Chrome uses so much memory on a Mac goes into the memory part, and How to tell if one browser tab is slowing down your Mac is about finding the tab.

How to find the heavy one

In the app itself. Chrome has a task list of its own, in its Window menu, that shows every tab and extension with its memory and processor use, and lets you end one tab without closing the rest. This is the quickest route for Chrome. Other Chromium browsers have a similar item. Slack, Spotify and the like do not, which is where the next two options help.

In Terminal. This lists every renderer with its processor use and memory, busiest first, and changes nothing:

ps -axo pid,%cpu,rss,command | grep -- "--type=renderer" | grep -v grep | sort -k2 -nr | head

Chromium starts every renderer with --type=renderer, which is what the filter looks for. The columns are the process ID, processor percentage (ps counts each core as 100%) and memory in kilobytes, followed by the command. The top lines are your heavy ones. The command often shows which app they belong to. It will not tell you which tab, though.

In Foreman. The Processes page groups an app’s helper processes under the app and adds their figures together, so the row for Google Chrome shows the total for the browser as a whole, with its CPU, Memory, Disk, Network and GPU columns. CPU there is a share of the whole Mac, with the Mac’s total above the column. Open the row and the helpers appear beneath it, so you can see which one carries the weight. Click a column such as Memory to sort. Foreman is a $12 Task Manager for macOS, free for 24 hours. Reading Foreman’s Processes page: sections, helpers and totals goes through the layout.

What to do about a heavy renderer

End just that tab or window. In Chrome, use its own task list so the other tabs stay open. Once Foreman has shown you which app is heavy, End Task on that app asks it to quit the normal way, as Command-Q does, so it can offer to save your work.

Reload or restart the app. A page that has run away often behaves after a reload. For an app like Slack, quitting and opening it again clears all its renderers. Foreman’s Restart does that in one step and puts the app back behind Foreman, so you stay where you were.

Close what you are not using. The cheapest memory is the memory you never ask for. Close old tabs and windows, or use the browser’s own memory saver if it has one.

Slow down an app you need open but not right now. A chat app or music player sitting in the background does not need full speed. Foreman’s Efficiency Mode runs an app at background priority and holds it to about a quarter of the processor time it would take, in short bursts, while it is in the background. In front, or while it is playing sound, it runs at full speed. It is remembered for each app. The effect depends on how busy your Mac is, so treat it as a way to quiet things down, not a promise of a particular result.

Is it safe to end a renderer?

Ending a single renderer stops whatever it was showing, usually one tab or one window, and any unsaved work in it goes with it. In Chrome the tab stays open with an error page until you reload it; in other apps the window may go blank until you reload or restart the app. Other renderers, and the app, carry on. If it is the whole app you are ending, the same warning applies, so save first. Is it safe to force quit on a Mac? covers what you can lose.

When many renderers are a problem

A long list alone is not a problem. Look at the total and at the top few rows:

  • If the Mac is slow and one renderer is near the top for processor use, deal with that tab or window.
  • If the Mac is short of memory and the total for one app is large, close tabs or windows you no longer need.
  • If the same helper climbs again after you end it, the page or extension behind it is the cause, so close that page or turn that extension off.

The short version

Helper (Renderer) processes are the parts of Chrome, Slack, Spotify and other Chromium-based apps that draw their pages. They are safe, they belong to the app, and they add up. Find the one or two that are heavy, deal with only those, and leave the rest. If you want the totals and the breakdown in one place, Foreman groups them under the app.