> ## Documentation Index
> Fetch the complete documentation index at: https://docs.allium.so/llms.txt
> Use this file to discover all available pages before exploring further.

# Overview

> Block-level balances of assets on the blockchain.

## Asset Types

The Balances tables contain the following asset types:

| Asset Type | Description                                                                           |
| ---------- | ------------------------------------------------------------------------------------- |
| Fungible   | Fungible assets models contains erc20 tokens and native (gas) token.                  |
| Native     | Native tokens are the gas tokens of the blockchain, such as ETH, BNB, POL, AVAX, etc. |
| ERC20      | ERC20 tokens are the tokens that follow the ERC20 standard, such as USDC, USDT, etc.  |

### Balance Tracking Methodology

| Asset Type                | Methodology                                                                                                                                                                    |
| ------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| Fungible (ERC20 & Native) | We detect balance-changing events (transfers, mints, burns) and fetch balance at each relevant block height directly from the blockchain and index it into the balances table. |

### Precision Handling

To maintain numerical precision, especially for tokens with large supplies or many decimal places:

1. Raw balances are stored as VARCHAR to preserve exact values.
2. Normalized balances are calculated using high-precision arithmetic with custom Snowflake UDFs.
3. Both raw and human-readable balances are provided.

This approach ensures:

* No loss of precision from floating-point arithmetic.
* Accurate balance tracking over time.
* Reliable historical data for analysis.
