# Failed to verify your browser Code 11 Vercel Security Checkpoint cloud agent

A Cursor agent stuck tab can remain on Vercel Security Checkpoint after you asked the agent to open a Vercel-hosted URL. The card starts with We're verifying your browser, then Failed to verify your browser and Code 11. The origin page is still not on screen.

That Chrome runs on a cloud machine, so the checkpoint saw a datacenter IP. Code 99 can appear on an adjacent Vercel checkpoint card. This page stays with Code 11.

## Name the Code 11 card before you change the exit

The card is labeled Vercel Security Checkpoint. We're verifying your browser is the first line. Failed to verify your browser and Code 11 follow on that same card. Other cloud Chrome sessions stop there too, not only a Cursor agent stuck tab.

Code 99 is an adjacent string on a different checkpoint card. Do not treat it as a second title here.

## When datacenter IP reputation is the checkpoint failure

A residential or mobile exit sometimes lets a Cursor or cloud agent past the checkpoint when the failure is datacenter IP reputation. It does not beat fingerprint, Linux Chrome, TLS, canvas, or BotID, and it is not a login bypass.

We built Aluvia as a local CLI and proxy daemon for the Chrome already on that host. Run `npx aluvia-cli setup` there with Node.js 18 or later and a usable Chrome or Chromium. A shell on another machine cannot configure it, and setup can restart Chrome. Country only. This is not a human VPN and not an MCP. After setup, `aluvia geos` lists countries and `aluvia proxy-on --geo US` is the usual next command when the job needs a US address. Substitute the country the job needs. [What setup changes](/setup). For the Cursor host itself, use [the Cursor cloud browser country page](/geo/cursor). If the card is a Cloudflare challenge instead, use [the Cloudflare challenge guide](/unblock/cloudflare).

## Start the 10 MB free trial

```sh
npx aluvia-cli setup
```

First 10 MB free. No account, API key or payment is required. Then 2 USD per GB. No target page URL is required. Follow the [quickstart](/docs) for result checks and undo.

## What the page says

Any of these is a string the page showed:

- "Vercel Security Checkpoint"
- "We're verifying your browser"
- "Failed to verify your browser"
- "Code 11"
- "Cursor agent stuck tab"

![We're verifying your browser. Vercel Security Checkpoint.](https://aluvia.io/unblock/vercel-security-checkpoint.png)

## Check the setup result

Read the JSON response before continuing. `ready: true` confirms the local browser/proxy path and upstream check, not access to the target site. If setup needs recovery, follow `next` first. If `aluvia` is not on PATH, use `npx aluvia-cli` in later commands.

## Choose a country if the task needs one

Successful setup already enables proxy traffic through the global pool. If the page requires a country, list current availability before selecting it.

```sh
aluvia geos
```

## Select the required country

For example, use `US` only if the site needs that country and it appears in `aluvia geos`. Otherwise substitute the required available country. Skip this step when the global pool fits the task. Sticky sessions last up to 30 minutes. Country selection does not change GPS, timezone or Accept-Language.

```sh
aluvia proxy-on --geo US
```

## Reload and verify the page

Reload the same target URL in the configured browser. Check the actual page content, regional catalog or error message. Then inspect status; a ready proxy is not proof that the page is accessible or the task succeeded.

```sh
aluvia status
```

## If it is still blocked

For an IP-related refusal, try one rotation and reload. If the result does not change, stop and record the error for the operator. For rate limits, wait and reduce requests instead.

```sh
aluvia rotate-ip
```

## When this is the wrong tool

If a username, password, SSO, or 2FA field is already waiting, stop. The checkpoint is Vercel checking the browser before the origin answers, not a sign-in form. Aluvia changes the exit IP on the same Chrome. It does not fill credentials or skip a login, and it is not CapSolver.

## Return to the original IP

After setup, switching IPs keeps Chrome running. Turn the proxy off when the task is finished or the IP change did not help.

```sh
aluvia proxy-off
```

## When the trial ends

If a command returns `payment_required`, show its actual `claim_url` to the operator. They choose whether to claim the account and buy data at 2 USD per GB. Then run `aluvia auth login` to wait and check the response before retrying. Never invent a claim link or reveal an API key. [Payment handoff](/e/payment_required).

## Related guide

[Identify a Cloudflare challenge](/unblock/cloudflare)

---

Source: https://aluvia.io/unblock/vercel-security-checkpoint
