> For the complete documentation index, see [llms.txt](https://tornadocash-docs.gitbook.io/tornado.cash/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://tornadocash-docs.gitbook.io/tornado.cash/general/staking.md).

# Staking

All governance systems tend to converge towards a specific consensus model, which involves pluralism-based voting. This is because solving large-scale coordination challenges requires incentivizing participants—be they "users," "nodes," or "validators"—to cooperate. Once bound by a set of rules, participants prefer the stability that these systems offer as they ultimately ensure a steady source of income in the future.

Considering this, Tornado Cash's governance community prioritizes protocol and service stability. Therefore, mechanisms must be in place to incentivize participants to set up systems anchored around core protocol contracts. These contracts serve as intermediaries between the protocol and users. This setup is especially crucial due to the relayers' fee dilemma, which mandates a third party to supply ether for Tornado transactions' withdrawal phase.

Since implementing Proposal #10, TORN tokens have been able to offer these incentives. Frontends now allow selecting relayers who have voluntarily joined a registry by staking TORN. Similar to validators, these relayers must stake their tokens to be listed. This ensures they appear on frontends irrespective of the service host.

This setup primarily aims to support IPFS deployment, envisioned as a fully censorship-resistant, decentralized frontend enduring even in adverse situations. Combined with the previous system, IPFS should effectively manage relayer sybil issues.

The fee mechanism requires relayers to lock a specified amount (currently 2000 TORN). With each withdrawal, a registry fee (currently 0.3% of the relayer's set fee) is subtracted from their locked balance. This fee is then proportionally distributed to TORN holders staked in the Governance vault contract. Relayers need to maintain a balance above the minimum threshold (currently 500 TORN) to maintain active status and receive recommendations on the frontend.

Governance can adjust the listing amount, registry fee, and minimum balance as deemed necessary.

### How to Stake TORN token ? <a href="#how-to-stake-torn-token" id="how-to-stake-torn-token"></a>

First, [connect your wallet to Tornado Cash](/tornado.cash/tornado-cash-classic/how-to-connect-your-wallet.md).

As mentioned above, the process to lock TORN tokens has remained unchanged.

* It happens here ➡ [app.tornado.cash/governance](https://app.tornado.cash/governance) , by clicking on **`Manage`**, then going on the **`Lock`** tab
* The governance contract need to be approved in order to allow the transfer of your tokens to the smart contract. To do so, you need to click on the **`Approve`** button
* Once the approval is confirmed, you can chose the amount of token to lock, then click on **`Lock`**
* All you have to do after that is to confirm the transaction in your wallet & wait for the confirmation to come through

![](https://web.archive.org/web/20220609181519im_/https://1653446256-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MXflGk4w5pDjjlmPCuF-1972196547%2Fuploads%2Fgit-blob-2d7468f48b1cd1c90685f4dce4105010b673a6f1%2Fc05e5a1813edad280544b627b24002dc8d5adcf2.png?alt=media)

### How to Claim Your Staking Reward ? <a href="#how-to-claim-your-staking-reward" id="how-to-claim-your-staking-reward"></a>

Now that your TORN tokens have stayed nice & warm locked in the governance contract, you are able to claim your staking reward. How to do that? Everything is still happening here [app.tornado.cash/governance](https://app.tornado.cash/governance)

As soon as you log in the page, you will be able to see your staking reward at the top, just waiting for you to collect it 💰

![](https://web.archive.org/web/20220609181519im_/https://1653446256-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MXflGk4w5pDjjlmPCuF-1972196547%2Fuploads%2F1K1CWrUC3KHS1ZOMTVYS%2Fhead.png?alt=media\&token=6b786632-f9ae-4462-a7d6-3b0be4fd67be)

* Click **`Manage`** -> **`Claim`** tab -> **`Claim`** *button.*

![](https://web.archive.org/web/20220609181519im_/https://1653446256-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MXflGk4w5pDjjlmPCuF-1972196547%2Fuploads%2FgBOso4wuD5YPDWS27awI%2Fclaim.png?alt=media\&token=af672157-8a6b-4b66-b294-7319932d10ad)

*That's it, we're done, easy peasy lemon squeezy*


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://tornadocash-docs.gitbook.io/tornado.cash/general/staking.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
