> ## Documentation Index
> Fetch the complete documentation index at: https://checklyhq.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Playwright Check Suite Timeouts

> Configure and troubleshoot timeouts in Playwright Check Suites.

Playwright Check Suites have multiple timeout stages during execution.
Use this guide to configure your checks and troubleshoot timeout failures.

## Timeout overview

| Timeout stage                        | Default timeout           | Configurable          |
| ------------------------------------ | ------------------------- | --------------------- |
| Playwright `globalTimeout`           | Inherits from your config | Yes, up to 30 minutes |
| Dependency installation              | 5 minutes                 | No                    |
| Playwright test timeout              | Inherits from your config | Yes                   |
| Playwright navigation timeout        | Inherits from your config | Yes                   |
| Playwright action timeout            | Inherits from your config | Yes                   |
| Artifact upload and secret scrubbing | No timeout                | No                    |

## Playwright Check Suite execution stages

When Checkly runs your Playwright Check Suite, it goes through these stages:

### 1. Pre-processing

Checkly prepares your execution environment:

1. **Playwright and browsers**: Checkly loads the matching Playwright version and browser binaries
2. **Dependency cache download**: Checkly downloads the dependency cache if it exists
3. **Dependency installation**: If the dependency cache does not exist, Checkly runs the install command (default: `npm install`, `pnpm install`, or `yarn install`)
   * This stage has a **5-minute timeout**
   * Use `installCommand` in your [check suite configuration](/detect/synthetic-monitoring/playwright-checks/configuration#customize-install-and-test-commands) to run a custom dependency installation command. This can help prevent timeouts during installation. For example `installCommand: 'npm install --ignore-scripts'` to skip running postinstall and other lifecycle scripts

### 2. Test execution

Checkly runs your tests using `npx playwright test`:

* Your Playwright tests and configuration set the timeouts for this stage.
* To limit the whole Playwright suite, use Playwright's native [`globalTimeout`](https://playwright.dev/docs/api/class-testconfig#test-config-global-timeout) option. The timer starts when `npx playwright test` begins.
  * In `playwright.config.ts`, set `globalTimeout: 120_000`
  * In `testCommand`, use Playwright's [`--global-timeout`](https://playwright.dev/docs/test-cli#all-options) flag: `testCommand: 'npx playwright test --global-timeout=120000'`
  * If you set `globalTimeout` in both places, the `testCommand` flag takes precedence, matching Playwright's behavior

### 3. Post-processing

After tests complete, Checkly:

1. **Uploads artifacts**: Checkly uploads screenshots, videos, and traces
2. **Scrubs secrets**: Checkly removes secrets declared in your Checkly Environment Secrets from logs and artifacts
3. **Uploads the dependency cache after successful runs**: When a check run passes, Checkly uploads the dependency cache and creates a custom runtime. Future runs can use that runtime when they come from the same repository and use the same `package.json`, lock files, and workspace dependencies.

## Playwright-specific timeouts

Checkly runs your tests with the timeout configuration from your `playwright.config.ts` and test files. Configure test, navigation, and action timeouts according to your needs. See [Playwright's timeout documentation](https://playwright.dev/docs/test-timeouts) for detailed configuration options.

## Troubleshooting timeout-related errors

### Dependency installation timeout exceeded

```
Running <npm/yarn/pnpm install command>
Command timed out
Failed to run install command
```

**Cause**: Dependencies take longer than 5 minutes to install.

**Solutions**:

* Reduce dependencies in your `package.json`
* Remove large or unnecessary packages
* Check if your registry is slow or has issues
* Update and commit your lock file

See the [Custom dependencies troubleshooting guide](/detect/synthetic-monitoring/playwright-checks/custom-dependencies#troubleshooting) for more detailed solutions.

### Playwright global timeout exceeded

```
Timed out waiting 120000ms from config.globalTimeout.
```

**Cause**: The Playwright test suite exceeded the configured `globalTimeout` after `npx playwright test` started. Playwright skipped the remaining tests and Checkly reported the check as failed.

**Solution**:

* Increase `globalTimeout` in your Playwright config or `testCommand`.
* Split tests into multiple check suites using `pwTags`, `pwProjects`, or a custom `testCommand`.
* Use Playwright's per-test `timeout` option when only individual tests need more time.

### Playwright test timeout exceeded

```
Error: Test timeout of 30000ms exceeded
```

**Cause**: A single test exceeded the configured test timeout.

**Solution**: Increase the test timeout in your Playwright configuration or for specific tests. See [Playwright's test timeout documentation](https://playwright.dev/docs/test-timeouts#test-timeout) for configuration options.

### Playwright navigation timeout exceeded

```
Error: page.goto: Timeout 30000ms exceeded
```

**Cause**: A navigation action (like `page.goto()`) took longer than the navigation timeout.

**Solution**: Increase the navigation timeout in your Playwright configuration or for specific navigation actions. See [Playwright's timeout documentation](https://playwright.dev/docs/test-timeouts) for configuration options.

### Playwright action timeout exceeded

```
Error: locator.click: Timeout 10000ms exceeded
```

**Cause**: An action (click, fill, etc.) took longer than the configured action timeout.

**Solution**: Increase the action timeout in your Playwright configuration or for specific actions. See [Playwright's timeout documentation](https://playwright.dev/docs/test-timeouts) for configuration options.

## Related documentation

* [Playwright Check Suite configuration](/detect/synthetic-monitoring/playwright-checks/configuration)
* [Using custom dependencies](/detect/synthetic-monitoring/playwright-checks/custom-dependencies)
* [Splitting and organizing your tests](/detect/synthetic-monitoring/playwright-checks/test-organization)
