# Browser Automation Mode

> Overview of the browser automation methods available in UiPath — Browser Extension, WebDriver, and Chromium Automation — and how to choose between them.

# Browser Automation Mode

UiPath supports multiple methods for automating browsers, each suited to different deployment environments and browser targets. The **Browser Automation Mode** setting lets you choose which method to use — either for a specific workflow scope via the **Use Application/Browser** activity, or as a project-wide default in **UI Automation Modern Project Settings > Application/Browser**.

## Automation methods

UiPath provides three underlying automation methods, exposed as five modes:

**Browser Extension** injects the UiPath extension into the browser to interact with web pages directly. It requires the extension to be installed, but provides the richest automation coverage and is compatible with all four major supported browsers: Chrome, Edge, Firefox, Safari.

**WebDriver** uses the W3C WebDriver protocol to open and control a dedicated browser session via a browser-specific driver binary (`chromedriver`, `msedgedriver`, `geckodriver`). It works without the UiPath extension and supports all four major browsers. A headless variant runs the browser without a visible window.

**Chromium Automation** uses the Chrome DevTools Protocol (CDP) to control Chromium-based browsers directly, with no extension or driver download required. It is the simplest to configure on Chrome and Edge. A headless variant is also available.

## Available modes

### Browser Extension

Uses the UiPath browser extension to automate the target browser. The extension injects scripts into web pages to interact with the page and reports element information back to the Robot.

- **Requires**: UiPath browser extension installed and enabled in the target browser profile
- **Supported browsers**: Chrome, Edge, Firefox, Safari
- **Browser window**: Visible

This is the default mode. Choose it for standard attended or unattended automation where the browser runs on the same machine as the Robot and extension installation is possible.

:::note
To automate pages in Incognito (private) mode, open **chrome://extensions**, locate the UiPath extension, and enable **Allow in Incognito** and **Allow access to file URLs**.
:::

### WebDriver with GUI

Opens a new, visible browser session controlled by the W3C WebDriver protocol. UiPath communicates with the browser via a browser-specific WebDriver server.

- **Requires**: WebDriver binary compatible with the installed browser version
- **Supported browsers**: Chrome, Edge, Firefox
- **Browser window**: Visible

:::note
WebDriver creates a new `user-data-dir` for each session and cannot connect to a browser instance already open on the user's desktop. This makes WebDriver unsuitable for attended automation. For unattended automation this is not a limitation.
:::

### WebDriver Headless

Same as WebDriver with GUI, but the browser runs without a visible window.

- **Requires**: WebDriver binary compatible with the installed browser version
- **Supported browsers**: Chrome, Edge, Firefox
- **Browser window**: None (headless)

:::note
Some operations that require a visible window — such as native drag-and-drop or hardware mouse simulation — are not supported in headless mode.

Like WebDriver with GUI, this mode creates a new `user-data-dir` and cannot connect to an already-open browser. A compatible WebDriver binary must be downloaded at runtime. Incognito mode is supported without additional configuration.
:::

### Chromium Automation

Uses the Chrome DevTools Protocol (CDP) to control the browser directly. No extension installation or WebDriver binary is required — UiPath launches and manages the browser session internally.

- **Requires**: Browser process launched with the `--remote-debugging-port=0` flag
- **Supported browsers**: Chrome, Edge, and all Chromium-based browsers
- **Browser window**: Visible

Choose this mode for the simplest setup on Chrome or Edge. It does not support Firefox or Safari.

:::note
Chromium Automation creates a new `user-data-dir` for each session and cannot connect to a browser instance already open on the user's desktop. This makes it unsuitable for attended automation. For unattended automation this is not a limitation.

Incognito mode is supported without additional configuration.
:::

### Chromium Automation Headless

Same as Chromium Automation, but the browser runs without a visible window.

- **Requires**: Browser process launched with the `--remote-debugging-port=0` flag
- **Supported browsers**: Chrome, Edge, and all Chromium-based browsers
- **Browser window**: None (headless)

This mode combines zero-configuration setup with headless execution, making it well suited for unattended automation on servers or CI/CD pipelines.

:::note
Like Chromium Automation, this mode creates a new `user-data-dir` and is blocked when the `DeveloperToolsAvailability` Group Policy is set to `2`. Incognito mode is supported without additional configuration.
:::

## Comparison

### Setup requirements

What each mode depends on before it can run.

| Mode | Extension required | WebDriver required | Headless | Additional setup |
|------|:-----------------:|:-----------------:|:--------:|-----------------|
| Browser Extension | ✅ | ❌ | ❌ | Install UiPath extension |
| WebDriver with GUI | ❌ | ✅ | ❌ | Download WebDriver binary |
| WebDriver Headless | ❌ | ✅ | ✅ | Download WebDriver binary |
| Chromium Automation | ❌ | ❌ | ❌ | Launch browser with the `--remote-debugging-port=0` flag |
| Chromium Automation Headless | ❌ | ❌ | ✅ | Launch browser with the `--remote-debugging-port=0` flag |

### Capabilities

What each mode supports once it is running.

| Mode | Attended automation | Incognito (no config) | Supported browsers |
|------|:------------------:|:--------------------:|-------------------|
| Browser Extension | ✅ | ❌ | Chrome, Edge, Firefox, Safari |
| WebDriver with GUI | ❌ | ✅ | Chrome, Edge, Firefox |
| WebDriver Headless | ❌ | ✅ | Chrome, Edge, Firefox |
| Chromium Automation | ❌ | ✅ | Chrome, Edge, Chromium-based |
| Chromium Automation Headless | ❌ | ✅ | Chrome, Edge, Chromium-based |

## Choosing a mode

| Scenario | Recommended mode |
|----------|-----------------|
| Standard desktop automation, extension can be installed | Browser Extension |
| Attended automation (work with the user's already-open browser) | Browser Extension |
| Extension cannot be installed, browser must be visible | WebDriver with GUI |
| Extension cannot be installed, no display available | WebDriver Headless |
| Chrome or Edge, simplest possible setup | Chromium Automation |
| Unattended or server automation on Chrome/Edge, no display | Chromium Automation Headless |
| Firefox or Safari without extension | WebDriver with GUI or WebDriver Headless |
| `DeveloperToolsAvailability` Group Policy restricts Developer Tools | Browser Extension or WebDriver |

## Configure the mode

### For a specific activity

1. Add a **Use Application/Browser** activity to your workflow.
2. In the **Properties** panel, locate **Browser automation mode**.
3. Select the desired mode from the dropdown.

![Browser automation mode dropdown on the Use Application/Browser activity card](https://dev-assets.cms.uipath.com/assets/images/activities/browser-automation-mode-n-app-card-fc550fb9.webp)

**Result:** The selected mode applies to every UI Automation activity scoped to this **Use Application/Browser** container.

### As a project default

1. Open **Project Settings** from the gear icon in the **Project** panel.
2. Go to **UI Automation Modern > Application/Browser**.
3. Set **Browser automation mode** to your preferred default.
4. Select **Save**.

![Browser automation mode setting in UI Automation Modern project settings](https://dev-assets.cms.uipath.com/assets/images/activities/browser-automation-mode-project-settings-42d67c7d.webp)

**Result:** New **Use Application/Browser** activities added to the project use the selected mode unless overridden on a specific activity.

The activity-level setting takes precedence over the project default within its scope.

:::important
The **Browser automation mode** property for the **Use Application/Browser** activity and the project setting in **UI Automation Modern > Application/Browser** are available only in preview versions starting with **UIAutomation v26.4.0-preview**.
:::

## Limitations

- **Chromium Automation modes** only support Chromium-based browsers. Using them with Firefox or Safari returns an error; no automatic fallback occurs.
- **Headless modes** do not support operations that depend on a visible window or OS-level rendering, such as hardware mouse drag-and-drop or certain screenshot operations.
- **WebDriver** and **Chromium Automation** create a new `user-data-dir` for each session. They cannot connect to a browser already open on the user's desktop, making them unsuitable for attended automation. This is not a limitation for unattended automation.
- **WebDriver** and **Chromium Automation** sessions use an isolated browser profile. Extensions, saved passwords, and user session cookies from the default browser profile are unavailable.
- **WebDriver** requires a browser-specific binary (`chromedriver`, `msedgedriver`, or `geckodriver`) to be downloaded at runtime and kept compatible with the installed browser version. **Browser Extension** and **Chromium Automation** have no such external binary dependency.
- **Chromium Automation** is blocked when the [DeveloperToolsAvailability](https://chromeenterprise.google/policies/#DeveloperToolsAvailability) Group Policy is set to `2` (Disallow usage of the Developer Tools). Use Browser Extension or WebDriver in environments where this policy is enforced.
- **Browser Extension** requires additional manual setup to automate pages in Incognito mode: the user must open **chrome://extensions**, locate the UiPath extension, and enable **Allow in Incognito** and **Allow access to file URLs**. **WebDriver** and **Chromium Automation** support Incognito mode without any additional configuration.
