# 5️⃣ Token Holders

Fuul allows projects to reward token holders based on their balances at specific points in time. By capturing a **snapshot** of token ownership at a defined moment, Fuul simplifies the process of distributing rewards to your community.

### What You Can Incentivize

| Trigger                     | What's tracked                                   | Use case                                                   |
| --------------------------- | ------------------------------------------------ | ---------------------------------------------------------- |
| **Token balance snapshot**  | User's token balance at a specific point in time | Airdrops, loyalty rewards, governance incentives           |
| **Subgraph-based snapshot** | Custom data derived from a subgraph query        | Advanced balance calculations or protocol-specific metrics |
| **Dune Query snapshot**     | Custom data derived from a Dune Analytics query  | Complex onchain data that requires SQL-based analysis      |

### How It Works

| Step                       | What happens                                                                                        |
| -------------------------- | --------------------------------------------------------------------------------------------------- |
| **1. Define the snapshot** | Configure which token (or subgraph/Dune query) to track, on which chain, and at what point in time  |
| **2. Capture balances**    | Fuul takes a snapshot of all holder balances at the defined moment                                  |
| **3. Filter holders**      | Optional minimum balance thresholds or other criteria are applied to determine qualifying holders   |
| **4. Distribute rewards**  | Rewards are distributed proportionally based on each holder's share of the total qualifying balance |

### Use Cases

| Use case                  | Description                                                                                   |
| ------------------------- | --------------------------------------------------------------------------------------------- |
| **Airdrops**              | Reward holders with tokens or points based on their snapshot balance                          |
| **Loyalty rewards**       | Conduct periodic snapshots and reward consistent balances to encourage long-term holding      |
| **Governance incentives** | Distribute rewards to token holders during key governance events to incentivize participation |

### Data Sources

| Source            | When to use                               | Setup                                   |
| ----------------- | ----------------------------------------- | --------------------------------------- |
| **Token balance** | Standard ERC-20 or native token holdings  | Provide the token contract address      |
| **Subgraph**      | Custom or protocol-specific balance logic | Provide the subgraph endpoint and query |
| **Dune Query**    | Complex onchain analysis requiring SQL    | Provide the Dune query ID               |

{% hint style="info" %}
Token holder snapshots can be taken on any EVM-compatible chain. For advanced configurations using subgraphs or Dune queries, reach out at <ecosystem@fuul.xyz>.
{% endhint %}


---

# 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.fuul.xyz/core-concepts/trigger-integrations/token-holders.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.
