# Ad blockers are blocking Croct requests, how do I keep evaluation working?

Asked by valserra on 2025-01-30. Tags: dx, ad-blockers, proxying.

Seeing this in devtools with uBlock enabled:

```
api.croct.io/client/web/evaluate  net::ERR_BLOCKED_BY_CLIENT
api.croct.io/client/web/track     net::ERR_BLOCKED_BY_CLIENT
```

Looks like an EasyList rule. How are people routing around this, is there a
supported setup or does everyone just accept losing those users

## 1 answer

### Answer from Jonas Weber (2025-01-30)

EasyList and EasyPrivacy block `/client/web/evaluate`, `/client/web/track`,
and `/content` when they are called on the vendor domain, so what you are
seeing is expected with uBlock defaults.

The supported remedy is first-party proxying. The plug accepts
`baseEndpointUrl` and `cidAssignerEndpointUrl` options, so you point
both at your own domain and proxy the requests server-side to Croct.
Filter lists match the vendor host, not your origin, so the requests go
through.

Also worth knowing: if you fetch content server-side with `fetchContent`,
ad blockers are irrelevant for that path entirely, since the requests
originate from your server and never touch the browser.

Do not just accept losing those users, by the way. It is not only lost
personalization: blocked users silently drop out of experiments, which
skews your traffic and can bias results toward the demographic that does
not run blockers.

#### Reply from valserra (2025-01-31)

Set up the proxy behind /api/croct on our domain, requests pass with
uBlock on now. Good point on the experiment skew, had not considered
that.
