Decentralised synthetic assets

A guide to claiming SNX staking rewards cheaply

A guide to claiming SNX staking rewards cheaply

If you’re staking SNX, you’ve probably noticed that gas prices have been extremely high recently. We’ve written this article to explain how gas works, why prices can be higher for Synthetix transactions compared to other protocols, and the details for a strategy known as “The Clinton Method” for claiming SNX staking rewards as cheaply as possible.  

How gas works

Gas on Ethereum accounts for two separate components: computation and demand. To pay gas for a transaction, you essentially need to pay a certain gas fee (gas limits, based on computation) and then multiply it (GWEI, based on demand).

  • Computation (gas limits): To quote this guide, “gas is a unit that measures the amount of computational effort that it will take to execute certain operations.” Synthetix smart contracts are more complex than most others on Ethereum, so any transactions concerning the assets from the Synthetix system will require a higher gas limit (i.e. more computation) than most others.
    It might be possible to somewhat reduce the amount of gas limits required for certain Synthetix transactions by refactoring the system’s design, but this would be extremely time-consuming and may not even produce significant results. We have also already implemented certain gas optimisations already in the Achernar and Betelgeuse releases.
  • Demand (GWEI): Each Ethereum block can only fit a certain amount of computation in it, so whenever you pay for gas to have a transaction processed, you’re bidding against other people who want to pay for theirs to be processed too. You bid with ‘GWEI,’ and miners will generally select to process transactions with the highest GWEI being offered at that time.
    If you bid to process a transaction with lower GWEI than everyone else, your transaction will stay unprocessed (often labelled ‘pending’ across platforms) indefinitely until demand decreases. Here’s a guide on what to do if you’re in this situation (and here's one for if you don't have Metamask).

Staking SNX

If you’re staking SNX, when it comes to thinking about gas there are a few things to consider. The first thing is that you have all week to claim rewards between fee periods (which open/close at 10am Wednesday, UTC). This means that if at any time during the week you notice that GWEI demand is relatively low, you can take that opportunity to adjust your C-Ratio and claim your staking rewards. The best way to keep track of current GWEI demand is at ethgasstation.info or using this nifty Chrome extension which uses Eth Gas Station to display the current standard GWEI.

The second thing is that as we’ve already discussed, there’s what is essentially a flat gas rate for claiming rewards (subject to demand/GWEI). In other words, due to the way Ethereum is designed, it costs the same someone with 10 SNX to claim rewards as another person with 1,000,000 SNX. This means that for certain low numbers of SNX, and depending on gas prices, it may not yet be worth staking your SNX to try to gain a yield. People in the Synthetix Discord community have suggested 500 SNX might be the threshold below which you might want to reconsider staking, but it’s up to every SNX holder to make their own decision. If you have SNX and want to do something other than stake it as collateral, you can always lend it out on AAVE or Uniswap.

The third thing to consider is skipping claiming rewards in certain weeks, particularly if the rewards you’re claiming are lower than the gas it would cost to claim them. These rewards will then be put back into the reward pool to be distributed again between SNX stakers in the next fee period.

Finally, some stakers have questioned why the period in which you must claim rewards or otherwise lose them is one week, having been originally 6 weeks and then 2 weeks. As outlined in SIP-9, the one-week window is designed to increase the responsiveness of stakers to the incentives within the system. It's important to have a tight sUSD peg, and managing the supply of Synths in the market is an important lever to maintaining that peg. By enforcing a one-week claim window, stakers are required to adjust their C-Ratio more actively by minting or burning Synths, which is crucial to the smooth running of the system.

“The Clinton Method” for claiming staking rewards

Clinton, a Synthetix Core Contributor, uses this method to claim rewards as cheaply as possible. It aims to get the reward-claiming process started early in the fee period, but set at a lower GWEI than the current demand so it can be waiting all week to be executed. And, by using a delegated wallet, the mint/burn/claim transactions can be pending all week without blocking your primary staking wallet from doing any other transactions.

  • Firstly, set up a delegated wallet (instructions here). Let’s call your staking wallet “Wallet A,” and your delegated wallet “Wallet B.” It’s the easiest to use a mobile wallet (e.g. Metamask Mobile or Trust Wallet) as Wallet B.
  • At the start of the fee period, use Wallet B to get Wallet A’s C-Ratio to 800% or higher by burning sUSD, which is displayed at Delegatr as “Burn to Target”.
  • Note that if your C-Ratio is below 792% whenever your Claim Rewards transaction gets processed, the claim will fail.
  • Once your C-Ratio is 800% or higher, you can start a Claim Rewards transaction. Use Wallet B to claim Wallet A’s staking rewards as close to the start of the fee period as possible, using a lower GWEI than is currently required. For example, the current standard GWEI is 32, so you might try setting a transaction at 20 GWEI and hope it gets processed sometime during the week.
  • Some mobile wallets offer push notifications, so you can be notified if your transaction gets processed.
  • If you set your transaction to be processed but GWEI demand is high all week, you’ll have to either skip claiming that week or increase the GWEI you initially used in the first claim.

[Unfortunately with a delegated wallet, you can't currently burn sUSD to get your C-Ratio any higher than 800%, so if you want to create a buffer to allow for SNX price fluctuations, you could consider using the desktop dApp to burn to 900%, which would mean you'd be less likely to need to burn through the delegated wallet.]

You can also keep track of gas prices using this Telegram bot.

That’s it! If you’ve got any further questions about staking, or if you’ve got suggestions on how to improve this guide, please come join us in Discord.


comments powered by Disqus