Proposal : Rewards UI change to allow custom value when claiming rewards


  • When claiming LM reward. LM Providers must claim all available rewards in one transactions.
  • Depending on personal circumstance some Liquidity miners may not want to claim all there LM Rewards at once.
  • Proposal is for the community to approve a UI change to that would enable the claiming of a ‘custom’ claim amount rather than the current default of ‘all’
  • The result would give Liquidity Miners more control and flexibility when claiming from the Bancor LM staking contract.

Benefits to Bancor

  • Potential for large amount of rewards to remain in the contract, resulting in less BNT in the market and on exchanges.

I would like this but i think there is a problem from a code standpoint. I’m not exactly sure maybe @mbr or @MichalHerzyk can shine a light on it. but from a logical stand point i believe claiming rewards resets your multiplier so the left over rewards would be diminished, it might also just not be possible without a big contract updrage. but again im not sure.


I would like to have this; the way things are set up now I think it would require an overhaul of the underlying smart contracts. I cannot say for certain, as admittedly, I haven’t seen a single line of our code. (I should probably remedy that soon…)

Perhaps there’s a way to compose some other primitive(s) to accomplish this rather than changing the underlying code? I’ve been saying we should use Sablier for distributing rewards… :sunglasses: (I know, subtle as Chicxulub)


We were actually debating if we should include such option from the get go.
Our research shows that given the multiplier being reset, we would rather encourage people to claim their full amount of rewards.

On the other hand, when you try to stake your rewards, you have the option to select the amount as we allow you to distribute the rewards across multiple pools.

lastely, the benefit of “maintaining rewards in the contract” is not our main goal as we would like all rewards to end up being staked into the network and support trading activities.


could it be simpler to provide swap option? A single tx where an custom amount of available rewards can swapped?

1 Like

given that you first need to claim the rewards, the ideal solution is to offer the basic functionality first and make sure you are able to receive BNT into your wallet.
direct swap option for rewards has the following issues:

  1. users might still want to have the option to claim and receive BNT.
  2. adding more options will cause more complex interface which we would like to avoid.
  3. it is not benefiting our main flow of “stake your rewards”, as the network prefer to make it as easy as possible to perform this flow.

I like this idea. Main concern is particularly what would happen to multipliers if users can claim part of their rewards, might make more sense to add a 25-50-75-100% claim options button to simplify the process and then reset the multiplier back by .25x for every type of claim, for example: 25% claim resets all multipliers by .25x (7 days), 50% claim resets multipliers back by .50x (14 days), 75% claim resets all multipliers by .75x (21 days), 100% claim resets all multipliers by 1x (28 days). At the end of the day if all these claims are coming back into Bancor pools, this is still extremely beneficial to the platform as a whole.

Great idea! Let’s see what we can make happen, with great consideration to our dev team, if the community would like this to happen I don’t see how the level of challenge it would be smart contract wise would deter this option, correct me if I’m wrong!


Great feedback!
The whole idea behind the multipliers was to create a positive and negative incentive.
Positive → the longer you stay, the higher the multiplier is and as a result your received bonus
Negative → if you decide to interact with your rewards, you are basically resetting your multiplier back to 1, which forces you to really think twice before you claim your rewards.

Your suggestion might eliminate this “game theory” flow and make it so that there is no real negative incentive.
On top of this, we should also be aware of the on-chain costs. meaning, any of these extra elaborate steps and calculations would result in higher cost of transaction execution which is something we would like to prioritise over other considerations.