Skip to main content

Deployment Requirements

Requirements and configuration for deploying the CoW Protocol Watch Tower.

Prerequisites

To run your own watch-tower instance, you’ll need:
  • An RPC node connected to one or more supported networks:
    • Ethereum mainnet
    • Arbitrum One
    • Gnosis Chain
    • Base
    • Sepolia (testnet)
    • Avalanche
    • Polygon
    • Linea
    • Plasma
    • Ink
  • Internet access to the CoW Protocol OrderBook API
Conditional order types may consume considerable RPC calls. Ensure your RPC provider can handle the load, or consider running your own node.

Deployment block numbers

The deployment-block parameter references the block number where the ComposableCoW contract deployed to each chain. Watch-tower optimization relies on this to fetch events only after deployment. Refer to Deployed Contracts for deployment blocks on each chain.

Example deployment blocks

NetworkDeployment Block
Mainnet17883049
Sepolia8468184
Arbitrum One343493668
Base31084679
Gnosis Chain40394915
Avalanche63235114
Polygon72315184
Linea25028604
Plasma4810535
Ink37142449
These block numbers are examples from the config file. Always verify the latest deployment blocks in the Composable CoW repository.

Page size configuration

The pageSize option specifies how many blocks to fetch when querying historical events via eth_getLogs.

Default setting

The default is 5000, which represents the maximum blocks fetchable in a single Infura request.

Custom RPC nodes

When running against your own RPC node, set pageSize to 0 to retrieve all blocks in one request instead of multiple paginated requests.
{
  "networks": [
    {
      "name": "mainnet",
      "rpc": "https://your-rpc-endpoint.com",
      "deploymentBlock": 17883049,
      "pageSize": 0
    }
  ]
}
Adjust pageSize based on your provider’s limits. Some providers enforce stricter limits than Infura’s 5000-block threshold.

Configuration file

The watch-tower requires a JSON configuration file specifying:
  • Network configurations
  • RPC endpoints
  • Deployment blocks
  • Filter policies (optional)
See the config.json.example file in the repository for a complete configuration template with all supported networks.
Last modified on March 4, 2026