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

# Choose events and what each one pays

Advertiser campaigns · For advertisers · Updated 30 October 2026
Web version: https://www.affiliateos.ai/help/campaigns/choose-events-and-prices

List each thing a user does that you'll pay for as an [event](https://www.affiliateos.ai/glossary#event), with a price per conversion. Each event is charged once per user, at its price, and only when a live event from your server matches a tap on your offer.

## Before you start

- A saved campaign: see [Create a product and a campaign](https://www.affiliateos.ai/help/campaigns/create-product-and-campaign).

## Steps

### Events you pay for, then Add an event

On the campaign page, under **Events you pay for**, fill in **Add an event**:

- **What the user did**: plain words, such as "Reached level 25". It becomes the step's name that publishers and their users see.
- **Event key (for your developer)**: fills itself from the name, as `reached_level_25`. Shorten it if you like, to `level_25`. Your server sends this exact key. It's fixed once you choose **Add event**: to change it before approval, delete the event and add it again.
- **Name in your attribution tool (optional)**: only if a tool such as AppsFlyer or Adjust already names this event, for example `af_purchase`.
- **Payout per conversion (USD)**: what you pay each time, $0.01 or more.

Choose **Add event**. Repeat for each event.

### Put the events in order

Drag an event, or use its arrows, then choose **Save order**. This is the order publishers see, so put them in the order a user reaches them.

### Websites: choose the primary result

A website campaign needs a **Primary result**: one once-per-user event, such as a sign-up, that its reports count as results.

### Check it worked

Each event shows its key and price, and starts as **Awaiting test**. Send a free test for each one, and it turns **Verified**: [Send test events without being charged](https://www.affiliateos.ai/help/campaigns/send-test-events).

Example, for Tidewater Putt by Tidewater Games:

| What the user did | Event key | Price |
|---|---|---|
| Finished chapter 1 | `chapter_1` | $0.60 |
| Reached level 25 | `level_25` | $1.50 |
| Bought the starter pack | `starter_pack_purchase` | $4.00 |

## What a price means

You pay an event's price when your server sends it as a live event, with a click ID that matches a tap, and we accept it as `approved`. The money comes off your balance at that moment.

- **Once per user.** Each event you add here is paid once per user. A second one for the same user comes back as `duplicate` and isn't charged.
- **Purchases and deposits.** An event whose key contains `purchase` or `deposit` needs a `transactionId` on every live event, so the same order can't be charged twice.
- **Never charged:** test events, events with no click ID, retries of an event we already have and events with a timestamp more than 48 hours away from when we receive them.

> **You pay the price you set, from a prepaid balance.** Each accepted live event is drawn from your balance at that event's price. When the balance can't cover an event, it's not charged and your live campaigns pause. [How spend is drawn](https://www.affiliateos.ai/help/payouts/advertiser-funds-and-spend)

## Pay a percent of each sale

Retail and other brands that pay a percent of each purchase or sale can run here too. The campaign page prices events in dollars, so [tell us what you pay](https://www.affiliateos.ai/contact?role=advertiser) and our team sets the campaign up with you.

Whichever way you pay, publishers choose what they run. An offer that doesn't let them make money won't get traffic.

## Change events later

| Campaign status | What you can change |
|---|---|
| **Setting up**, or sent back for changes | Anything: add, edit, reorder and delete events |
| **In review** | Nothing until we decide |
| **Live** | A new price applies at once. A new name or attribution name is saved as a pending change: choose **Submit changes for review** at the top of the campaign page, and the campaign keeps running as it was until we approve it. Only prices can change while that review is open. You can't add, delete or reorder events. |
| **Paused**, after approval | Nothing, prices included. Resume the campaign first. |

Editing an event keeps its **Verified** status, so you don't need to test it again.
