high

TimeoutError: page.goto: Timeout 30000ms exceeded

Navigation to the target URL did not complete within the timeout period. The page either failed to respond or took too long to reach the 'load' event.

Common Causes

  1. 1Server is down or unreachable
  2. 2DNS resolution failure
  3. 3SSL handshake timeout
  4. 4Page has a very large bundle that takes time to download
  5. 5Third-party scripts blocking the load event

How to Fix

Use waitUntil to control what 'loaded' means

await page.goto(url, { waitUntil: 'domcontentloaded' });

Instead of waiting for all resources to load, only wait for the HTML to be parsed. Much faster for pages with heavy assets.

Check if the server is reachable first

const response = await page.goto(url);
if (!response) throw new Error('No response received');
console.log('Status:', response.status());

Verify the response object exists and check the HTTP status code for debugging.

How ObserveOne Helps

ObserveOne monitors your application's availability 24/7, catching server and DNS issues before they break your tests.

Start Monitoring Free

Related Errors