Whitelisting & filtering traffic

Whitelisting Checkly traffic in your firewall or load balancer by IP address is not possible at this moment as Checkly uses a non-static set of IP addresses in the cloud to run its checks.

This is a feature we want to implement so expect changes on this topic in the future.

You can however fetch a list of the dynamic IP addresses in use at AWS, our cloud provider.

Filtering Google Analytics

If you want to filter Checkly traffic in Google Analytics because Checkly browser checks are skewing your numbers, here is one way how to do it:

  1. Ad a UTM source tag to the URL's your requesting, i.e.
await page.goto('https://app.checklyhq.com/login?utm_source=monitoring')
  1. In Google Analytics, filter on campaign source.

filter google analytics traffic on campaign source

For detailed instructions, see the Google Analytics docs on custom filters.

Note, it will take some hours for this to take effect.

Cloudflare Whitelisting

If you are using Cloudflare, one or more of your automated checks might trigger its bot detection mechanism.

If you want to prevent that from happening, without exposing your website to any and all automated traffic, you might want to set up a new firewall rule allowing traffic from Checkly as long as it contains a specific header or sets a certain user agent.

You can make the header and/or user agent specific to your own Checkly user account by grabbing the first eight digits of your unique user ID, which you can find below your account name on the Account Settings page. Embedding this value in your checks will enable them to be allowed through by your firewall rules.

Whitelisting API checks

To whitelist API checks, allow traffic that contains a cookie in the shape of Cookie: "checkly-account:<UUID>", with <UUID> being your shortened Checkly ID.

You can then set the Cookie header while editing your check.

Whitelisting browser checks

To whitelist browser checks, allow traffic with user agent containing Checkly/<UUID>, with <UUID> being your shortened Checkly ID.

You will then be able to set up the matching user agent in your browser checks using Puppeteer's setUserAgent method, e.g.: await page.setUserAgent('Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Safari/537.36 Checkly/abcd1234');