# Excluded IPs

Keep your team's traffic out of test results. Account-wide list of exact IPv4 or IPv6 addresses to mark as bot traffic.

Keep your team's traffic out of test results. Maintain an account-wide list of IPs (IPv4 or IPv6) whose visits are marked as bot traffic and excluded from variant assignment and reporting.

Your QA visits, your developers refreshing the staging build, your marketing team previewing copy in the office Wi-Fi — none of that is real conversion data, but all of it can quietly skew a test. Excluded IPs are the simplest way to keep that noise out of the numbers: add the IP, and Otter treats requests from it the same as a known bot — tracked in raw logs but excluded from results.

Exclusion is exact-IP only. There's no CIDR or subnet matching today, so you add one address at a time. For most teams that's fine — usually you only need the public IP of your office router. For more dynamic situations, see "What if my IP changes" in the FAQ below.

## Add an exclusion

1. **Find the IP you want to exclude.** Open a browser on the network you want to exclude and visit `whatismyip.com` (or any equivalent). Copy the address shown — IPv4 or IPv6 both work.
2. **Open Account → IP exclusions.** In Account Settings, switch to the **IP exclusions** tab. You'll see the existing list (if any) and a form to add a new one.
3. **Paste the IP and add a label.** Paste the IP address. Add an optional label like *Office Wi-Fi*, *VPN exit node*, or *Home network* so future-you knows what each entry is for. Click Add.
4. **Confirm in the list.** The new exclusion appears at the top of the list. Effective immediately — the next request from that IP is marked as bot traffic. Remove by clicking the trash icon next to the entry.

## How matching works

- **Exact string match only.** If you exclude `203.0.113.42`, the IP `203.0.113.43` is not excluded. CIDR ranges and subnets are not supported.
- **IPv4 and IPv6 both work.** Standard addresses in either format are accepted. IPv6 should be entered in standard form (e.g. `2001:db8::1`).
- **Account-wide.** Exclusions apply to every project in the account. There's no per-project IP list.
- **Not retroactive.** Adding an IP today excludes future visits only; historical data is unaffected.
- **Matches the visitor's public IP.** The SDK sees the public IP of the requesting browser — not internal LAN addresses. Exclude the public IP your office router presents, not the 192.168.* or 10.* internal addresses.

## Excluded IPs vs other ways to bypass tests

- **Excluded IPs** — persistent and automatic. Anyone on the network is excluded. Best for offices, VPNs, and known internal traffic sources.
- **`?optimo-optout`** — per-page-load, works from any IP. Best when you're on a network that isn't pre-excluded (coffee shop, hotel) and still want to bypass the SDK.
- **Impersonation sessions** — when a logged-in Otter teammate "becomes" a user for support purposes, that session is automatically excluded from results too. You don't need to do anything.

> **Exclusion hygiene**
>
> **Exclude the office router's public IP, not individual devices.** The SDK sees one public IP per network regardless of how many people are behind it, so one entry covers everyone in the office.
>
> **Label every entry.** A list of bare IP addresses is unreadable a year later. Label entries with the network they represent so future maintenance is easy.
>
> **Audit the list when your network changes.** Office moves, new VPN provider, ISP switch — all of these can change your public IP. Re-verify the list when the underlying network changes; stale entries do nothing useful.
>
> **Don't rely on exclusion for non-team traffic.** If you suspect bot traffic is leaking into results from elsewhere, that's a job for the built-in bot detection, not for IP exclusion. Reach out to support if results look skewed.

## Frequently asked questions

### What does excluding an IP actually do?

When the SDK or REST API receives a request from an excluded IP, Otter marks that visitor as a bot for the rest of the session. Bot visitors are still tracked in raw logs (so you can debug) but they're excluded from variant assignment, conversion counts, and the results page. Net effect: your team's traffic stops polluting the numbers.

### Where do I find the list?

Account Settings → IP exclusions. Owner and admin roles can add or remove entries; members and viewers see the list but can't modify it.

### How do I find my office or home IP?

Open a browser on the network you want to exclude and visit whatismyip.com (or any similar service). Copy the IPv4 or IPv6 address shown and paste it into the exclusion form. Add an optional label like 'Office Wi-Fi' or 'Home network' so future-you knows what each entry is for.

### Can I exclude a CIDR range or a subnet?

No — the exclusion list stores and matches exact IP strings. If your office uses 192.168.1.0/24, you'd need to enter each individual IP that actually shows up in your traffic. In practice most teams add the public-facing IP of their office router rather than every internal address, because the SDK sees the public IP.

### Are IPv6 addresses supported?

Yes. Both IPv4 and IPv6 addresses are accepted — just add them in their standard form (e.g. 2001:db8::1). The matcher is exact, just like IPv4.

### What if my IP changes (dynamic IP, mobile carrier, VPN)?

Then exclusion based on IP becomes brittle. Two better options: use the ?optimo-optout URL parameter to bypass the SDK on a per-page-load basis from any IP, or invite the people who shouldn't enter tests as Otter members — impersonation sessions are also automatically excluded from results.

### Will the exclusion apply retroactively to data already collected?

No. Exclusion is applied at request time. Adding an IP today stops new visits and conversions from that IP from counting going forward, but it doesn't retroactively remove anything that was already attributed.

### How is this different from ?optimo-optout?

?optimo-optout is per-page-load and works from any IP, but the visitor has to remember to use it. Excluded IPs are persistent and account-wide — anyone on that network is automatically excluded without having to do anything. Use both: exclude the office IP for general hygiene, and use ?optimo-optout when you're on a coffee-shop Wi-Fi and still want to bypass the SDK.

### Does excluding an IP affect bot detection?

It supplements it. Otter already detects known bots from the user-agent automatically. The exclusion list is for the bots automated detection can't see — your team. An excluded IP is treated the same as a known bot from the results' point of view.

### Is there a limit on how many IPs I can exclude?

No hard limit at the product level. The matcher is a database existence check on the IP string, which stays fast at typical org sizes (dozens to hundreds of IPs). If you need to exclude thousands of addresses, the request likely belongs in your firewall or proxy layer rather than the application.

---

Canonical page: https://www.otterab.com/docs/getting-started/excluded-ips
