The processes permission grants access to chrome.processes, an API that exposes information about Chrome's internal processes. It is a restricted, Dev/Canary-channel-only API and is not exposed in Stable Chrome — most extension developers cannot use it in production.
What it does
- Grants access to the
chrome.processesAPI. - Lets an extension list all running Chrome processes (individual renderers per tab, the GPU process, extension service workers, the browser process, etc.).
- For each process, exposes the OS process ID, type, CPU usage, network usage, and memory metrics (private memory, JS heap size, etc.).
- Provides events for process lifecycle (
onCreated,onExited,onUnresponsive,onUpdated,onUpdatedWithMemory).
When to use it
Almost exclusively for in-house Chromium developer tooling. The cross-platform alternatives (chrome.system.cpu, chrome.system.memory) are far less granular but are publicly available.
Examples:
- A custom replacement for
chrome://task-manager(Shift+Esc). - A profiler that watches per-tab memory pressure.
Manifest Declaration
{
"name": "My Process Explorer",
"version": "1.0",
"manifest_version": 3,
"permissions": [
"processes"
]
}Note: chrome.processes is gated behind the --enable-experimental-extension-apis flag and is currently only exposed on Chrome Dev/Canary channels. A Stable-channel install of an extension that declares this permission will see chrome.processes as undefined.
Security & Privacy
Why is it low risk?
The data exposed is purely operational — process IDs, CPU/memory/network usage, and the type of each process. No page contents, URLs, cookies, or other personal data are returned. It's roughly equivalent to what the user can already see in the built-in Chrome Task Manager (Shift+Esc).
Combined with the fact that the API is restricted to Dev/Canary channels, this permission carries minimal real-world risk.
Extensions with the processes permission
Here are some popular browser extensions that use the "processes" permission. To explore more, try our Advanced search.