Skip to content

Commit 67bf26e

Browse files
fix: canto-rpc down to 1 provider (drpc keyed, ankr/publicnode dropped canto) (#1771)
1 parent be79ac5 commit 67bf26e

1 file changed

Lines changed: 18 additions & 87 deletions

File tree

benchmarks/canto-rpc.yml

Lines changed: 18 additions & 87 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,8 @@ slug: canto-rpc
44
number: "146"
55
title: Fastest free Canto RPC, live no-key endpoint latency
66
seo_title: "Fastest free Canto RPC 2026"
7-
seo_description: "{{best_name}} leads free Canto RPC at {{best_p50}} (eth_getBlockByNumber p50, 24h). 4 no-key providers measured every 60s from 3 regions."
8-
subtitle: HTTP round-trip latency for eth_getBlockByNumber against every free, no-key public Canto RPC endpoint, audited every 60 seconds from 3 regions.
7+
seo_description: "{{best_name}} leads free Canto RPC at {{best_p50}} (eth_getBlockByNumber p50, 24h). 1 no-key provider measured every 60s from 3 regions."
8+
subtitle: HTTP round-trip latency for eth_getBlockByNumber against the free, no-key public Canto RPC endpoint, audited every 60 seconds from 3 regions.
99

1010
category: RPCs
1111
status: live
@@ -14,40 +14,40 @@ unit: ms
1414
higher_is_better: false
1515

1616
seo_intro: |
17-
Canto is a permissionless EVM L1 (chain 7700) built around free public infrastructure; its DEX, lending market, and stablecoin are protocol primitives rather than third-party dApps. The official endpoint (`canto.gravitychain.io`) is maintained by Plex, with dRPC, PublicNode, and Ankr providing additional keyless alternatives probed every 60 seconds from three regions.
17+
Canto is a permissionless EVM L1 (chain 7700) built around free public infrastructure; its DEX, lending market, and stablecoin are protocol primitives rather than third-party dApps. The official endpoint (`canto.gravitychain.io`) is maintained by Plex and is the only keyless endpoint sustaining continuous probing from all three regions.
1818
1919
abstract: |
2020
Per-chain member of the RPC latency cluster, extended to Canto.
2121
We measure the round-trip latency of a single, identical RPC call
22-
(`eth_getBlockByNumber`) against every no-key public Canto endpoint
23-
that sustains continuous probing, 4 providers at launch,
24-
every 60 seconds, from us-east, eu-west and Singapore. The harness
25-
classifies every response (ok / http_err / jsonrpc_err / stale /
26-
timeout) so the leaderboard rewards sustained availability rather than
27-
fast error messages. The cross-chain view lives on the parent
28-
`rpc-capabilities` benchmark; this page is the Canto-scoped answer
29-
with per-region breakdowns as a first-class dimension.
22+
(`eth_getBlockByNumber`) against the no-key public Canto endpoint
23+
(Canto Official, canto.gravitychain.io), every 60 seconds, from
24+
us-east, eu-west and Singapore. The harness classifies every response
25+
(ok / http_err / jsonrpc_err / stale / timeout) so the leaderboard
26+
rewards sustained availability rather than fast error messages.
27+
The cross-chain view lives on the parent `rpc-capabilities` benchmark;
28+
this page is the Canto-scoped answer with per-region breakdowns
29+
as a first-class dimension.
3030
3131
methodology:
3232
- "Cadence: every 60 seconds per provider, from each of 3 probe regions (us-east Virginia, eu-west Amsterdam, sgp Singapore). Headline p50/p90/p99 aggregate across all 3 regions via Prometheus `avg(quantile_over_time(...))`; per-region breakdowns are first-class on this page via the region tabs."
3333
- "Payload: `{\"jsonrpc\":\"2.0\",\"id\":<rotating>,\"method\":\"eth_getBlockByNumber\",\"params\":[\"latest\",false]}`. Plain HTTP POST, identical for every endpoint, no API key in any request."
3434
- "Latency: client-side round-trip delta in milliseconds, exposed as both a gauge and a histogram (buckets 50 ms → 10 s), so percentiles are computed via Prometheus `quantile_over_time` over the last 24 hours."
3535
- "Call-result classification: `ok` (HTTP 200 + non-empty result), `http_err`, `jsonrpc_err` (HTTP 200 carrying an error body), `stale` (more than 20 blocks behind the cross-provider tip), `timeout`."
3636
- "This page is part of the per-chain RPC cluster derived from the cross-chain [rpc-capabilities](https://openchainbench.com/benchmarks/rpc-capabilities) benchmark; the identical harness, cadence and exclusion rules apply on every chain."
37-
- "Chain scope: every query on this page is pinned to `chain=\"canto\"`. Provider coverage at launch: 4 no-key endpoints (Canto Official, dRPC, PublicNode, Ankr)."
37+
- "Chain scope: every query on this page is pinned to `chain=\"canto\"`. Provider coverage: 1 no-key endpoint (Canto Official). dRPC requires an API key; Ankr and PublicNode dropped free Canto support."
3838

3939
findings:
40-
- "{{best_name}} currently leads free Canto RPC at {{best_p50}} (`eth_getBlockByNumber` p50, 24h) across 4 measured providers."
40+
- "{{best_name}} currently leads free Canto RPC at {{best_p50}} (`eth_getBlockByNumber` p50, 24h)."
4141

4242
faq:
4343
- q: "What is the fastest free Canto RPC right now?"
44-
a: "{{best_name}} currently leads at {{best_p50}} (`eth_getBlockByNumber` p50 over the last 24h), measured against 4 no-key providers probed every 60 seconds from us-east, eu-west and Singapore. The leaderboard re-sorts continuously against fresh Prometheus samples."
44+
a: "{{best_name}} currently leads at {{best_p50}} (`eth_getBlockByNumber` p50 over the last 24h), measured every 60 seconds from us-east, eu-west and Singapore. The leaderboard re-sorts continuously against fresh Prometheus samples."
4545
- q: "Which Canto RPCs work without an API key?"
46-
a: "4 endpoints sustain continuous keyless probing at launch: Canto Official, dRPC, PublicNode, Ankr. Every listed endpoint was live-verified before inclusion."
47-
- q: "Does the fastest Canto RPC change by region?"
48-
a: "Often. The region tabs at the top of the page re-scope every number to a single origin; pick the one closest to where your requests originate."
46+
a: "The Canto Official endpoint (`canto.gravitychain.io`, operated by Plex) is the only keyless endpoint sustaining probes from all 3 regions. dRPC requires an API key; Ankr and PublicNode have dropped free Canto support."
47+
- q: "Does the Canto RPC latency change by region?"
48+
a: "Yes. The region tabs at the top of the page re-scope every number to a single origin; pick the one closest to where your requests originate."
4949
- q: "How is Canto RPC latency measured here?"
50-
a: "One identical JSON-RPC POST (`eth_getBlockByNumber`) every 60 seconds against each provider from each of 3 regions. Responses are classified so an endpoint stuck on an old head or returning errors is never ranked as fastest."
50+
a: "One identical JSON-RPC POST (`eth_getBlockByNumber`) every 60 seconds against the provider from each of 3 regions. Responses are classified so an endpoint stuck on an old head or returning errors is never ranked as fastest."
5151

5252
source: https://github.com/ChainBench/OpenChainBench/tree/main/harnesses/rpc-capabilities
5353

@@ -87,72 +87,3 @@ providers:
8787
- region: ap-southeast
8888
p50: avg(ocb:rpc_latency_milliseconds:p50_24h{provider="canto-official", chain="canto", region="sgp"})
8989
series: avg_over_time(rpc_latency_milliseconds{provider="canto-official", chain="canto", region="sgp"}[1h])
90-
91-
- slug: drpc
92-
name: dRPC
93-
tag: Decentralized RPC mesh, consensus-checked
94-
formula: "50th percentile over 24h of client-side round-trip latency (ms) for a single `eth_getBlockByNumber` POST sent every 60s from 3 regions (us-east + eu-west + sgp) to dRPC's no-key Canto endpoint."
95-
queries:
96-
p50: avg(ocb:rpc_latency_milliseconds:p50_24h{provider="drpc", chain="canto"})
97-
p90: avg(ocb:rpc_latency_milliseconds:p90_24h{provider="drpc", chain="canto"})
98-
p99: avg(ocb:rpc_latency_milliseconds:p99_24h{provider="drpc", chain="canto"})
99-
mean: avg(ocb:rpc_latency_milliseconds:mean_24h{provider="drpc", chain="canto"})
100-
success: sum(ocb:rpc_call:ok_rate_24h{provider="drpc", chain="canto"}) / sum(ocb:rpc_call:rate_24h{provider="drpc", chain="canto"})
101-
sample_size: sum(ocb:rpc_call:increase_24h{provider="drpc", chain="canto"})
102-
series: avg(avg_over_time(rpc_latency_milliseconds{provider="drpc", chain="canto"}[1h]))
103-
regions:
104-
- region: us-east
105-
p50: avg(ocb:rpc_latency_milliseconds:p50_24h{provider="drpc", chain="canto", region="us-east"})
106-
series: avg_over_time(rpc_latency_milliseconds{provider="drpc", chain="canto", region="us-east"}[1h])
107-
- region: eu-west
108-
p50: avg(ocb:rpc_latency_milliseconds:p50_24h{provider="drpc", chain="canto", region="eu-west"})
109-
series: avg_over_time(rpc_latency_milliseconds{provider="drpc", chain="canto", region="eu-west"}[1h])
110-
- region: ap-southeast
111-
p50: avg(ocb:rpc_latency_milliseconds:p50_24h{provider="drpc", chain="canto", region="sgp"})
112-
series: avg_over_time(rpc_latency_milliseconds{provider="drpc", chain="canto", region="sgp"}[1h])
113-
114-
- slug: publicnode
115-
name: PublicNode
116-
tag: Allnodes-operated, 70+ chains, archive on most
117-
formula: "50th percentile over 24h of client-side round-trip latency (ms) for a single `eth_getBlockByNumber` POST sent every 60s from 3 regions (us-east + eu-west + sgp) to PublicNode's no-key Canto endpoint."
118-
queries:
119-
p50: avg(ocb:rpc_latency_milliseconds:p50_24h{provider="publicnode", chain="canto"})
120-
p90: avg(ocb:rpc_latency_milliseconds:p90_24h{provider="publicnode", chain="canto"})
121-
p99: avg(ocb:rpc_latency_milliseconds:p99_24h{provider="publicnode", chain="canto"})
122-
mean: avg(ocb:rpc_latency_milliseconds:mean_24h{provider="publicnode", chain="canto"})
123-
success: sum(ocb:rpc_call:ok_rate_24h{provider="publicnode", chain="canto"}) / sum(ocb:rpc_call:rate_24h{provider="publicnode", chain="canto"})
124-
sample_size: sum(ocb:rpc_call:increase_24h{provider="publicnode", chain="canto"})
125-
series: avg(avg_over_time(rpc_latency_milliseconds{provider="publicnode", chain="canto"}[1h]))
126-
regions:
127-
- region: us-east
128-
p50: avg(ocb:rpc_latency_milliseconds:p50_24h{provider="publicnode", chain="canto", region="us-east"})
129-
series: avg_over_time(rpc_latency_milliseconds{provider="publicnode", chain="canto", region="us-east"}[1h])
130-
- region: eu-west
131-
p50: avg(ocb:rpc_latency_milliseconds:p50_24h{provider="publicnode", chain="canto", region="eu-west"})
132-
series: avg_over_time(rpc_latency_milliseconds{provider="publicnode", chain="canto", region="eu-west"}[1h])
133-
- region: ap-southeast
134-
p50: avg(ocb:rpc_latency_milliseconds:p50_24h{provider="publicnode", chain="canto", region="sgp"})
135-
series: avg_over_time(rpc_latency_milliseconds{provider="publicnode", chain="canto", region="sgp"}[1h])
136-
137-
- slug: ankr
138-
name: Ankr
139-
tag: Multi-cloud RPC network, 40+ chains, keyless tier
140-
formula: "50th percentile over 24h of client-side round-trip latency (ms) for a single `eth_getBlockByNumber` POST sent every 60s from 3 regions (us-east + eu-west + sgp) to Ankr's no-key Canto endpoint."
141-
queries:
142-
p50: avg(ocb:rpc_latency_milliseconds:p50_24h{provider="ankr", chain="canto"})
143-
p90: avg(ocb:rpc_latency_milliseconds:p90_24h{provider="ankr", chain="canto"})
144-
p99: avg(ocb:rpc_latency_milliseconds:p99_24h{provider="ankr", chain="canto"})
145-
mean: avg(ocb:rpc_latency_milliseconds:mean_24h{provider="ankr", chain="canto"})
146-
success: sum(ocb:rpc_call:ok_rate_24h{provider="ankr", chain="canto"}) / sum(ocb:rpc_call:rate_24h{provider="ankr", chain="canto"})
147-
sample_size: sum(ocb:rpc_call:increase_24h{provider="ankr", chain="canto"})
148-
series: avg(avg_over_time(rpc_latency_milliseconds{provider="ankr", chain="canto"}[1h]))
149-
regions:
150-
- region: us-east
151-
p50: avg(ocb:rpc_latency_milliseconds:p50_24h{provider="ankr", chain="canto", region="us-east"})
152-
series: avg_over_time(rpc_latency_milliseconds{provider="ankr", chain="canto", region="us-east"}[1h])
153-
- region: eu-west
154-
p50: avg(ocb:rpc_latency_milliseconds:p50_24h{provider="ankr", chain="canto", region="eu-west"})
155-
series: avg_over_time(rpc_latency_milliseconds{provider="ankr", chain="canto", region="eu-west"}[1h])
156-
- region: ap-southeast
157-
p50: avg(ocb:rpc_latency_milliseconds:p50_24h{provider="ankr", chain="canto", region="sgp"})
158-
series: avg_over_time(rpc_latency_milliseconds{provider="ankr", chain="canto", region="sgp"}[1h])

0 commit comments

Comments
 (0)