> ## 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.

# User Positions Daily 🌱

> Daily Polymarket outcome token balances per wallet, from onchain data only.

The `polygon.predictions_onchain.user_positions_daily` table contains the end-of-day balance of each Polymarket outcome token held by each wallet, with market context. Each row represents one wallet, token and day.

This table contains no Polymarket API data. The equivalent table with Polymarket API metadata is [`polygon.predictions.user_positions_daily`](/historical-data/supported-blockchains/evm/polygon/predictions/user-positions-daily).

### Table Details

| Property | Value |
| - | - |
| Table Name | `polygon.predictions_onchain.user_positions_daily` |
| Table Status | Beta 🌱 |
| Unique Key | `day`, `address`, `token_address`, `token_id` |

### Table Columns

| Column Name | Data Type | Description |
| - | - | - |
| project | VARCHAR(16777216) | Project name (ex. polymarket). |
| protocol | VARCHAR(16777216) | Protocol name (ex. polymarket). |
| day | DATE | Date of the position snapshot. |
| address | VARCHAR(42) | User wallet address holding the position. |
| token\_address | VARCHAR(42) | Contract that issued the outcome token. |
| token\_id | VARCHAR(16777216) | Token ID for the specific outcome token. |
| token\_balance | FLOAT | Number of outcome tokens held at the end of the day. |
| condition\_id | VARCHAR(16777216) | Unique condition identifier for the market. |
| market\_unique\_id | VARCHAR(16777216) | Unique key for grouping related markets. |
| market\_id | VARCHAR(16777216) | Neg-risk market identifier. |
| market\_name | VARCHAR(16777216) | Market name: the neg-risk event name, the question for single markets, or the combo name for V3 positions. |
| market\_description | VARCHAR(16777216) | Neg-risk event description published onchain. |
| question\_id | VARCHAR(16777216) | Unique question identifier. |
| question | VARCHAR(16777216) | Market question text published onchain. |
| question\_description | VARCHAR(16777216) | Market resolution description published onchain. |
| token\_name | VARCHAR(16777216) | Combined outcome and question name, or outcome and combo name for V3 positions. |
| token\_outcome | VARCHAR(16777216) | Outcome name for the token, such as Yes, No, Up or Down. |
| is\_winner | BOOLEAN | Whether this outcome won the market. |
| neg\_risk | BOOLEAN | Whether this is a NegRisk market. |
| oracle | VARCHAR(42) | Oracle contract address for market resolution. |
| resolution\_outcome | VARCHAR(16777216) | Market resolution outcome if resolved. |
| resolved\_at | TIMESTAMP\_NTZ(9) | Market resolution timestamp. |
| unique\_id | VARCHAR(16777216) | Unique identifier combining day, address, token\_address, and token\_id (format 'day-YYYY-MM-DD\_address-{address}\_token\_address-{token_address}\_token\_id-{token_id}'). |

***

### Sample Query

```sql theme={null}
select *
from polygon.predictions_onchain.user_positions_daily
where day = '2026-10-17'
  and token_id = '73245421796922750466829041889725203633090129283314240032365966286987444361172'
order by token_balance desc
limit 100
```
