# CCIP Service Limits (EVM)
Source: https://docs.chain.link/ccip/service-limits/evm
Last Updated: 2025-05-19

> For the complete documentation index, see [llms.txt](/llms.txt).

## Mainnet

> **NOTE: Increase the gas limit**
>
> If you consistently need more than 3M for your use case, please reach out to your Chainlink Labs point of contact or
> contact us via this [contact form](https://chain.link/ccip-contact).

> **NOTE: Need more gas for releaseOrMint?**
>
> If you're building a token pool where the combined execution consumes more than 90,000 gas—including the `balanceOf`
> function calls (from the token contract) before and after minting/releasing, and the `releaseOrMint` function (from
> the token pool contract)—and you cannot optimize it further, please contact your Chainlink Labs point of contact or
> use this [contact form](https://chain.link/ccip-contact?v=Tokens:%20Gas%20limit%20update) to request assistance.

| Item                           | Description                                                                                                                                                                                                                                                                                                                                                                                                                         | Limit        |
| ------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------ |
| Maximum message `data` length  | `data` payload sent within the [CCIP message](/ccip/api-reference/evm/v1.6.1/client#evm2anymessage)                                                                                                                                                                                                                                                                                                                                 | 30 kilobytes |
| Message Execution Gas Limit    | User specified [gas limit](/ccip/api-reference/evm/v1.6.1/client#genericextraargsv2)<br /> <br /> Exception: Lanes originating from CORN have a maximum gas limit of 500,000.                                                                                                                                                                                                                                                       | 3,000,000    |
| Maximum number of tokens       | Maximum number of distinct tokens a user can transfer in a single transaction.                                                                                                                                                                                                                                                                                                                                                      | 1            |
| Token Pool Execution Gas Limit | Maximum gas for executing the combined steps in token pools during cross-chain transfers, including: (1) `balanceOf` check before minting/releasing, (2) `releaseOrMint` function, and (3) `balanceOf` check after minting/releasing. For more details on building custom token pools and handling gas constraints, refer to the [Token Pools documentation](/ccip/concepts/cross-chain-token/evm/token-pools#common-requirements). | 90,000       |

## Testnet

| Item                           | Description                                                                                                                                                                                                                                                                                                                                                                                                                         | Limit        |
| ------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------ |
| Maximum message `data` length  | `data` payload sent within the [CCIP message](/ccip/api-reference/evm/v1.6.1/client#evm2anymessage)                                                                                                                                                                                                                                                                                                                                 | 30 kilobytes |
| Message Execution Gas Limit    | User specified [gas limit](/ccip/api-reference/evm/v1.6.1/client#genericextraargsv2)<br /> <br /> Exception: Lanes originating from CORN have a maximum gas limit of 500,000.                                                                                                                                                                                                                                                       | 3,000,000    |
| Maximum number of tokens       | Maximum number of distinct tokens a user can transfer in a single transaction                                                                                                                                                                                                                                                                                                                                                       | 1            |
| Token Pool Execution Gas Limit | Maximum gas for executing the combined steps in token pools during cross-chain transfers, including: (1) `balanceOf` check before minting/releasing, (2) `releaseOrMint` function, and (3) `balanceOf` check after minting/releasing. For more details on building custom token pools and handling gas constraints, refer to the [Token Pools documentation](/ccip/concepts/cross-chain-token/evm/token-pools#common-requirements). | 90,000       |

## Network-Specific Limitations

Some EVM networks have additional constraints beyond the standard limits above:

| Network  | Special Considerations                            | Documentation                                                |
| -------- | ------------------------------------------------- | ------------------------------------------------------------ |
| HyperEVM | Data availability limitations during RPC downtime | [HyperEVM Service Limits](/ccip/service-limits/evm/hyperevm) |

## Private / Permissioned Network Limitations

Some CCIP integrations are with private / permissioned networks (see list below). CCIP's integration with these networks depends on a single centralized RPC provider rather than a distinct set of local nodes or RPCs utililized by node operators. As a result:

- Transaction data sourced from these networks cannot be independently verified across multiple nodes in the same way as public chains.
- A compromised RPC provider could manipulate transaction data, up to and including theft of bridged funds.
- Anomalous or malicious activity on these networks may be harder to detect and alert on, as monitoring infrastructure relies on the same private RPC layer.

Developers and integrators building CCIP integrations on private / permissioned networks should review these constraints carefully and implement additional safeguards appropriate to their application's use case. These include, but not limited to: more conservative token pool rate limits, monitoring of messages and token transfers, and emergency preparedness.

Private / permissioned networks:

- [Memento](/ccip/directory/mainnet/chain/memento-mainnet)
- [Henesys](/ccip/directory/mainnet/chain/nexon-mainnet-henesys)