> ## Documentation Index
> Fetch the complete documentation index at: https://docs.meteora.ag/llms.txt
> Use this file to discover all available pages before exploring further.

# What's Fee Time Scheduler?

<Info>Available on **DAMM v1**, **DAMM v2** and **DBC**</Info>

Fee time scheduler is a configurable fee decay over time.

Creators have the option to use a pool with a configurable fee schedule (time-based) where the base fee starts high and drops over time (linearly or exponentially). This is designed to deter sniper bots by imposing higher fees during the start of the launch and initial launch phase.

# How does it work?

Fee Time Scheduler requires the following parameters to be configured:

* **Cliff Fee Numerator**: The starting fee of the fee time scheduler.
* **Number Of Periods**: The number of time periods to reduce the fee by.
* **Period Frequency**: The frequency of the number of periods.
* **Fee Reduction Factor**: The amount of basis points to reduce the fee by.

With these parameters, the starting fee will be **Cliff Fee Numerator** and the fee will be reduced by **Fee Reduction Factor** for the total duration of **Number Of Periods** multiplied by **Period Frequency**.

The change in fee can be based on a **linear** or **exponential** fee curve.

# DAMM v1 Fee Time Scheduler

<Tip> In DAMM V1 max fees you can set is 50% and minimum is 0.25% </Tip>
DAMM v1 uses an off-chain fee time scheduler. For a DAMM v1 pool using the fee time scheduler, the default global fee schedule config used on the Meteora frontend is based on a **Linear** curve, with the following schedule:

<Steps>
  <Step title="15% - when pool trading starts">
    Initial fee rate when the pool begins trading
  </Step>

  <Step title="7% - 10 min after pool trading starts">
    10 minutes after the initial 15% rate begins
  </Step>

  <Step title="5% - 130 min after pool trading starts">
    120 minutes after the 7% rate starts
  </Step>

  <Step title="2% - 250 min after pool trading starts">
    120 minutes after the 5% rate starts
  </Step>

  <Step title="1% - 370 min after pool trading starts">
    120 minutes after the 2% rate starts
  </Step>

  <Step title="0.5% - 490 min after pool trading starts">
    120 minutes after the 1% rate starts
  </Step>

  <Step title="0.25% - 24 hours after pool trading starts">
    950 minutes after the 0.5% rate starts
  </Step>
</Steps>

# DAMM v2 Fee Time Scheduler

<Tip> In DAMM V2 max fees you can set is 99% and minimum is 0.01% </Tip>

DAMM v2 uses an on-chain fee time scheduler. For a DAMM v2 pool using the fee time scheduler, the default fee schedule config used on the Meteora frontend is based on an **Exponential** curve, 50% when pool trading starts, and dropping every second for 120 min, ending at 0.25%. DAMM v2 also offers creators and integrators the option of a Linear curve if required.

Read about how [Pump.Science](https://meteoraag.medium.com/damm-v2-case-study-pump-science-d18501c5ef4b) uses DAMM v2's Fee Time Scheduler for its token launchpad.

## Example of an Exponential Fee Time Scheduler

The exponential fee time scheduler reduces fees by a percentage of the current rate over time.

<Frame>
  <img src="https://mintcdn.com/meteora/gSl19wO31n1wt0qg/images/anti-sniper-suite/exponential-fee-scheduler.png?fit=max&auto=format&n=gSl19wO31n1wt0qg&q=85&s=2a0e421a13be5a465132b8c98838f487" width="768" height="330" data-path="images/anti-sniper-suite/exponential-fee-scheduler.png" />
</Frame>

<Steps>
  <Step title="50% - when pool trading starts">
    Initial fee rate when the pool begins trading
  </Step>

  <Step title="32.15% - 10 min after pool trading starts">
    10 minutes after the initial 50% rate begins
  </Step>

  <Step title="20.67% - 20 min after pool trading starts">
    10 minutes after the 32.15% rate starts
  </Step>

  <Step title="13.29% - 30 min after pool trading starts">
    10 minutes after the 20.67% rate starts
  </Step>

  <Step title="8.55% - 40 min after pool trading starts">
    10 minutes after the 13.29% rate starts
  </Step>

  <Step title="5.50% - 50 min after pool trading starts">
    10 minutes after the 8.55% rate starts
  </Step>

  <Step title="3.53% - 60 min after pool trading starts">
    10 minutes after the 5.50% rate starts
  </Step>

  <Step title="2.27% - 70 min after pool trading starts">
    10 minutes after the 3.53% rate starts
  </Step>

  <Step title="1.46% - 80 min after pool trading starts">
    10 minutes after the 2.27% rate starts
  </Step>

  <Step title="0.94% - 90 min after pool trading starts">
    10 minutes after the 1.46% rate starts
  </Step>

  <Step title="0.60% - 100 min after pool trading starts">
    10 minutes after the 0.94% rate starts
  </Step>

  <Step title="0.39% - 110 min after pool trading starts">
    10 minutes after the 0.60% rate starts
  </Step>

  <Step title="0.25% - 120 min after pool trading starts">
    10 minutes after the 0.39% rate starts
  </Step>
</Steps>

## Example of a Linear Fee Time Scheduler

<Frame>
  <img src="https://mintcdn.com/meteora/gSl19wO31n1wt0qg/images/anti-sniper-suite/linear-fee-scheduler.png?fit=max&auto=format&n=gSl19wO31n1wt0qg&q=85&s=e58adcc8507f1477fe8e3fd67bf26842" width="768" height="432" data-path="images/anti-sniper-suite/linear-fee-scheduler.png" />
</Frame>

Unlike the exponential fee time scheduler which reduces fees by a percentage of the current rate, a linear scheduler reduces fees by a constant rate at each time interval.

# DBC Fee Time Scheduler

<Tip> In DBC max fees you can set is 99% and minimum is 0.25% </Tip>

Partners (e.g. launchpads) that integrate DBC to create and launch tokens on their platform, can also configure a fee scheduler as part of the virtual bonding curve.

This way, even before the token is migrated to an actual liquidity pool, snipers that are the first to buy tokens on the virtual bonding curve are subjected to higher swap fees.

## First Swap with Minimum Fee

DBC supports an optional `enableFirstSwapWithMinFee` configuration that allows the pool creator to perform their first swap (buy) without anti-sniper fees. This is particularly useful when:

* Creating a pool and making an initial purchase in a single transaction
* The pool creator wants to acquire tokens at launch without paying elevated anti-sniper fees

When enabled, the first swap instruction in a transaction that includes pool creation will use the minimum base fee instead of the elevated anti-sniper fee. Subsequent swaps will be subject to the normal fee scheduler.

# Which Launch Pools supports Fee Time Scheduler?

Fee Time Scheduler is available as an option for DAMM v1 Launch Pools, DAMM v2 Launch Pools, as well as Dynamic Bonding Curve (DBC).

In addition, Fee Time Scheduler can be used together with Dynamic Fee to bolster the defence against sniper bots at launch.
