Auto Yield
USDs earns ~11% APY for holders and the yield is paid out in USDs approx. every 10 days
USDs stands out from other stablecoins due to its inflation fighting Auto-Yield feature. This passive income strategy is novel in the stablecoin ecosystem, because it requires no action by the user. Users do not need to stake USDs or spend gas to claim their yield. One simply holds USDs, and their wallet balance will grow in USDs terms.
The collateral received for minting USDs is invested in other audited decentralized projects to generate organic yield. Currently, USDs collateral is earning yield on Curve Finance in the form of CRV tokens and swapping fees from the curve pool. This yield is shared between USDs holders and SPA stakers (The split is 50% for USDs holders and 50% for SPA stakers, but this share can be changed through governance). The yield share of USDs holders is used to purchase USDs from the open market, and the purchased USDs is distributed to USDs holders, directly into their wallet.
The actual yield generated is dynamically determined as a function of the aggregate collateral ratio and the collateral composition. However, the protocol will maintain a target yield of 11% APY so that USDs holders get stable returns irrespective of market conditions. Any yield generated over 11% is stored in the protocol to help fund the APY for lean periods when actual yield generated is less than 11%.
In the future, the Auto-Yield target may be further subsidized with SPA allocation. The SPA subsidy is not currently live, but will be released as an interest-bolstering mechanism in a future upgrade.


USDs held in wallets will receive auto-yield on a regular basis. For now, USDs that are deployed by users to yield-earning strategies within the Sperax suite of yield farms will not receive auto-yield.
By default, smart contracts holding USDs are not included in the yield distribution process and do not earn any yield. A smart contract’s USDs balance remains the same after an auto-yield distribution event. However, based on community’s feedback, the Sperax team can whitelist specific smart contracts to be part of auto-yield, and provide technical support to determine whether a protocol is compatible with the auto-yield feature of USDs.

Auto-yield distribution mechanism

USDs is an ERC20 token. A wallet holding USDs should expect its USDs balance to increase automatically over time. This increase is triggered by a distribution event that happens approximately every 10 days. The earned USDs are not explicitly transferred into the user’s wallet, instead a global parameter is changed to update the holder's balance.
Unlike most ERC20, where the token contract directly stores the amount of tokens each wallet holds, USDs’ token contract has a shared state variable creditPerToken, and the contract stores each wallet’s credit. A wallet’s balance = credit / creditPerToken.
When yield is generated:
  1. 1.
    The yield is swapped for USDs in the open market
  2. 2.
    The USDs from step (1) is burned
  3. 3.
    The value of creditPerToken is *decreased globally and therefore every wallet’s balance increases (since every wallet’s credit is unchanged during this process)
*: creditPerToken is decreased according to the amount of USDs burnt in step (2) such that total supply of USDs remains unchanged after steps (2) and (3)
The circulating supply of USDs remains unchanged through this process as the USDs that are bought from the market are burnt and then the USDs balance of the holders increase proportionally. As a result, a user can expect its USDs balance to increase automatically over time without any additional USDs explicitly being transferred to the user’s wallet.

Yield distribution frequency

Yield is distributed approximately every 10 days. The exact distribution time is determined in a quasi-random way. We have decided on this randomised distribution time to prevent users from timing their USDs minting and redeeming with yield distribution events. Huge spike in minting or redeeming around the time of yield distribution can put strain on the peg and this randomisation works as a defence mechanism for maintaining peg.