# Incentive Mechanism

{% hint style="warning" %}
This documentation is not finalized. More information will be released for mainnet.
{% endhint %}

## Subnets

In Hypertensor, the overall token emission is split across multiple subnets every epoch. To determine how much of the total emission each subnet receives, the protocol uses a weighting system based on **delegate stake**, **node count**, and **Overwatch weights**.

This ensures a free market where subnets with **more stake from delegators** supporting the subnet, **more nodes** connecting and contributing to a subnet, and **benchmarking** from Overwatch Nodes, receive a larger share of emissions—but dampened and normalized, to avoid centralization, and to increase fairness and opportunity.

**Each subnet gets a weight on each epoch based on 3 factors**:

* Delegate stake weight
* Nodes count
* Overwatch weights

### Delegate Stake Weight

One factor in a subnet's weight is the **amount of stake delegated to it** by users.&#x20;

$$
\text{dstake weight} = \left( \frac{delegate:stake}{total:delegate:stake}\right)
$$

### Node Count Weight

Another factor is how many nodes are participating in a subnet. Node count weight matters because it’s a proxy for how much interest, usefulness, and security a subnet brings to the network.

$$
\text{node count weight} = \left( \frac{node:count}{total:node:count}\right)
$$

### Overwatch Weight

The resulting weight from Overwatch Nodes is applied to each of the weight factors above, delegates stake weight, and node count weight.

$$
\text{subnet weight} = dstake:weight \* node:count:weight
$$

The relationship between stake and rewards is **not linear**. Instead, each subnet's resulting weight is passed through a **tunable power curve**.

**This means**

* Subnets with more stake get **more rewards**
* But the increase is **not 1-to-1**—the curve **slightly flattens** the difference
* This helps prevent large subnets from dominating all emissions, and gives smaller or newer subnets a fairer share

**The power curve looks like this**

$$
\text{subnet weight} = (subnet:weight) ^p
$$

After weights are calculated for all subnets, they're **normalized** so that they sum to 100%. This gives each subnet a **final emission share**—its percentage of the total tokens emitted that epoch.

#### Why This Works

* Subnets are rewarded based on how much the community supports them through delegation, contribution, and benchmarking.
* The curve ensures no single subnet can dominate the network just by having more weight on any of the factors.
* This creates a healthier, more diverse ecosystem where smaller subnets can still thrive and grow.
* Fresh subnets will receive a premium of their weight-to-emissions ratio because the power curve distributes rewards.

***

## Subnet Nodes

### Consensus Mechanism

> Refer to node [classifications](/network/subnet-node/classifications.md) to understand how a node is created, its lifecycle, and becomes eligible for rewards.

The Hypertensor's on-chain subnet consensus mechanism is based on the **attestation-based consensus mechanism**.

Each **subnet** defines its own **incentive mechanism**, where nodes perform work and **score each other** based on the quality or utility of their output. Nodes in the subnet interact **peer-to-peer** and produce **output scores** reflecting how useful or correct each other's contributions are. These scores are **submitted as weights**—essentially reputation scores—where:

* Elected validator node submits a vector of weights for all nodes.
* The weights reflect how much trust, usefulness, or performance one node attributes to others.

These weights form a **decentralized reputation mesh**, unique to the purpose and rules of the subnet.

Once these weights are submitted, other validator nodes (non-elected validators) can **begin to attest** to the submitted consensus data. The validator **must receive a 66% attestation ratio** to have rewards emitted to the subnet; otherwise, the subnet and the elected validator node will accrue penalties, incentives are skipped, and the **validator will be slashed**.

### Rewarding Nodes

These weights are used to determine how rewards are distributed to each participating node in the subnet.

At the end of every epoch, Hypertensor uses the **finalized weight vector** (proposed by the elected validator and attested by others) to distribute **token emissions** to the participating subnet nodes.

Each node is rewarded based on its final weight relative to the **sum of all weights in the subnet** for that epoch. In other words, the more highly a node is scored by its peers, the larger its share of the total reward pool.

***

## Overwatch Nodes

Coming soon.


---

# Agent Instructions: 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:

```
GET https://docs.hypertensor.org/incentive-mechanism.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
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.
