Cronos, EVM Chain for the Crypto.com Ecosystem
Build on Cronos with Dwellir's global RPC endpoints. Learn about network specifics, setup, tooling, and best practices for deploying EVM dApps on Cronos.
Cronos RPC
With Dwellir, you get access to our global Cronos network which always routes your API requests to the nearest available location, ensuring low latency and the fastest speeds.
Get your API keyWhy Build on Cronos?
Cronos is an EVM-compatible Layer 1 built with the Cosmos SDK and Tendermint consensus. It powers the Crypto.com ecosystem while offering a familiar developer experience for Solidity teams.
Production-Ready Performance
- ~5–6 second block times with immediate probabilistic finality
- Scales via IBC interoperability with the broader Cosmos network
- Optimized for low fees (fractions of a cent per transaction)
Strong Ecosystem & Liquidity
- Native integration with Crypto.com App and Exchange
- 1M+ unique addresses and $100M+ TVL across DeFi protocols
- Bridges to Ethereum, Cosmos Hub, and other chains via Gravity Bridge & IBC
Developer-Friendly Tooling
- Full Ethereum JSON-RPC surface, compatible with Hardhat, Foundry, Truffle
- EVM bytecode equivalence, deploy existing Solidity contracts without changes
- Rich tooling for gaming (Cronos Play), DeFi, and NFTs
Quick Start
Connect to Cronos with Dwellir's globally distributed infrastructure:
curl -sS -X POST https://api-cronos-mainnet-archive.n.dwellir.com/<API_Keys_Are_Not_Made_for_Bots> \ -H 'Content-Type: application/json' \ -d '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}'import { JsonRpcProvider } from 'ethers';const provider = new JsonRpcProvider( 'https://api-cronos-mainnet-archive.n.dwellir.com/<API_Keys_Are_Not_Made_for_Bots>');const latest = await provider.getBlockNumber();console.log('block', latest);import requestsurl = 'https://api-cronos-mainnet-archive.n.dwellir.com/<API_Keys_Are_Not_Made_for_Bots>'payload = { 'jsonrpc': '2.0', 'id': 1, 'method': 'eth_blockNumber', 'params': []}resp = requests.post(url, json=payload)print(resp.json())package mainimport ( "bytes" "fmt" "io" "net/http")func main() { url := "https://api-cronos-mainnet-archive.n.dwellir.com/<API_Keys_Are_Not_Made_for_Bots>" payload := []byte(`{"jsonrpc":"2.0","id":1,"method":"eth_blockNumber","params":[]}`) resp, err := http.Post(url, "application/json", bytes.NewBuffer(payload)) if err != nil { panic(err) } defer resp.Body.Close() body, _ := io.ReadAll(resp.Body) fmt.Println(string(body))}Cronos shared endpoints currently publish mainnet access in the public catalog. If you need a separate testnet endpoint, contact our team for provisioning.
Network Information
| Parameter | Value | Details |
|---|---|---|
| Mainnet Chain ID | 25 (0x19) | |
| Testnet Chain ID | 338 (0x152) | |
| Native Token | CRO | |
| Average Block Time | ~5.6 seconds |
Installation & Setup
import { JsonRpcProvider } from 'ethers';
const provider = new JsonRpcProvider('https://api-cronos-mainnet-archive.n.dwellir.com/YOUR_API_KEY');
const { chainId } = await provider.getNetwork();
console.log('Cronos chain ID:', chainId); // 25n
const block = await provider.getBlock('latest');
console.log('Latest block:', block.number);API Reference
Cronos exposes the standard Ethereum JSON-RPC interface. Method deep-dives will be added soon; use the dropdown for existing guides and compatibility hints.
Cronos shared RPC endpoints do not expose Optimism-style rollup helpers such as rollup_getInfo, rollup_gasPrices, or eth_estimateL1Fee.
Network Architecture
- Consensus: Proof-of-Authority (PoA) variant built on Tendermint for fast finality
- IBC Enabled: Interoperates with Cosmos Hub, Crypto.org, and other IBC networks
- Gravity Bridge: Facilitates asset transfers to/from Ethereum and other ERC-20 ecosystems
- Cronos Play: Middleware stack for game developers integrating Unity, Unreal, and C++ SDKs
Bridging Assets
- Cronos Bridge: bridge.cronos.org for ETH CRO transfers
- Gravity Bridge: Move ERC-20 tokens from Ethereum without centralized custody
- IBC Transfers: Swap assets between Cronos and Cosmos chains using IBC-enabled wallets like Keplr
Best Practices
- Gas Strategy: Fetch
eth_feeHistoryoreth_gasPriceto adapt to variable network load. - Unit Conventions: Gas is paid in CRO (18 decimals). Use
web3.utils.toWeior viem helpers to avoid rounding errors. - Monitor Finality: Wait for a few confirmations, usually 3 to 5 blocks, before acting on large-value transfers.
- Use IBC Safely: Confirm counterparty channel IDs when transferring assets cross-chain.
Tooling & Resources
Start building performant, EVM-compatible apps on Cronos with Dwellir's resilient infrastructure.
eth_coinbase
Check the legacy eth_coinbase compatibility method on Chiliz. Public endpoints may return an address, `unimplemented`, or another unsupported-method response depending on the client.
eth_estimateL1Fee - Cronos Compatibility Note
Cronos JSON-RPC compatibility note for eth_estimateL1Fee. Cronos shared RPC endpoints do not expose Optimism-style L1 fee oracles.

