Conversion rules (CTIT, hold, IP allowlist, postback and fraud rules)
Configure the checks that approve, hold, flag or reject conversions automatically, and the order they run in.
Last updated 6 min read
On this page
Conversion rules decide the status of every new conversion after its click, event and payout are known. They live in two places:
Changes reach the tracking engine within about 10 seconds. Rules apply to new conversions only; conversions already decided keep their status.
Order of evaluation#
- Status from the postback (
status=) or the offer's Default conversion status. click_blocked→outside_window→too_fast(the first that applies rejects).ip_not_allowed(S2S only).- Fraud rules (skipped when step 2 or 3 already rejected).
- Postback rules — only if the conversion is not rejected; the first matching rule by priority decides.
- Throttle — only if not rejected.
- Hold — only if the conversion is approved at this point.
- De-duplication and caps (Duplicates).
Minimum click-to-conversion time (CTIT)#
Conversions that arrive sooner after the click than the minimum are rejected with too_fast — typical of bots and
cookie stuffing.
- Open the offer → Conversion rules → Conversion controls.
- Enter Minimum click-to-conversion time (seconds) (0 = off, max 2,592,000 = 30 days).
- Click Save controls.
- Optional: under Minimum CTIT per event, set a different value per event (empty = inherit the offer's,
0= off for that event) and click Save on the row.
The CTIT distribution is on Reports → Conversion quality → Click-to-conversion time (buckets 0–15 s, 15–60 s, 1–10 min, 10–60 min, 1–24 h, 1–7 days, > 7 days). Conversions without a click are never too fast.
Hold period#
A hold keeps approved conversions pending (reason hold, shown as "On hold" to partners) for a number of
hours. When the hold ends, the worker (checking every minute) approves them, clears the reason and fires the
partner postbacks that fire on approval.
- Offer → Conversion rules → Hold period (hours) (0 = approve immediately, max 8,760).
- Per partner: Partner hold & throttle → Hold (hours) (empty = the offer's value) → Save.
Only conversions that would otherwise be approved are held. A held conversion can still be rejected by the advertiser or by you in the meantime; its money can still be changed by a reversal postback.
Postback IP allowlist#
Accept S2S postbacks for an offer only from the advertiser's servers.
- Open the advertiser → Postback security tab.
- Enter Allowed IPs and ranges: one IPv4/IPv6 address or CIDR range per line (for example
203.0.113.10,198.51.100.0/24), at most 100. Click Save postback security. - Open each offer → Conversion rules → turn on Accept S2S postbacks only from the advertiser's server IPs → Save controls. The switch is disabled until the advertiser has at least one address.
A postback from another address is still stored — as rejected ip_not_allowed — so you can see it, and it can
never change an existing conversion (conversion_id updates and migration forwards answer 403
postback IP not allowed for this offer). Pixels are not affected.
Partner throttle#
Partner hold & throttle → Throttle % moves that share of a partner's conversions on the offer to
pending with reason throttled. It is visible to your team, off by default, and must be disclosed in your
partner terms. Review throttled conversions in Reports → Conversions.
Attribution settings#
Settings → Conversion rules → Attribution, then Save attribution:
Postback rules#
Postback rules approve, reject or hold conversions whose data matches conditions — for example "reject test orders" or "hold sales above 500".
- Settings → Conversion rules → Postback rules (or the offer's Conversion rules tab) → add a rule.
- Name — shown as the status reason
rule:<name>(first 60 characters) of conversions it rejects or holds for review. - Applies to: Every conversion, One advertiser, One offer, One event of an offer or One partner (with an optional offer).
- Priority — lower runs first.
- Conditions, combined with All conditions must match or Any condition matches. A rule without conditions matches every conversion in scope.
- Action: Approve, Reject or Hold (pending) with Hold for (hours) (0 = pending until a reviewer decides).
- Optional Starts / Ends dates.
- Add rule.
Operators: equals, does not equal, contains, does not contain, greater than, less than,
between (two values, 10, 50), is empty, is not empty, is one of (US, CA, GB). Text comparisons
ignore case. A rule with an invalid condition never matches.
Fraud rules#
Fraud rules check the attributed click and the converting IP.
- Settings → Conversion rules → Fraud rules → add a rule.
- Name; optional Offer (empty = All offers) and Partner (empty = All partners).
- Checks (one or more):
- Action: Flag only (the conversion keeps its status; the hits are recorded) or Reject the conversion
(reason
fraud:<check>).
The converting IP is the click's IP; for a pixel without click data it is the browser's IP. S2S postbacks without a click have no converting IP. Results appear on Reports → Conversion quality → Fraud.