Choose a relayer
Hermes is the relayer the Hub team tests against. Maintained by Informal Systems. Latest release v1.13.3 (2025-09-03). Repository active. Checked 2026-10-15. Hermes v1.13.1 added support for ibc-go v10 and Cosmos SDK 0.53 chains. The Hub runs both. Documentation is in the Hermes documentation. Installation steps are in the Hermes quick start. The Go relayer (cosmos/relayer) is archived. Maintained by Strangelove until 2025. Latest release v2.6.0 (2025-01-10). Repository archived on 2025-04-16. Checked 2026-10-15. Do not start new deployments on it.
The IBC relayer guide covers paths, clients, and packet flow for any chain. This page only adds what is specific to the Hub.
Hub chain entry for Hermes
The chain block in~/.hermes/config.toml for cosmoshub-4, with the values that depend on Hub parameters:
gas_price: the Hub’s feemarket module sets a floor of 0.005 uatom per gas. The fee market raises it under load. Settingdynamic_gas_price = { enabled = true, multiplier = 1.1, max = 0.6 }makes Hermes query the current price instead of using the fixed one. The queries are on Fee market.trusting_period: must be below the unbonding period of 21 days. The usual value is 14 days, which is two thirds of the unbonding period.max_gas: the Hub’s block gas limit is 75,000,000. A single relay transaction that asks for more than that is rejected by the mempool.packet_filter: relay only the channels you intend to. Clearing every channel on the Hub is expensive.
Keys and funding
Hermes needs a Hub account with uatom for fees:m/44'/118'/0'/0/0, the same path gaiad keys add uses. A relayer address can therefore be checked with gaiad keys parse or funded from any wallet. The protocol does not reimburse relaying on the Hub. Because the ICS-29 (Interchain Standard 29) fee middleware is not wired in gaia v28.3.1, every relay transaction costs the relayer. Budget on the order of 0.01 ATOM per packet at the floor price, and more when the base fee rises.
Find channels and check the counterparty
Hub channels are documented in the chain registry _IBC directory, one file per chain pair. For Osmosis,cosmoshub-osmosis.json gives channel-141 on the Hub side and channel-0 on Osmosis. Confirm from the chain before relaying:
STATE_OPEN, with counterparty channel-0, connection connection-257, and client 07-tendermint-259. Pending packets to clear are listed with hermes query packet pending --chain cosmoshub-4 --port transfer --channel channel-141.
Rate limits can reject your packet
The Hub runs the rate limiting middleware. A transfer that would push a channel past its quota is rejected on the Hub side with a rate limit error. The relayer then sees the receive or acknowledgement fail. It is not a relayer bug. The packet goes through once the window moves.channel-141 at 5 percent of supply per 24 hours in each direction, and uatom on channels 190, 220, 235, 343, 391, and 569 at 1 percent per 24 hours. The second query shows how much of the quota is used in the current window. Middleware details are at Rate limit middleware.
IBC v2 clients are permissioned
The Hub has IBC v2 clients, for example an Ethereum light client as08-wasm-1369. Relaying on a v2 client is restricted to an allow list that the client’s creator set:
allowed_relayers, the addresses that may submit packets on that client (six on 2026-10-15). The third returns the next sequence (11342). An address not on the list gets its relay transaction rejected. Running a v2 relayer against the Hub therefore starts with the team that owns the client, not with a config file. Protocol background: IBC v2 spec and the IBC v2 announcement.
Verify
Start Hermes with the Hub chain and one counterparty configured. Then check both health and a cleared packet:cosmoshub-4: performed health check with no warnings about the gRPC or websocket endpoints. A trusting_period warning means the value is above two thirds of the unbonding period. The clear command ends with a summary of relayed RecvPacket and AcknowledgePacket messages, or with No pending packets on an idle channel. The transactions appear under the relayer address:
Next
- Fee market for how the gas price moves.
- Packet forward middleware and Callbacks for the other middleware on the Hub’s transfer stack.
- Hermes troubleshooting and telemetry.