Skip to main content

Contract Addresses

All CoW Protocol smart contract addresses deployed across supported networks.

Core Contracts

All core contracts are deployed at identical addresses across all supported networks using CREATE2 deterministic deployment.
  • GPv2Settlement:
  • GPv2VaultRelayer:
  • GPv2AllowListAuthentication (Proxy):
The GPv2AllowListAuthentication implementation is at 0x9E7Ae8Bdba9AA346739792d219a808884996Db67.

Supported Networks

CoW Protocol is deployed on the following networks:
NetworkChain IDType
Ethereum1Mainnet
Gnosis Chain100Mainnet
Arbitrum One42161Layer 2
Base8453Layer 2
Polygon137Sidechain
Avalanche C-Chain43114Sidechain
BNB Smart Chain56Sidechain
Optimism10Layer 2 (bridge-only)
Linea59144Layer 2
Plasma9745Layer 2
Ink57073Layer 2
Sepolia11155111Testnet

Deprecated Networks

NetworkStatus
RinkebyDeprecated - not recommended for new integrations
GoerliDeprecated - not recommended for new integrations

Integration Example

import { domain } from "@cowprotocol/contracts";

// Ethereum Mainnet
const mainnetDomain = domain(1, "0x9008D19f58AAbD9eD0D60971565AA8510560ab41");

// Gnosis Chain
const gnosisDomain = domain(100, "0x9008D19f58AAbD9eD0D60971565AA8510560ab41");

// Arbitrum One
const arbitrumDomain = domain(42161, "0x9008D19f58AAbD9eD0D60971565AA8510560ab41");

Best Practices

  • Store addresses in configuration files rather than hardcoding them
  • Use environment variables for different networks
  • Validate addresses before executing transactions
  • Always verify contract addresses through official channels before integrating
Last modified on March 18, 2026