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

# Fee Structure

> Complete breakdown of creator economics and platform fees

## Overview

RektHub's fee model aligns incentives between creators, communities, and the platform. No hidden charges, no surprise deductions, everything is transparent and on-chain.

<CardGroup cols={3}>
  <Card title="Trading Fees" icon="chart-line">
    1% on all buys and sells
  </Card>

  <Card title="Creation Fees" icon="rocket">
    One-time fee to launch
  </Card>

  <Card title="Migration Fees" icon="graduation-cap">
    12% when graduating to DEX
  </Card>
</CardGroup>

***

## Trading Fees (1% Total)

Every buy and sell on RektHub incurs a **1% fee**. This fee is split between creator and platform.

### Creator Share: 30%

As a creator, you earn **30% of every trading fee** on your token. These fees accumulate in your bonding curve contract and can be claimed anytime.

<Tabs>
  <Tab title="How It Works">
    ```javascript theme={null}
    // User buys $1,000 worth of your token
    const tradeAmount = 1000;
    const totalFee = tradeAmount * 0.01;  // $10

    // Fee split
    const yourShare = totalFee * 0.30;      // $3 (30%)
    const platformShare = totalFee * 0.70;  // $7 (70%)

    // Your $3 accumulates in curve
    accumulatedCreatorFees += yourShare;
    ```
  </Tab>

  <Tab title="Claim Anytime">
    Fees don't transfer immediately, they accumulate to save gas. Call `claimCreatorFees()` whenever you want to withdraw.

    ```javascript theme={null}
    // Check accumulated fees
    const [creator, fees] = await curve.getCreatorInfo();
    console.log(`Claimable: ${ethers.formatEther(fees)} ETH`);

    // Claim when ready
    await curve.claimCreatorFees();
    ```

    **No limits:** Claim once, claim daily, claim after bonding, it's your choice. No waiting periods, no restrictions.
  </Tab>
</Tabs>

### Platform Share: 70%

The platform takes **70% of trading fees** to sustain infrastructure:

<AccordionGroup>
  <Accordion title="Cross-Chain Infrastructure" icon="globe">
    * Intent-based routing via Khalani Network
    * Multi-chain settlement costs
    * Gas subsidies for certain operations
  </Accordion>

  <Accordion title="Security & Audits" icon="shield-check">
    * Smart contract audits
    * Bug bounty programs
    * Continuous security monitoring
  </Accordion>

  <Accordion title="Platform Development" icon="code">
    * Front-end hosting and APIs
    * Real-time activity feeds
    * Pretty much everything the platform would need for sustenance
  </Accordion>

  <Accordion title="Future Features" icon="wand">
    * Enhanced creator tools
    * Advanced analytics
    * x402 features (coming soon)
  </Accordion>
</AccordionGroup>

<Info>
  **Sustainability model:** We don't have a platform token to dump on users.
  Trading fees fund everything. Aligned incentives, we only succeed when you
  succeed.
</Info>

***

## Creation Fees

Launching a token costs a **one-time creation fee**. This fee is calibrated per chain to maintain similar USD-equivalent pricing across networks while accounting for different token economics.

### Fee Structure by Chain

<Tabs>
  <Tab title="ETH-Based Chains">
    **Mainnet chains using ETH as native token:**

    | Chain    | Creation Fee |
    | -------- | ------------ |
    | Ethereum | 0.005 ETH    |
    | Base     | 0.005 ETH    |
    | Arbitrum | 0.005 ETH    |
    | Optimism | 0.005 ETH    |
    | Zircuit  | 0.005 ETH    |
    | Lisk     | 0.005 ETH    |
    | Scroll   | 0.005 ETH    |

    All ETH-based chains share identical parameters for consistent pricing dynamics.
  </Tab>

  <Tab title="Alternative Native Tokens">
    **Mainnet chains with different native tokens:**

    | Chain     | Native Token | Creation Fee |
    | --------- | ------------ | ------------ |
    | Polygon   | MATIC        | 90 MATIC     |
    | BNB Chain | BNB          | 0.0158 BNB   |
    | Monad     | MON          | 556 MON      |
    | Avalanche | AVAX         | 1 AVAX       |

    Fees are calibrated to maintain similar USD-equivalent costs across all chains.
  </Tab>

  <Tab title="Testnets">
    **Testnet fees (10x lower for development):**

    | Network          | Native Token | Creation Fee |
    | ---------------- | ------------ | ------------ |
    | Sepolia          | ETH          | 0.0005 ETH   |
    | Base Sepolia     | ETH          | 0.0005 ETH   |
    | Arbitrum Sepolia | ETH          | 0.0005 ETH   |
    | Scroll Sepolia   | ETH          | 0.0005 ETH   |
    | Zircuit Garfield | ETH          | 0.0005 ETH   |
    | Lisk Sepolia     | ETH          | 0.0005 ETH   |
    | Polygon Amoy     | MATIC        | 9 MATIC      |
    | BNB Testnet      | BNB          | 0.00158 BNB  |
    | Monad Testnet    | MON          | 55.6 MON     |

    <Warning>
      **Testnet values are for development only.** These lower fees and reserves are not used on mainnet deployments.
    </Warning>
  </Tab>
</Tabs>

### Why Creation Fees?

<Accordion title="Prevents Spam">
  Without creation fees, anyone could deploy thousands of tokens for pennies and
  clog the platform with scams.
</Accordion>

<Accordion title="Ensures Serious Creators">
  The fee acts as "skin in the game", creators who pay are more likely to build
  genuine communities.
</Accordion>

<Warning>
  **Fees are non-refundable.** Make sure you're ready to commit to your token
  before launching.
</Warning>

***

## Migration Fees (12% of Liquidity)

When your token graduates to a DEX, RektHub charges a **12% fee** on the total liquidity being migrated. This fee rewards creators and sustains platform development.

### Creator Share: 60%

You get **60% of the migration fee**. This is a significant reward for building an active community that reached bonding.

<Steps>
  <Step title="Token Bonds">
    850M tokens sold, curve has accumulated \~114.35 ETH (determined by k)
  </Step>

  <Step title="Migration Fee Calculated">
    12% of 114.35 ETH = 13.72 ETH total fee
  </Step>

  <Step title="You Get 60%">
    60% of 13.72 ETH = 8.23 ETH added to your claimable fees
  </Step>

  <Step title="Platform Gets 40%">
    40% of 13.72 ETH = 5.49 ETH sustains migration infrastructure
  </Step>

  <Step title="Liquidity to DEX">
    100.63 ETH + 150M tokens create the liquidity pool
  </Step>
</Steps>

**Migration Fee Breakdown (using 30 ETH virtual reserve example):**

| Component         | Amount                       | Percentage | USD Value\*   |
| ----------------- | ---------------------------- | ---------- | ------------- |
| Total Liquidity   | 114.35 ETH                   | 100%       | \$343,050     |
| **Migration Fee** | **13.72 ETH**                | **12%**    | **\$41,160**  |
| └─ Creator Gets   | 8.23 ETH                     | 60% of fee | \$24,690      |
| └─ Platform Gets  | 5.49 ETH                     | 40% of fee | \$16,470      |
| **To DEX**        | **100.63 ETH + 150M tokens** | **88%**    | **\$301,890** |

\*Assumes ETH @ \$3,000

<Tip>
  **Why 60% to creator?** Getting to bonding (850M tokens sold) means you built
  real demand. You earned this through community engagement, marketing, and
  delivering value.
</Tip>

### Understanding Bonding Liquidity

**Important:** The accumulated liquidity at bonding is **mathematically determined** by the constant product formula (k = x × y). Every token that reaches bonding will have accumulated approximately the same amount of native currency, regardless of trading volume or volatility.

Using the 30 ETH virtual reserve as an example:

* Starting: 30 ETH virtual, 1.073B tokens virtual, k = 32,190,000,000
* At bonding: All 850M real tokens sold
* Result: \~114.35 ETH real reserves (deterministic)

This means creator earnings from migration fees are predictable and consistent across all successfully bonded tokens.

***

## Fee Distribution Flow

### On Buy Transaction

```mermaid theme={null}
graph LR
    A[User: 100 ETH] -->|Buys| B{Factory}
    B -->|1% fee| C[Split Fees]
    B -->|99 ETH| D[Bonding Curve]
    C -->|0.3 ETH| E[Creator Accumulation]
    C -->|0.7 ETH| F[Platform Treasury]
    D -->|Tokens| G[User Wallet]
```

<CodeGroup>
  ```javascript Buy Fee Calculation theme={null}
  // User sends 100 ETH to buy tokens
  const userSends = 100;

  // Calculate 1% protocol fee
  const totalFee = userSends * 0.01; // 1 ETH

  // Split fee
  const creatorFee = totalFee * 0.3; // 0.3 ETH (30%)
  const platformFee = totalFee * 0.7; // 0.7 ETH (70%)

  // Net to curve for trading
  const netAmount = userSends - totalFee; // 99 ETH

  // Calculate tokens from curve
  const tokensOut = calculateBuyReturn(99);

  // Update state
  accumulatedCreatorFees += creatorFee; // 0.3 ETH saved for creator
  transferToPlatform(platformFee); // 0.7 ETH sent immediately
  transferToUser(tokensOut); // Tokens to buyer
  ```

  ```solidity Buy Implementation theme={null}
  function buy(address buyer, uint256 minTokensOut)
      external payable returns (TradeResult memory) {

      // 1. Calculate fees
      uint256 totalFee = msg.value * PROTOCOL_FEE_BPS / BASIS_POINTS;
      uint256 creatorFee = totalFee * CREATOR_SHARE_BPS / BASIS_POINTS;
      uint256 platformFee = totalFee - creatorFee;
      uint256 netAmount = msg.value - totalFee;

      // 2. Calculate tokens
      uint256 tokensOut = calculateBuyReturn(netAmount);
      require(tokensOut >= minTokensOut, "Slippage");

      // 3. Update state
      s_accumulatedCreatorFees += creatorFee;
      updateReserves(netAmount, tokensOut);

      // 4. Execute transfers
      IERC20(s_token).safeTransfer(buyer, tokensOut);
      s_factory.call{value: platformFee}("");

      return TradeResult(tokensOut, totalFee, creatorFee, platformFee);

  	// NOTE: this is a pseudo representation, see real implementation at each chain's respective contracts
  }
  ```
</CodeGroup>

### On Sell Transaction

```mermaid theme={null}
graph LR
    A[User: 10M Tokens] -->|Sells| B{Factory}
    B -->|Calculate| C[Bonding Curve]
    C -->|Gross: 5 ETH| D{Fee Split}
    D -->|1% fee| E[Split Fees]
    E -->|0.015 ETH| F[Creator Accumulation]
    E -->|0.035 ETH| G[Platform Treasury]
    D -->|4.95 ETH| H[User Wallet]
```

<CodeGroup>
  ```javascript Sell Fee Calculation theme={null}
  // User sells 10,000,000 tokens
  const tokensSold = 10_000_000;

  // Calculate gross native out (before fees)
  const grossNative = calculateSellReturn(tokensSold); // 5 ETH

  // Calculate 1% fee on gross
  const totalFee = grossNative * 0.01; // 0.05 ETH

  // Split fee
  const creatorFee = totalFee * 0.3; // 0.015 ETH (30%)
  const platformFee = totalFee * 0.7; // 0.035 ETH (70%)

  // Net to user
  const userReceives = grossNative - totalFee; // 4.95 ETH

  // Update state
  accumulatedCreatorFees += creatorFee; // 0.015 ETH saved
  transferToPlatform(platformFee); // 0.035 ETH sent
  transferToUser(userReceives); // 4.95 ETH to seller
  ```

  ```solidity Sell Implementation theme={null}
  function sell(address seller, uint256 tokenAmount, uint256 minNativeOut)
      external returns (TradeResult memory) {

      // 1. Calculate gross native (before fees)
      uint256 grossNative = calculateSellReturn(tokenAmount);

      // 2. Calculate fees
      uint256 totalFee = grossNative * PROTOCOL_FEE_BPS / BASIS_POINTS;
      uint256 creatorFee = totalFee * CREATOR_SHARE_BPS / BASIS_POINTS;
      uint256 platformFee = totalFee - creatorFee;
      uint256 nativeOut = grossNative - totalFee;

      require(nativeOut >= minNativeOut, "Slippage");

      // 3. Update state (use GROSS for reserves)
      s_accumulatedCreatorFees += creatorFee;
      updateReserves(grossNative, tokenAmount);

      // 4. Execute transfers
      IERC20(s_token).safeTransferFrom(seller, address(this), tokenAmount);
      seller.call{value: nativeOut}("");
      s_factory.call{value: platformFee}("");

      return TradeResult(nativeOut, totalFee, creatorFee, platformFee);

  	// NOTE: this is a pseudo representation, see real implementation at each chain's respective contracts
  }
  ```
</CodeGroup>

### On Migration

```mermaid theme={null}
graph TD
    A[Bonding Achieved: 114.35 ETH] -->|Trigger| B{Migration}
    B -->|12% fee| C[Calculate: 13.72 ETH]
    C -->|60%| D[Creator: 8.23 ETH]
    C -->|40%| E[Platform: 5.49 ETH]
    B -->|88%| F[To DEX: 100.63 ETH + 150M tokens]
    F --> G[Create LP]
    G --> H[Lock/Burn LP Tokens]
```

<CodeGroup>
  ```javascript Migration Fee Calculation theme={null}
  // Token bonded with 114.35 ETH liquidity (determined by k)
  const bondingLiquidity = 114.35;
  const reservedTokens = 150_000_000;

  // Calculate 12% migration fee
  const migrationFee = bondingLiquidity * 0.12; // 13.72 ETH

  // Split fee
  const creatorFee = migrationFee * 0.6; // 8.23 ETH (60%)
  const platformFee = migrationFee * 0.4; // 5.49 ETH (40%)

  // Net liquidity to DEX
  const liquidityToDEX = bondingLiquidity - migrationFee; // 100.63 ETH

  // Execute migration
  accumulatedCreatorFees += creatorFee; // 8.23 ETH saved for creator
  transferToPlatform(platformFee); // 5.49 ETH sent
  migrateToDEX(liquidityToDEX, reservedTokens); // Create LP
  ```

  ```solidity Migration Implementation theme={null}
  function migrate(address migrator) external returns (address pool, string memory dex) {
      require(s_bonded, "Not bonded");
      require(!s_graduated, "Already graduated");

      uint256 nativeLiquidity = s_realNativeReserves;
      uint256 tokenLiquidity = 150_000_000 * 10**18;

      // Calculate migration fee (12%)
      uint256 migrationFee = nativeLiquidity * MIGRATION_FEE_BPS / BASIS_POINTS;
      uint256 creatorFee = migrationFee * CREATOR_SHARE_MIGRATION_BPS / BASIS_POINTS;
      uint256 platformFee = migrationFee - creatorFee;
      uint256 netLiquidity = nativeLiquidity - migrationFee;

      // Update state
      s_graduated = true;
      s_accumulatedCreatorFees += creatorFee;
  	// Clear reserves states here
  	// ......

      // Execute migration
      s_factory.call{value: platformFee}("");
      IERC20(s_token).safeTransfer(migrator, tokenLiquidity);
      (pool, dex) = IDEXMigrator(migrator).migrate{value: netLiquidity}(
          s_token, netLiquidity, tokenLiquidity
      );

      emit TokenMigrated(s_token, pool, dex, netLiquidity, tokenLiquidity, migrationFee, creatorFee, platformFee);

  	// NOTE: this is a pseudo representation, see real implementation at each chain's respective contracts
  }
  ```
</CodeGroup>

***

## Creator Earnings Breakdown

### Total Earnings at Bonding

For a token that reaches bonding (using 30 ETH virtual reserve as example):

**TRADING FEES:**

* Accumulated throughout bonding curve lifecycle
* 30% of all 1% trading fees
* Varies based on trading activity and volatility
* Typical range: \$3,000 to \$15,000+

**MIGRATION FEE:**

* Fixed by constant product formula
* 60% of 12% migration fee
* \~8.23 ETH (\~\$24,690 at \$3k ETH)
* **Same for every bonded token**

**TOTAL CREATOR EARNINGS:**

* Trading fees: Variable based on activity
* Migration fee: \~\$24,690 (deterministic)
* Combined total: \~\$27,690 to \$39,690+

The migration fee provides a predictable base reward, while trading fees reward active community engagement during the bonding process.

***

## Fee Comparison

### RektHub vs Traditional Launches

**Cost comparison for launching a token:**

| Method        | Upfront Cost               | Creator Earnings                  | Community Trust                |
| ------------- | -------------------------- | --------------------------------- | ------------------------------ |
| **RektHub**   | \~\$15 creation fee        | 30% of trading + 60% of migration | High (fair launch)             |
| DEX Listing   | \$50K to \$500K            | 0% (unless you keep tokens)       | Medium (depends on tokenomics) |
| Market Makers | 10% to 20% of supply       | Depends on deal                   | Low (insider advantages)       |
| ICO/Presale   | \$100K+ (legal, marketing) | Varies widely                     | Low (insider allocations)      |

<Info>
  **RektHub advantage:** Pay once, earn predictably. No upfront capital, no
  supply giveaways, just sustainable creator economics backed by math.
</Info>

***

## FAQ

<AccordionGroup>
  <Accordion title="Can I change fee percentages for my token?">
    No, fees are hardcoded in the smart contracts to ensure consistency and trust. All tokens follow the same fee structure.
  </Accordion>

  <Accordion title="What if I don't claim my fees before migration?">
    No problem! Your accumulated fees stay in the curve contract forever. Claim whenever you want, even years after migration.
  </Accordion>

  <Accordion title="Do I pay gas for fee accumulation?">
    No! Fees accumulate in the curve contract. You only pay gas when you claim them.
  </Accordion>

  <Accordion title="Why is the migration fee 12%?">
    The 12% fee is substantial but fair:

    * You get 60% of it (7.2% of total liquidity)
    * It rewards successful community building
    * Still leaves 88% for deep DEX liquidity
    * Industry standard: most DEX launches cost 10% to 30% in various fees
  </Accordion>

  <Accordion title="Why does every bonded token have the same liquidity?">
    Because of the constant product formula (k = x × y). Once 850M tokens are sold, the math guarantees a specific amount of accumulated native currency. Trading volume doesn't change this, only net buying pressure matters, and bonding requires all 850M tokens to be bought.
  </Accordion>

  <Accordion title="Can I avoid the migration fee?">
    No, the fee is charged automatically when migrating. But remember: you get 60% of it, so it's actually a reward for your success!
  </Accordion>
</AccordionGroup>

***

## Next Steps

<CardGroup cols={2}>
  <Card title="Token Migration" icon="graduation-cap" href="/getting-started/migration">
    Learn how graduation works
  </Card>

  <Card title="Start Building" icon="code" href="/evm/quickstart">
    Integrate fee tracking into your app
  </Card>

  <Card title="BondingCurve Contract" icon="file-contract" href="/evm/contracts/bonding-curve">
    See fee calculation implementation
  </Card>
</CardGroup>
