token_ohlcv_1d
20 columnsOne row per token and UTC day: USD open, high, low and close, volume, and supply figures at the day's last bar.
multichain/ohlcv/token_ohlcv_1d<YYYY-MM-DD>.parquetone file per UTC dayDaily USD candles for the top 1,000 DEX-traded tokens by market cap on nine chains, last 30 days, one row per token and day.
token_ohlcv_1dWe build one USD candle per token and day from the Bitquery price index, which prices tokens from their trades on decentralized exchanges and filters out MEV trades. The file covers the 1,000 largest tokens by market cap that traded at least $100,000 in the window, on Solana, BNB Smart Chain, Base, Ethereum, Polygon, Arbitrum, Optimism, Tron and Robinhood Chain. A row is one token on one UTC day.
Most buyers load the file and pivot Price_Ohlc_Close by Token_Id and Block_Date to get a price history table. Join on Token_Id, because symbols repeat, and read Interval_Bars to see how many hours of the day had a trade. These are DEX prices: for large coins they track exchange prices closely, and for a coin with thin DEX trading a day can be missing.
One row per token and UTC day: USD open, high, low and close, volume, and supply figures at the day's last bar.
multichain/ohlcv/token_ohlcv_1d<YYYY-MM-DD>.parquetone file per UTC daySend this dataset’s full schema to an assistant and ask it anything. It reads the plain-text brief first, so the answer comes from the real column list rather than a guess.
Opens a new chat with the question filled in. Nothing about you is sent to Bitquery, and the assistant sees only the public brief.
Parquet files in a Requester Pays S3 bucket or a Cloudflare R2 bucket, chosen at checkout. On S3 you download with your own AWS account and AWS bills the transfer; on R2 you download with a read-only API key and pay no egress. Layout:
# token_ohlcv_1d: one file per UTC day
multichain/ohlcv/token_ohlcv_1d<YYYY-MM-DD>.parquettoken_ohlcv_1d table, 20 columnsOne Parquet table, token_ohlcv_1d, with 20 columns: the day, the token and its chain, USD open, high, low and close, USD and token volume, the number of hourly bars behind the day, and four supply figures including market cap. About 29,500 rows for 1,000 tokens over 30 days.
About 29,500 rows and roughly 5 MB as Parquet, estimated from a one-day sample at 186 bytes per row. The export for the 30 days to 8 October 2026 returned 29,486 rows; exact figures arrive with the delivery manifest.
Tokens are ranked by their median market cap over the 30 days, counting only bars where the circulating supply is known, with a floor of $100,000 traded in the window. The list is fixed when your order is built and shipped inside the files, so you can see which tokens you got.
30 days. The price index keeps 30 days of bars, so that is the longest window this dataset can hold. Each order is built once, when you buy, and covers the 30 days up to the latest full UTC day. It is a fixed set of files and does not update afterwards. For prices that keep updating, use the Bitquery Trading API.
Bars come from the Bitquery price index, the same series the Trading API serves. It prices each token in USD from its DEX trades and filters out MEV trades. A daily bar is rolled up from the 24 hourly bars: open of the first hour, close of the last, highest high, lowest low, summed volume. We ran the export for two windows before release. Both returned every day in the window, and no bar had a high below its low.
Tokens outside the top 1,000, tokens with no known circulating supply, and tokens that traded under $100,000 in the window. Centralized exchange trades are not in the source, so a coin that only trades on exchanges has no rows. Days with no trade have no row; nothing is forward filled.
Market cap belongs to the currency, so every copy of a coin carries the same figure: WETH on Base shows the market cap of ETH. Never sum it across rows. Circulating supply is known for about 4,800 tokens; for the rest the market cap column equals the fully diluted value. Symbols and names repeat, so join on Token_Id. Prices are 32-bit floats in the source, good to about seven digits.
Filter Token_Id to the token, for example bid:eth:0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 for WETH on Ethereum, and order by Block_Date. To follow a coin across chains, filter Currency_Id, for example bid:eth.
One line in DuckDB: SELECT * FROM read_parquet('token_ohlcv_1d/*.parquet') LIMIT 10. Pandas works too: pandas.read_parquet(path).
Each order is built once, when you buy, and covers the 30 days up to the latest full UTC day. It is a fixed set of files and does not update afterwards. For prices that keep updating, use the Bitquery Trading API. Delivered as Parquet with ZSTD compression, one file per day, under a stable layout with a JSON manifest listing every file and its sha256. We prepare the files within 7 business days of purchase and email you the location. You choose at checkout where to collect them: a Requester Pays S3 bucket, downloaded with your own AWS account, or a Cloudflare R2 bucket with a read-only API key and no egress fees. Files stay available for 7 days from delivery.
192.6 million address labels on 38 chains, from exchange deposit and hot wallets to casinos, mixers, darknet markets, scams and sanctioned addresses.
Every bonding-curve trade, token creation, migration and pool on Pump.fun, plus per-token OHLCV, decoded and USD-priced.
Hourly USD candles for the top 1,000 DEX-traded tokens by market cap on nine chains, last 30 days, one row per token and hour.
Tell us the chain, tables and date range.