# How to Get CSFloat Buy-Order Prices

> cs2.sh collects CSFloat's highest active buy order for most CS2 items and serves it as `csfloat.bid` beside the cheapest listing and listing count.

A CSFloat buy order is a standing offer to purchase an item. The highest order is the current executable sell-side quote. It is different from the lowest listing, which is what a buyer would pay to purchase immediately.

## Available CSFloat buy-order data

- `bid` is the highest current buy order for most items. It refreshes every ~10-30 minutes based on item liquidity.
- `ask` is the cheapest active listing and `ask_volume` is the number of active listings.
- CSFloat does not expose `bid_volume`, so the response gives the top bid price without buy-order depth.
- Doppler and Gamma Doppler bids can appear per phase in `variants`. The same object carries `display_name` and stable `version` codes such as `p2`, `ruby`, or `emerald`.
- Bid OHLC history begins July 18, 2026. Daily CSFloat completed-sale price and volume are available separately from 2022 onward.

Prices are normalized to USD.

## Read the current CSFloat bid

Fetch `GET /v1/prices/latest` and select the item from the `items` map by its exact `market_hash_name`. Read `bid`, `ask`, and `ask_volume` from its `csfloat` object. The endpoint returns the full tracked catalog across all six marketplaces and is available on all plans.

For a Doppler or Gamma Doppler item, start at the base item and read the desired entry under `variants`. Match on the stable `version` value. A phase quote must stay attached to that phase rather than falling back to the parent item.

To study changes over time, query `POST /v1/prices/history` with `csfloat` as the source. Its OHLC buckets preserve separate bid and ask series. See [CSFloat bid price history](/resources/how-to-get-csfloat-bid-price-history) for the July 18 boundary.

## Applicable endpoints

| Endpoint | Returns | Plans |
| --- | --- | --- |
| `GET /v1/prices/latest` | Current CSFloat bid, ask, and listing count | All plans |
| `POST /v1/prices/history` | Bid and ask OHLC, with bids from July 18, 2026 | Scale, Enterprise |
| `POST /v1/archive/csfloat` | Daily completed-sale averages and counts since 2022 | Scale, Enterprise |

## What can change the interpretation

- The bid and ask can come from different collection passes. If `bid` is above `ask`, treat the pair as stale and refresh it before calculating a spread.
- `ask_volume` counts listings. Using it as buy-order volume would reverse the side of the market being measured.
- `updated_at` and `collected_at` describe the listing observation in the merged source object. There is no separate public bid timestamp.
- A standing bid does not prove that items sell at that price. Compare it with [CSFloat completed sales](/resources/how-to-get-csfloat-sales-history) when execution evidence matters.

The full source fields are documented in [current prices](/docs/api-reference/prices-latest).
