Swolecharts
Live crypto data · 10 exchanges

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.

Last 30 daysSource: exchange public APIsHourly snapshots, UTCAs of 15:38 UTC

Constituent changes as published by each exchange, detected by hourly snapshot. A removal is not a delisting. RSS feed.

Binance
569 / 571
perps, last snapshot complete2026-10-01 15:22Z
Bitget
813 / 813
perps, last snapshot complete2026-10-01 14:39Z
Bybit
783 / 783
perps, last snapshot complete2026-10-01 14:37Z
OKX
495 / 495
perps, last snapshot complete2026-10-01 15:27Z

Constituent changes · Binance · last 30 days

newest first · times in UTC

Exchange: All · Binance · OKX · Bybit · Bitget   Change: All · Added · Removed · Reweighted

Time (UTC) Change Index Constituent Weight before Weight after
Reweighted Binance ZKPUSDT ZKP Binance ZKPUSDT spot 51% 43%
Added Binance ZKPUSDT ZKP Coinbase ZKP-USD*uindex(USDUSDT) spot 0% 16%
Added Binance WETUSDT WET Coinbase WET-USD*uindex(USDUSDT) spot 0% 17%
Reweighted Binance GRVTUSDT GRVT binance_alpha GRVTUSDT unknown 20% 25%
Removed Binance GRVTUSDT GRVT Coinbase GRVT-USD*uindex(USDUSDT) spot 20% 0%
Reweighted Binance GRVTUSDT GRVT OKX GRVT-USDT spot 20% 25%
Reweighted Binance FIGHTUSDT FIGHT binance_alpha FIGHTUSDT unknown 50% 40%
Reweighted Binance FIGHTUSDT FIGHT Bybit FIGHTUSDT spot 25% 20%
Added Binance FIGHTUSDT FIGHT Coinbase FIGHT-USD*uindex(USDUSDT) spot 0% 20%
Reweighted Binance DOTUSDT DOT Binance DOTUSDT spot 49% 43%
Added Binance DOTUSDT DOT Coinbase DOT-USDT spot 0% 13%
Reweighted Binance CELRUSDT CELR Binance CELRUSDT spot 59% 50%
Added Binance CELRUSDT CELR Coinbase CELR-USD*uindex(USDUSDT) spot 0% 15%
Reweighted Binance BNTUSDT BNT Binance BNTUSDT spot 57% 69%
Removed Binance BNTUSDT BNT Coinbase BNT-USD*uindex(USDUSDT) spot 17% 0%
Reweighted Binance BLURUSDT BLUR Binance BLURUSDT spot 56% 48%
Added Binance BLURUSDT BLUR Coinbase BLUR-USD*uindex(USDUSDT) spot 0% 14%
Reweighted Binance AWEUSDT AWE Binance AWEUSDT spot 56% 68%
Removed Binance AWEUSDT AWE Coinbase AWE-USD*uindex(USDUSDT) spot 17% 0%
Reweighted Binance ZKPUSDT ZKP Binance ZKPUSDT spot 43% 51%
Removed Binance ZKPUSDT ZKP Coinbase ZKP-USD*uindex(USDUSDT) spot 16% 0%
Removed Binance WETUSDT WET Coinbase WET-USD*uindex(USDUSDT) spot 17% 0%
Added Binance INXUSDT INX binance_alpha INXUSDT unknown 0% 49%
Reweighted Binance INXUSDT INX Binance futures INXUSDT perp 23% 7.4%
Added Binance INXUSDT INX Coinbase INX-USD*uindex(USDUSDT) spot 0% 19%
Reweighted Binance INXUSDT INX Gate INX_USDT spot 15% 4.9%
Reweighted Binance INXUSDT INX MEXC INXUSDT spot 58% 19%
Reweighted Binance FIGHTUSDT FIGHT binance_alpha FIGHTUSDT unknown 40% 50%
Reweighted Binance FIGHTUSDT FIGHT Bybit FIGHTUSDT spot 20% 25%
Removed Binance FIGHTUSDT FIGHT Coinbase FIGHT-USD*uindex(USDUSDT) spot 20% 0%
Reweighted Binance DOTUSDT DOT Binance DOTUSDT spot 43% 49%
Removed Binance DOTUSDT DOT Coinbase DOT-USDT spot 13% 0%
Reweighted Binance CVCUSDT CVC Binance CVCUSDT spot 71% 59%
Added Binance CVCUSDT CVC Coinbase CVC-USD*uindex(USDUSDT) spot 0% 18%
Reweighted Binance CTRUSDT CTR binance_alpha CTRUSDT unknown 45% 31%
Added Binance CTRUSDT CTR Coinbase CTR-USD*uindex(USDUSDT) spot 0% 31%
Reweighted Binance CTRUSDT CTR Gate CTR_USDT spot 27% 19%
Reweighted Binance CELRUSDT CELR Binance CELRUSDT spot 50% 59%
Removed Binance CELRUSDT CELR Coinbase CELR-USD*uindex(USDUSDT) spot 15% 0%
Reweighted Binance AGLDUSDT AGLD Binance AGLDUSDT spot 59% 50%
Added Binance AGLDUSDT AGLD Coinbase AGLD-USD*uindex(USDUSDT) spot 0% 15%
Reweighted Binance ZKPUSDT ZKP Binance ZKPUSDT spot 51% 43%
Added Binance ZKPUSDT ZKP Coinbase ZKP-USD*uindex(USDUSDT) spot 0% 16%
Removed Binance SOONUSDT SOON aster SOONUSDT unknown 16% 0%
Added Binance SOLUSDC SOL Bitget SOLUSDC spot 0% 7.6%
Added Binance MOODENGUSDT MOODENG Coinbase MOODENG-USD*uindex(USDUSDT) spot 0% 26%
Reweighted Binance MOODENGUSDT MOODENG OKX MOODENG-USDT spot 35% 26%
Added Binance LAYERUSDT LAYER binance_cross2 LAYERUSDC*USDCUSDT cross 0% 4.6%
Reweighted Binance IRYSUSDT IRYS binance_alpha IRYSUSDT unknown 34% 29%
Added Binance IRYSUSDT IRYS Coinbase IRYS-USD*uindex(USDUSDT) spot 0% 17%

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.