Earn rewards - User guide

Everything you need to know to earn rewards with Merkl

All yield opportunities from protocols and chains distributing rewards through Merkl are available on the Merkl App.

How to get started

1. Explore opportunities

Visit the Merkl App and browse the available opportunities to find the one that suits you best. You can filter by chain, protocol, category, status, and more for an easy overview.

2. Check campaign details

Select an opportunity and review campaign details such as APR, TVL, daily rewards, end date, and distribution strategy.

Do not get lured by high APRs. Rewards may be limited to whitelisted addresses or mostly go to large positions.

3. Interact with the protocol

Use the CTA button on the opportunity page to interact directly with the incentivized protocol (e.g., supply, lend, borrow).

4. Start earning rewards

Once you’ve interacted with the protocol, you’ll start earning rewards automatically. No staking or additional onchain actions are required.

5. Claim your rewards

Visit your Merkl dashboard to track and claim your rewards. Ensure you are connected with the same wallet used to interact with the protocol. Make sure to claim all your rewards within a year of receiving them!

You can claim all your rewards per chain at once to optimize gas costs!

Advanced features

Rewards on Merkl do not increase block by block, but can be claimed at a frequency which depends on the chain. You can check the claim frequency on the Status page.

Note that, by default, rewards can only be claimed by the address that earned them. You can however approve an operator to claim on your behalf by calling the function toggleOperator on the distributor smart contract. However, rewards will still be sent to the original address that earned them.

So to sum up, assuming Alice earned the rewards:

  • by default only Alice can claim and rewards are sent to Alice.

  • by calling toggleOperator, Alice can allow Bob to claim on her behalf. Then, Bob can claim for Alice by sending Alice's proof to the contract, and rewards are then sent to Alice.

If you can't call toggleOperator and are stuck, please open a tech ticket in our Discord , the team may be able to call it on your behalf.

Claiming from a multisig

When claiming rewards from a multisig address, we recommend delegating the claim process to an operator. This is because Merkl reward proofs are only valid for on average four hours (varies depending on the chain). If you fail to gather the necessary signatures and execute the claim transaction before a Merkle root is updated, your claim transaction will fail.

Claiming as an operator

Currently, when you're connected to the Merkl frontend with an operator address, you only see rewards earned by that operator address—not by the addresses that have appointed it.

To claim rewards on behalf of another address using an operator, you'll need to bypass the frontend and use the Merkl API directly. For example, you can retrieve the Merkle proof for a specific user and chain by calling: https://api.merkl.xyz/v4/users/0xA9DdD91249DFdd450E81E1c56Ab60E1A62651701/rewards?chainId=1

This response will include the Merkle proof data needed to submit a claim. You can then use this information to call the claim function on the Merkl Distributor contract via a block explorer or directly onchain.

To structure the claim:

  • users: Provide the address(es) you're claiming on behalf of. If claiming for multiple tokens, repeat the user address for each token.

  • tokens: List the token addresses you're claiming.

  • amounts: Use the amount field from the Merkl API response for each token.

  • proofs: Include the Merkle proof array for each token, also retrieved from the API.

Claiming Merkl rewards using a block explorer

Address Remapping

If a smart contract you use can’t claim rewards, ask the Merkl team to remap those rewards to a claimable wallet by reaching out on Discord with the campaign ID, source address, and destination address. The full walkthrough lives in the Reward Forwarding guide.

Last updated