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

# kalshi.market_details

> Kalshi market reference table — one row per ticker with latest pricing, strike structure, settlement state, resolution rules, and series-level metadata.

export const TableSample = ({tableName, tableSchema}) => <>
    <div className="hidden dark:block">
      <iframe src={`https://dune.com/embeds/3419983/5785629?table_schema_t6f0df=${tableSchema}&table_name_t6f0df=${tableName}&darkMode=true`} style={{
  width: '100%',
  height: '500px',
  border: 'none',
  marginTop: '10px'
}} />
    </div>
    <div className="dark:hidden">
      <iframe src={`https://dune.com/embeds/3419983/5785629?table_schema_t6f0df=${tableSchema}&table_name_t6f0df=${tableName}`} style={{
  width: '100%',
  height: '500px',
  border: 'none',
  marginTop: '10px'
}} />
    </div>
  </>;

The `kalshi.market_details` table is the Kalshi market reference table. Grain: one row per Kalshi `ticker`. Use it to look up a market's question, strike type, latest bid/ask, lifecycle status, settlement outcome, and parent event/series metadata.

## Table Schema

| Column                       | Type        | Description                                                                            |
| ---------------------------- | ----------- | -------------------------------------------------------------------------------------- |
| `ticker`                     | `VARCHAR`   | Unique market identifier (e.g. `KXBTCD-26APR04-T99499.99`)                             |
| `event_ticker`               | `VARCHAR`   | Parent event identifier grouping related markets                                       |
| `market_type`                | `VARCHAR`   | Market type (e.g. `binary`)                                                            |
| `title`                      | `VARCHAR`   | Market question text                                                                   |
| `subtitle`                   | `VARCHAR`   | Market subtitle                                                                        |
| `yes_sub_title`              | `VARCHAR`   | Label for the Yes outcome                                                              |
| `no_sub_title`               | `VARCHAR`   | Label for the No outcome                                                               |
| `created_time`               | `TIMESTAMP` | When the market was created                                                            |
| `updated_time`               | `TIMESTAMP` | When the market was last updated upstream                                              |
| `open_time`                  | `TIMESTAMP` | When trading opened                                                                    |
| `close_time`                 | `TIMESTAMP` | When trading closes                                                                    |
| `expiration_time`            | `TIMESTAMP` | Market expiration time                                                                 |
| `latest_expiration_time`     | `TIMESTAMP` | Latest possible expiration time                                                        |
| `expected_expiration_time`   | `TIMESTAMP` | Expected expiration time                                                               |
| `settlement_ts`              | `TIMESTAMP` | When the market was settled. NULL if unsettled                                         |
| `status`                     | `VARCHAR`   | Market lifecycle state (`active`, `finalized`, `closed`, etc.)                         |
| `result`                     | `VARCHAR`   | Settlement outcome (`yes`, `no`, `scalar`, or empty if unresolved)                     |
| `settlement_value_dollars`   | `DOUBLE`    | Payout value per contract at settlement                                                |
| `expiration_value`           | `VARCHAR`   | Expiration outcome value                                                               |
| `can_close_early`            | `BOOLEAN`   | Whether the market can close before expiration                                         |
| `early_close_condition`      | `VARCHAR`   | Condition that triggers early close                                                    |
| `yes_bid_dollars`            | `DOUBLE`    | Latest best bid for Yes                                                                |
| `yes_ask_dollars`            | `DOUBLE`    | Latest best ask for Yes                                                                |
| `no_bid_dollars`             | `DOUBLE`    | Latest best bid for No                                                                 |
| `no_ask_dollars`             | `DOUBLE`    | Latest best ask for No                                                                 |
| `yes_bid_size_fp`            | `DOUBLE`    | Depth at best Yes bid (contracts)                                                      |
| `yes_ask_size_fp`            | `DOUBLE`    | Depth at best Yes ask (contracts)                                                      |
| `last_price_dollars`         | `DOUBLE`    | Last traded price                                                                      |
| `previous_yes_bid_dollars`   | `DOUBLE`    | Previous best Yes bid                                                                  |
| `previous_yes_ask_dollars`   | `DOUBLE`    | Previous best Yes ask                                                                  |
| `previous_price_dollars`     | `DOUBLE`    | Previous last traded price                                                             |
| `volume_fp`                  | `DOUBLE`    | Lifetime contracts traded                                                              |
| `volume_24h_fp`              | `DOUBLE`    | Contracts traded in the last 24 hours                                                  |
| `open_interest_fp`           | `DOUBLE`    | Open interest in contracts                                                             |
| `strike_type`                | `VARCHAR`   | Strike structure (`binary`, `structured`, `between`, `greater`, `custom`, etc.)        |
| `floor_strike`               | `DOUBLE`    | Lower bound for range/threshold markets                                                |
| `cap_strike`                 | `DOUBLE`    | Upper bound for range markets                                                          |
| `custom_strike`              | `VARCHAR`   | JSON blob with structured strike metadata                                              |
| `tick_size`                  | `INTEGER`   | Minimum price increment                                                                |
| `fractional_trading_enabled` | `BOOLEAN`   | Whether fractional contracts are tradeable                                             |
| `rules_primary`              | `VARCHAR`   | Primary resolution rules text                                                          |
| `mve_collection_ticker`      | `VARCHAR`   | Multivariate event collection ticker. NULL for non-MVE markets                         |
| `series_ticker`              | `VARCHAR`   | Series the event belongs to                                                            |
| `event_title`                | `VARCHAR`   | Parent event title                                                                     |
| `event_sub_title`            | `VARCHAR`   | Parent event subtitle                                                                  |
| `collateral_return_type`     | `VARCHAR`   | How collateral is returned                                                             |
| `mutually_exclusive`         | `BOOLEAN`   | Whether event outcomes are mutually exclusive                                          |
| `available_on_brokers`       | `BOOLEAN`   | Whether available via broker integrations                                              |
| `product_metadata`           | `VARCHAR`   | JSON blob with additional product metadata                                             |
| `category`                   | `VARCHAR`   | Market category (e.g. Sports, Politics, Crypto)                                        |
| `competition`                | `VARCHAR`   | Competition name (e.g. Pro Football, NHL, XRP)                                         |
| `strike_date`                | `TIMESTAMP` | Strike/resolution date                                                                 |
| `strike_period`              | `VARCHAR`   | Strike period description                                                              |
| `frequency`                  | `VARCHAR`   | Recurrence cadence (`one_off`, `annual`, `monthly`, `weekly`, `daily`, `hourly`, etc.) |
| `fee_type`                   | `VARCHAR`   | Fee model (`quadratic`, `quadratic_with_maker_fees`)                                   |
| `fee_multiplier`             | `DOUBLE`    | Fee scalar applied on top of standard rates (1.0 = standard)                           |
| `source_updated_at`          | `TIMESTAMP` | When this market record was last refreshed                                             |
| `_updated_at`                | `TIMESTAMP` | When this row was last written by the pipeline                                         |

## Table sample

<TableSample tableSchema="kalshi" tableName="market_details" />

## Example query

```sql theme={null}
-- Active sports markets by 24h volume
SELECT
  ticker,
  event_title,
  title,
  volume_24h_fp,
  yes_bid_dollars,
  yes_ask_dollars
FROM kalshi.market_details
WHERE status = 'active'
  AND category = 'Sports'
ORDER BY volume_24h_fp DESC
LIMIT 20
```
