Skip to content

How CAKE.PAD Taxes Work in Overflow Sales – With Example

  1. Taxes are only charged if the CAKE.PAD event is oversubscribed
    1. Oversubscription = Total deposits by all users > Raise goal amount.
    • Tax is only deducted from participants’ excess committed funds. No fees are paid by the CAKE.PAD partner project.
    • The CAKE.PAD partner project receives 100% of its targeted raise amount.
    • CAKE.PAD taxes are collected in CAKE, and 100% of it will be burned.
    • Fees are based on the total subscription rate of the pool (% of raise goal):

Oversubscription rate <> Fee Tier

Oversubscription RateFee Tier
≥ 0x1.00%
≥ 50x0.80%
≥ 100x0.60%
≥ 150x0.50%
≥ 200x0.40%
≥ 250x0.30%
≥ 300x0.25%
≥ 400x0.20%
≥ 500x0.15%
≥ 650x0.12%
≥ 800x0.10%
≥ 1500x0.05%
  1. Time period – When is tax charged
  • Tax is charged at the end of the CAKE.PAD event, when the user redeems their allocation.
  • Even if a user subscribes early (e.g., when the subscription is 30% of the raise goal), the final tax is based on the final pool oversubscription level.
    • Example: If the pool ends up at 50x over-subscribed, the applicable tax is the 50x tier (0.8%).
  1. User allocation = % of total CAKE.PAD partner token pool the user receives

    user_allocation = user_deposit_amount / totalAmountPool
  2. User pay amount = Portion of the user’s deposit used to redeem CAKE.PAD partner tokens

    user_pay_amount = raisingAmountPool * user_allocation
  3. Refund amount = Excess from the user’s deposit not used for CAKE.PAD partner token purchase

    refund_amount = user_deposit_amount - user_pay_amount
  4. Tax amount = Deduction applied on the user’s refunded amount

    • Fee tier is based on the % of raise goal (see table above).
    tax_amount = fee tier * refund_amount
  5. Final output for the user

    1. Token allocation = user_allocation * totalTokensOffered
    2. User tax amount = tax_amount
    3. final_refund = refund_amount - tax_amount (if applicable, else = refund_amount)
  • Target raise (raisingAmountPool): 100 CAKE
  • Your deposit (user_deposit_amount): 10 CAKE
  • Total deposits incl. of Your deposit (totalAmountPool): 5,100 CAKE (51x subscribed = 5,100% of raise goal, implies 50x oversubscription rate)
    • Corresponding fee tier = 0.80% (based on the tax rate table above)

Steps:

  1. user_allocation = 10 / 5,100 = 0.00196 (0.196% pool allocation)
  2. user_pay_amount = 100 × 0.00196 = 0.196 CAKE
  3. refund_amount = 10 − 0.196 = 9.804 CAKE
  4. tax_amount = 9.804 × 0.008 = 0.0784 CAKE
  5. final_refund = 9.804 − 0.0784 = ~9.72 CAKE

Final User received amounts

  1. Token allocation: 0.196 CAKE worth of CAKE.PAD partner tokens
  2. Final refund: ~9.72 CAKE (from 10 CAKE deposit − 0.196 CAKE for token allocation − 0.0784 CAKE tax)