> AffiliateOS Help Center. Index of every article for AI tools: https://www.affiliateos.ai/help/llms.txt

# Users in states or regions an offer doesn't accept

Offer Links and click tracking · For publishers · Updated 30 October 2026
Web version: https://www.affiliateos.ai/help/links-and-tracking/excluded-states-and-regions

Filter before you show: send the user's `country` and, in the US, their `state` with your Offer API call, and offers that don't take them are left out. If a user taps one anyway, we refuse states an offer excludes at the tap with "This offer isn't available in your state", before the advertiser sees it.

## Countries

Each offer's `geoTargeting` says which countries it takes: all of them, only some or all but some. Send `country` (two letters, such as `US`) with your Offer API call and you get only offers that take that country. Offers with no country list match every country.

We don't refuse a tap for being outside an offer's countries. A user outside an offer's countries still reaches the advertiser, whose side may not credit the install. So filter first: send `country` on every call. On the Hosted Offerwall, launch with the user's country for the same reason.

## US states

Some offers turn away players from certain US states. For the offers where we enforce that list, two things happen:

1. **On your list.** For a US user, send `state` (one state, two letters, such as `TX`), and offers that turn that state away are left out.
2. **At the tap.** We place the tap in a US state from its internet address. If the offer turns that state away, the user sees "This offer isn't available in your state" and the tap never reaches the advertiser. This applies to your links and to Hosted Offerwall taps.

If we can't place a tap in a state, because it's outside the US or the lookup doesn't answer in time, the tap goes through as usual.

> **Not every state list is enforced.** We enforce an offer's state list where it matches what the advertiser accepts. On other offers, the states in `geoTargeting` are information only: we don't filter on them or refuse taps for them.

## Example

Example. Player `u_48213` opens Pebble Rewards on an iPhone in Texas at 2:06 PM. Pebble Rewards asks for offers with `country=US&state=TX&platform=iOS`.

| Offer | Its rule | Result |
|---|---|---|
| Harbor Blocks | Takes all of the US | Listed. The tap goes through. |
| An offer that turns Texas away | Enforced state list | Left out of the list. A tap from an old link shows "This offer isn't available in your state". |
| An offer that takes Canada only | Countries: CA | Left out of the list. |

## When your state and ours disagree

You send the state you know, from the user's profile or address. We decide at the tap from the internet address it comes from. A user on a VPN, or travelling, can pass your filter and still be refused at the tap, or the other way round. That's expected: the refusal protects the user from completing an offer that wouldn't pay.

## What to tell users

The page tells them to go back and pick another offer, and that's the right advice. Don't suggest a VPN or a different address to get around it. Our traffic checks look at addresses too, and a conversion from a state the offer turns away may not be paid.
