> For the complete documentation index, see [llms.txt](https://docs.camelot.exchange/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.camelot.exchange/protocol/incentive-system/campaign-creation.md).

# Campaign creation

### **Visit the Campaign Creation Page**

1. Go to the [**Camelot dApp**](https://app.camelot.exchange/)
2. Navigate to the **Ecosystem** section at the bottom of the page
3. Click on **Create a Campaign** to access the creation interface

<figure><img src="/files/LPHZ8bECorTbdn6e8Yxs" alt=""><figcaption></figcaption></figure>

### **Fill Out Campaign Details**

#### **1.  Select AMM mode**&#x20;

<figure><img src="/files/3RoVQlbuVbzLGwgaxvaL" alt=""><figcaption></figcaption></figure>

#### **2. Select Pool Address**

* **Enter or Select**: Manually input the pool address or choose one from the dropdown list provided

<figure><img src="/files/cXO0JzkP2S08lKysoh7D" alt=""><figcaption></figcaption></figure>

#### **3. Set Date Range**

* **Future Date Required**:
  * Start date must be at least 3 **hours in the future**
  * The end time will automatically align with the start time
* **Minimum Duration**: Campaigns must run for at least **24 hours**

<figure><img src="/files/lg4ES0NMDN2EVB2ZTslj" alt=""><figcaption></figcaption></figure>

#### **4. Specify Rewards Token and Amount**

* **Choose Token and Amount**:
  * Select the reward token from the dropdown\
    (If your desired reward token isn’t listed, [contact us](/contact-us.md) to have it whitelisted before creating your campaign)
  * Enter the reward amount, ensuring it meets the **minimum daily requirement**

<figure><img src="/files/H1TK7d9rjiCAQN9KOp2S" alt=""><figcaption></figcaption></figure>

{% hint style="warning" %}
if the minimum daily reward for coin X is 50 tokens and you set the daily reward to only 30 tokens, the campaign will not be validated. This rule ensures that all campaigns meet a baseline value, preventing spam or low-quality campaigns from flooding the platform and maintaining fairness for participants
{% endhint %}

#### **5. Apply Address Restrictions (Optional)**

* **Blacklist/Whitelist**:

  * Use **Blacklist Mode** to exclude specific addresses from rewards
  * Use **Whitelist Mode** to restrict rewards to specific addresses only

  <figure><img src="/files/TEyxdwVxZ0oLfzzzCDgp" alt=""><figcaption></figcaption></figure>

#### **6. Additional Options (Optional)**

* **Customize Fees and Tokens**:
  * Set weights for **Fees**, **TokenA**, and **TokenB** to determine how rewards are distributed:
    * **Fees**: Rewards are distributed based on fees generated by a position
    * **Token A**: distributed based on holdings of token A in a position
    * **Token B**: distributed based on holdings of token B in a position
* The sum of **Fees**, **Token A**, and **Token B** must always equal **100%**. No more, no less

<figure><img src="/files/cxfH64rAM3gyaRqbRPDQ" alt=""><figcaption></figcaption></figure>

{% hint style="info" %}
**Examples**:

1. **Fees = 100%**: Rewards are based entirely on fees generated. Token holdings have no impact
2. **Fees = 70%, TokenA = 10%, TokenB = 20%**:
   * 70% of rewards are based on fees generated
   * 10% of rewards are based on token A holdings
   * 20% of rewards are based on token B holdings
     {% endhint %}

### **Confirm and Submit**

1. **Review Inputs**:
   * Double-check all campaign details (pool, token, date range, restrictions, etc.)
2. **Confirm**:
   * Approve and confirm the transaction using your connected wallet to finalize the campaign

<figure><img src="/files/0tOvjeWx2W26ya8i8IcE" alt=""><figcaption></figcaption></figure>

<figure><img src="/files/FcMYXczpHfjmzlpbeeqv" alt="" width="128"><figcaption></figcaption></figure>

<figure><img src="/files/PJhsu8xNkViOa9W0ffSc" alt=""><figcaption></figcaption></figure>

{% hint style="warning" %}
Expect a short delay (up to several minutes) for new campaigns to appear on the interface
{% endhint %}

{% hint style="danger" %}
Campaigns must meet all minimum requirements (e.g., min duration 24h, reward thresholds) to be valid
{% endhint %}
