Perp index constituent changes
A perpetual's mark price is built from an index: a weighted basket of spot prices from several exchanges. This page lists every constituent the exchange added or removed, and every weight move of at least 5 percentage points, newest first.
Constituent changes as published by each exchange, detected by hourly snapshot. A removal is not a delisting. RSS feed.
Constituent changes · last 30 days
newest first · times in UTC · page 8Exchange: All · Binance · OKX · Bybit · Bitget Change: All · Added · Removed · Reweighted
| Time (UTC) | Change | Index | Constituent | Weight before | Weight after |
|---|---|---|---|---|---|
| Added | Bybit PLAYSOUTUSDT | KuCoin PLAY-USDT spot | 0% | 16% | |
| Added | Bybit PEPUSDT | Bybit futures PEPUSDT perp | 0% | 100% | |
| Added | Bitget JOEUSDT JOE | Gate JOE/USDT spot | 0% | 2.8% | |
| Added | Bybit OUSDT O | KuCoin O-USDT spot | 0% | 28% | |
| Added | Bitget JCTUSDT JCT | MEXC JCT/USDT spot | 0% | 19% | |
| Added | Bybit OGUSDT OG | Gate OG_USDT spot | 0% | 5.6% | |
| Added | Bybit OGNUSDT OGN | Gate OGN_USDT spot | 0% | 0.3% | |
| Added | Bybit NVDLUSDT | Bybit futures NVDLUSDT perp | 0% | 10% | |
| Added | Bitget ICNTUSDT ICNT | Bitget ICNT/USDT spot | 0% | 12% | |
| Added | Bybit NCLDUSDT | Bybit futures NCLDUSDT perp | 0% | 100% | |
| Added | Bybit MSFUUSDT | Bybit futures MSFUUSDT perp | 0% | 100% | |
| Added | Bybit MOUSDT | Bybit futures MOUSDT perp | 0% | 100% | |
| Added | Bitget HAEDALUSDT HAEDAL | Bybit HAEDAL/USDT spot | 0% | 4.6% | |
| Added | Bitget GWEIUSDT GWEI | MEXC GWEI/USDT spot | 0% | 10% | |
| Added | Bybit MMTUSDT MMT | KuCoin MMT-USDT spot | 0% | 2.3% | |
| Added | Bitget GUSDT G | KuCoin G/USDT spot | 0% | 0.8% | |
| Added | Bitget GRVTUSDT GRVT | Bybit GRVT/USDT spot | 0% | 20% | |
| Added | Bitget GRVTUSDT GRVT | KuCoin GRVT/USDT spot | 0% | 20% | |
| Added | Bybit LUMIAUSDT LUMIA | KuCoin LUMIA-USDT spot | 0% | 2.3% | |
| Added | Bitget GASUSDT GAS | Gate GAS/USDT spot | 0% | 0.3% | |
| Added | Bitget GASUSDT GAS | OKX GAS/USDT spot | 0% | 13% | |
| Added | Bybit LITUSDT LIT | KuCoin LIT-USDT spot | 0% | 0.8% | |
| Added | Bitget FUSDT F | Gate F/USDT spot | 0% | 0.8% | |
| Added | Bitget FUSDT F | KuCoin F/USDT spot | 0% | 0.7% | |
| Added | Bybit LIGHTUSDT LIGHT | KuCoin LIGHT-USDT spot | 0% | 20% | |
| Added | Bybit KNCUSDT KNC | KuCoin KNC-USDT spot | 0% | 1.2% | |
| Added | Bybit KERNELUSDT KERNEL | KuCoin KERNEL-USDT spot | 0% | 1.8% | |
| Added | Bitget EWZUSDT EWZ | intrinio EWZ/USD unknown | 0% | 33% | |
| Added | Bybit JDUSDT | Bybit futures JDUSDT perp | 0% | 100% | |
| Added | Bybit JCTUSDT JCT | binancealpha JCT/USDT unknown | 0% | 8.8% | |
| Added | Bybit ISRGUSDT | Bybit futures ISRGUSDT perp | 0% | 100% | |
| Added | Bybit IOTXUSDT IOTX | Gate IOTX_USDT spot | 0% | 2.4% | |
| Added | Bitget EULUSDT EUL | Gate EUL/USDT spot | 0% | 2.4% | |
| Added | Bybit INXUSDT INX | Coinbase INX-USD spot | 0% | 23% | |
| Added | Bybit INXUSDT INX | Gate INX_USDT spot | 0% | 20% | |
| Added | Bitget ERAUSDT ERA | Bybit ERA/USDT spot | 0% | 7.2% | |
| Added | Bitget EPICUSDT EPIC | KuCoin EPIC/USDT spot | 0% | 3% | |
| Added | Bitget ENSOUSDT ENSO | Gate ENSO/USDT spot | 0% | 3% | |
| Added | Bybit ICNTUSDT ICNT | Coinbase ICNT-USD spot | 0% | 18% | |
| Added | Bybit HIVEUSDT HIVE | Gate HIVE_USDT spot | 0% | 2% | |
| Added | Bybit HDUSDT | Bybit futures HDUSDT perp | 0% | 10% | |
| Added | Bybit HANAUSDT HANA | KuCoin HANA-USDT spot | 0% | 13% | |
| Added | Bitget DIAUSDT DIA | Gate DIA/USDT spot | 0% | 1.1% | |
| Added | Bybit GRVTUSDT GRVT | KuCoin GRVT-USDT spot | 0% | 12% | |
| Added | Bybit GLWUSDT | Bybit futures GLWUSDT perp | 0% | 10% | |
| Added | Bitget CYPHUSDT | dxfeed CYPH/USD unknown | 0% | 33% | |
| Added | Bitget CVXUSDT CVX | Gate CVX/USDT spot | 0% | 0.8% | |
| Added | Bitget CVXUSDT CVX | KuCoin CVX/USDT spot | 0% | 7.5% | |
| Added | Bybit GASUSDT GAS | Gate GAS_USDT spot | 0% | 0.3% | |
| Added | Bybit GASUSDT GAS | KuCoin GAS-USDT spot | 0% | 0.8% |
Method. Each exchange's public index-constituents API is read once an hour for every perpetual it lists. Added and removed constituents are always listed; weight moves only when they reach 5 percentage points. A removal is recorded only from a complete snapshot. The first snapshot of each perp is the starting composition, not a change. Event ids (the row anchors and RSS guids) never change.
How to read it. Index constituents decide which spot prices feed a perp's mark price. Exchanges sometimes change constituents before other listing changes, but a removal on its own says only that the index stopped using that source. Constituent changes as published by each exchange, detected by hourly snapshot. A removal is not a delisting.
Index constituent changes FAQ
What is a perpetual's index?
Exchanges do not liquidate on their own last traded price. They use a mark price built from an index: a weighted average of spot prices from several exchanges, with outlier guards. Each exchange publishes the current constituents and weights through its public API.
How are changes detected?
Hourly snapshots of each exchange's index constituents API. A constituent is added when it first appears, removed when a complete snapshot no longer lists it (a failed or partial snapshot never counts as a removal), and reweighted when its weight moves at least 5 percentage points. A change can be up to an hour old when it shows here.
Does a removed constituent mean the coin is leaving that exchange?
No. Exchanges add and drop index sources for many reasons: thin or stale books, a source exchange's maintenance, or a routine rebalance. A removal here only means the index stopped using that source.
Is there an RSS feed?
Yes: /mark-price-xray/changes/rss.xml carries the newest 50 changes and accepts the same ?venue= filter.