GMX Guide

Data & developers

Reading time
4 minutes
Last source check
July 26, 2026

GMX contract addresses

GMX V2 uses several contracts on each supported network. There is no single address that represents every GMX market or operation. DataStore holds protocol configuration, Reader exposes convenient read methods and ExchangeRouter is part of the transaction path.

The addresses below were checked against the official GMX contract-address documentation on July 26, 2026. GMX explicitly warns that logic contract addresses can change. Verify the official page, chain ID and block explorer immediately before an integration or transaction.

In this guide
  1. 01Core GMX V2 addresses
  2. 02What DataStore and RoleStore do
  3. 03What Reader and ExchangeRouter do
  4. 04Verify an address before use
  5. 05GMX token address is a separate question
  6. 06Approvals and transaction safety
  7. 07Maintain an address registry

Key takeaways

  1. 01GMX V2 uses several contracts, not one universal address.
  2. 02DataStore and RoleStore are permanent; logic addresses can change.
  3. 03Verify the full address, network and official documentation before use.
  4. 04The GMX token and GM market tokens are separate from protocol routers.
  5. 05Pin reviewed addresses by chain ID and fail closed on unknown networks.
01

Core GMX V2 addresses

DataStore and RoleStore are identified by GMX as permanent deployments. Reader and ExchangeRouter are logic-facing contracts and can be replaced as the protocol changes. Treat this table as a reviewed reference, not an automatic source of trust for a future transaction.

Address matching is case-insensitive on EVM chains, but checksummed display helps catch copying errors. Never truncate an address in deployment configuration.

Official GMX V2 core contracts reviewed July 26, 2026
NetworkContractAddress
ArbitrumDataStore0xFD70de6b91282D8017aA4E741e9Ae325CAb992d8
ArbitrumRoleStore0x3c3d99FD298f679DBC2CEcd132b4eC4d0F5e6e72
ArbitrumReader0x470fbC46bcC0f16532691Df360A07d8Bf5ee0789
ArbitrumExchangeRouter0x1C3fa76e6E1088bCE750f23a5BFcffa1efEF6A41
AvalancheDataStore0x2F0b22339414ADeD7D5F06f9D604c7fF5b2fe3f6
AvalancheRoleStore0xA44F830B6a2B6fa76657a3B92C1fe74fcB7C6AfD
AvalancheReader0x62Cb8740E6986B29dC671B2EB596676f60590A5B
AvalancheExchangeRouter0x8f550E53DFe96C055D5Bdb267c21F268fCAF63B2
MegaETHDataStore0xE43C7B694f6b652a9F4A0f275C008d18758Dce35
MegaETHRoleStore0xecA46636BDDbb4F451ca2B7062C7E36744934655
MegaETHReader0x0f038EB4a38B08cd3c937a3256b51aa01904a684
MegaETHExchangeRouter0x73B3593F01CF8e573a412D1d0c972b581794ebE0
02

What DataStore and RoleStore do

DataStore is the central key-value state and configuration store used by GMX V2 contracts. Market parameters, feature flags and many protocol values are addressed through derived keys. Reading it correctly requires the current key definitions and units, not only the address.

RoleStore manages protocol roles and permissions. Its presence does not mean a user should approve tokens to it or call it during ordinary trading. GMX marks both DataStore and RoleStore as permanent addresses, which makes them useful anchors when validating a deployment set.

03

What Reader and ExchangeRouter do

Reader aggregates common view operations so clients can retrieve markets, positions and related state with fewer low-level calls. It is a convenience contract. Its return types and associated address should match the frontend-integration or SDK version used by the application.

ExchangeRouter participates in creating and managing exchange actions. Calling it safely requires the correct router, vault relationships, callback rules, execution fee and encoded parameters. Copying the address into a generic contract interface is not a complete integration.

04

Verify an address before use

Begin on the official docs.gmx.io contract-address page. Select the exact network and compare the full address character by character. Confirm the wallet network and chain ID. Then open the address in that network's established block explorer and inspect whether the contract is verified and linked to the expected implementation.

For software deployments, pin the reviewed addresses in version-controlled configuration and require a human-reviewed change to update them. A live page scrape should never update transaction destinations automatically.

  • Use docs.gmx.io, not a search-result snippet or social post.
  • Verify all 42 address characters and the intended network.
  • Check proxy and implementation relationships where applicable.
  • Compare the ABI source with the integration documentation.
  • Simulate a read or transaction before requesting a user signature.
05

GMX token address is a separate question

The GMX governance token address is not the ExchangeRouter or a GM market token. On Arbitrum, the GMX token address documented by GMX is 0xfc5A1A6EB076a2C7aD06eD22C90d7E710E35ad0a. Avalanche and Solana use their own documented token addresses.

A GM liquidity token is also market-specific. Identify it through the official market catalog and preserve the network with the address. Sending assets to a contract because its label contains GMX can permanently lose funds.

06

Approvals and transaction safety

Token approval gives a spender the ability to move an allowed amount. Verify the spender contract and prefer a bounded amount when the workflow permits. Review existing approvals after testing and revoke those no longer required through a trusted tool.

A malicious interface can display the correct protocol name while asking for an unrelated signature. Read the wallet's chain, destination, function and value. Hardware-wallet confirmation is useful only when the screen details are understood.

07

Maintain an address registry

A production registry should key addresses by chain ID and contract role, with a reviewed date and documentation source. Reject startup when a required role is missing. Do not default from one network to another.

When GMX announces a contract update, compare the official docs, SDK configuration and frontend repository before changing the registry. Run read tests against both old and new sets, review permissions and simulate the intended transaction path.

Network-keyed address configurationtypescript
const gmxContracts = {
  42161: {
    dataStore: "0xFD70de6b91282D8017aA4E741e9Ae325CAb992d8",
    reader: "0x470fbC46bcC0f16532691Df360A07d8Bf5ee0789",
    exchangeRouter: "0x1C3fa76e6E1088bCE750f23a5BFcffa1efEF6A41",
  },
} as const;

// Fail closed when the connected chain is not explicitly configured.

Primary sources

These sources were checked on July 26, 2026. Protocol parameters can change.

  1. 01GMX Docs: Contract addresses
  2. 02GMX Docs: Frontend integration
  3. 03GMX Docs: GMX token
Read our verification methodology →

Referral disclosure

10% off eligible GMX position fees

Code PRO maps to GMX's tier-2 discount on eligible opening and closing position fees. The link is sponsored; the discount and protocol risks are unchanged.

Open GMX

Frequently asked questions

What is the GMX contract address on Arbitrum?

GMX V2 uses multiple contracts. The official Arbitrum DataStore is 0xFD70de6b91282D8017aA4E741e9Ae325CAb992d8, while Reader and ExchangeRouter have separate addresses.

What is the Arbitrum GMX token address?

The GMX tokenomics documentation lists 0xfc5A1A6EB076a2C7aD06eD22C90d7E710E35ad0a for the GMX token on Arbitrum.

Can GMX contract addresses change?

Yes. GMX states that logic contract addresses can change, while DataStore and RoleStore are permanent. Always recheck the official contract-address page.

Is ExchangeRouter the same on every network?

No. Arbitrum, Avalanche and MegaETH have different ExchangeRouter addresses. Configuration must be keyed by network or chain ID.

Is it safe to approve every GMX contract?

No. Approve only the verified spender required by the intended workflow, on the correct network, and use a bounded allowance where practical.

Continue learning

Related GMX guides