# How to Get CS2 Sale Volume Data

> cs2.sh provides three CS2 sale volume datasets: approximate aggregate
> `hourly_volume` from 2023, daily CSFloat completed-sale counts from 2022, and
> native Steam purchase counts with daily history from April 26, 2013.

The fields are not interchangeable. Aggregate volume is an estimate, CSFloat
volume counts completed sales, and Steam volume counts purchases in Steam's
native sale-history buckets.

## Sale volume coverage

| Dataset | Volume field | History and cadence |
| --- | --- | --- |
| Aggregate archive | `hourly_volume` | `1h` or `1d` from 2023; updated once or twice daily |
| CSFloat archive | `volume` | Daily completed-sale count from 2022; updated once or twice daily |
| Steam archive | `volume` | Daily purchases from April 26, 2013; hourly from May 9, 2026 |

The aggregate series also provides `total_supply` and last-observed prices. At
`1d`, its `hourly_volume` is already aggregated across the hours in the day.

CSFloat pairs daily `volume` with `price`, the arithmetic average of completed
sale prices for that UTC date. Supported variants can have separate archive
series when completed-sale data exists.

Steam pairs `volume` with its native median sale `price`. Regular items are
supported; variant requests are not. Steam archive data refreshes every eight
hours for liquid items and daily for the rest.

## Query the volume that matches the question

Request up to 100 exact `market_hash_name` values and a UTC date range.

Use `POST /v1/archive/history` with source `aggregate` for broad approximate
activity and supply context. Use `POST /v1/archive/csfloat` when completed
CSFloat sales and variant sales matter. Use `POST /v1/archive/steam` for
Steam's native purchase count and median sale price.

All three endpoints support partial success through `errors[]`. A valid item
without rows in the requested archive can report `not_in_archive`. Steam also
reports `unsupported_variant` for variant item names.

The [CSFloat sales guide](/resources/how-to-get-csfloat-sales-history) and
[Steam sale-history guide](/resources/how-to-get-steam-market-sale-history)
cover their price semantics beside volume.

## Applicable endpoints

| Endpoint | Returns | Plans |
| --- | --- | --- |
| `POST /v1/archive/history` | Approximate aggregate volume from 2023 | Scale, Enterprise |
| `POST /v1/archive/csfloat` | Daily completed-sale price and count from 2022 | Scale, Enterprise |
| `POST /v1/archive/steam` | Native median sale price and purchase count | Scale, Enterprise |

## Volume interpretation

- Aggregate `hourly_volume` is not a transaction list, unique-buyer count, or
  marketplace-native purchase count.
- `ask_volume` counts active listings and `bid_volume` counts active buy
  orders. Changes in those fields cannot replace sale volume.
- Do not multiply daily aggregate `hourly_volume` by 24. The daily bucket
  already contains the interval's aggregation.
- Keep each dataset's start date and price definition visible when combining
  series. A Steam median and a CSFloat daily arithmetic average are different
  statistics.
