{"slug":"l2-block-time","title":"Fastest L2 block time, live across Robinhood, Arbitrum, Base and 7 more","subtitle":"Wall-clock interval in milliseconds between two consecutive newHeads events on each L2 sequencer, refreshed continuously.","category":"Blockchains","metric":"Block time","unit":"ms","status":"live","higherIsBetter":false,"filters":null,"value":78.7295,"leader":{"name":"Robinhood Chain","slug":"robinhood","value":78.7295},"rankings":[{"name":"Robinhood Chain","slug":"robinhood","ms":{"p50":78.7295,"p90":128.339,"p99":194.98,"mean":99.8441},"successRate":98.6979,"sampleSize":853609},{"name":"Arbitrum One","slug":"arbitrum","ms":{"p50":328.273,"p90":468.282,"p99":499.784,"mean":250.634},"successRate":99.5833,"sampleSize":342337},{"name":"Mantle","slug":"mantle","ms":{"p50":1832.51,"p90":2749.96,"p99":2975.38,"mean":1999.5},"successRate":98.0556,"sampleSize":41336.2},{"name":"Base","slug":"base","ms":{"p50":1935.08,"p90":2785.16,"p99":2978.61,"mean":1999.59},"successRate":99.7222,"sampleSize":43071.5},{"name":"Optimism","slug":"optimism","ms":{"p50":1948.12,"p90":2801.58,"p99":2994.9,"mean":1999.73},"successRate":99.4444,"sampleSize":42887.4},{"name":"Taiko","slug":"taiko","ms":{"p50":1979.05,"p90":2816.2,"p99":3561.22,"mean":2019.66},"successRate":99.6528,"sampleSize":42554.4},{"name":"Blast","slug":"blast","ms":{"p50":1983.32,"p90":2796.93,"p99":2980.12,"mean":1999.54},"successRate":99.5139,"sampleSize":42886.4},{"name":"zkSync Era","slug":"zksync","ms":{"p50":4672.94,"p90":21723.3,"p99":56223.1,"mean":8470.45},"successRate":99.23610000000001,"sampleSize":10016.7},{"name":"Linea","slug":"linea","ms":{"p50":4928.68,"p90":15051.6,"p99":40298.2,"mean":7305.09},"successRate":99.5833,"sampleSize":11738},{"name":"Scroll","slug":"scroll","ms":{"p50":5692.91,"p90":29636.1,"p99":60000,"mean":10899.1},"successRate":99.0104,"sampleSize":7733.34}],"sparkline":[97.9686,97.6131,101.824,101.404,101.401,100.666,101.82,109.814,109.148,108.139,100.664,100.436,102.027,101.402,101.354,100.976,101.032,101.797,100.61,109.041,107.813,108.965,101.087,102.4,101.684,101.195,100.122,99.443,100.026,100.875,101.026,100.511,99.5097,100.055,100.548,100.301,101.056,100.577,101.831,102.315,105.191,106.108,104.361,102.002,101.645,103.494,104.268,103.192,102.013,101.851,101.964,102.705,102.311,102.132,100.783,99.8127,100.491,100.084,100.878,100.81,102.029,101.942,101.204,101.464,101.963,102.162,101.453,100.332,100.098,99.4195,101.228,101.585,102.429],"sampleSize":1438169.9399999997,"asOf":"2026-08-14T15:05:21.396Z","headline":"Robinhood Chain leads block time at 79 ms (p50, 24h) on Fastest L2 block time, live across Robinhood, Arbitrum, Base and 7 more.","quote":"Robinhood Chain leads block time at 79 ms (p50, 24h) on Fastest L2 block time, live across Robinhood, Arbitrum, Base and 7 more. Source: OpenChainBench (https://openchainbench.com/benchmarks/l2-block-time).","cite":{"plain":"OpenChainBench. \"Fastest L2 block time, live across Robinhood, Arbitrum, Base and 7 more\". Retrieved 2026-08-14. https://openchainbench.com/benchmarks/l2-block-time","bibtex":"@misc{ocb_l2_block_time,\n  author = {OpenChainBench},\n  title  = {Fastest L2 block time, live across Robinhood, Arbitrum, Base and 7 more},\n  year   = {2026},\n  url    = {https://openchainbench.com/benchmarks/l2-block-time},\n  note   = {Retrieved 2026-08-14}\n}","apa":"OpenChainBench. (2026). Fastest L2 block time, live across Robinhood, Arbitrum, Base and 7 more. Retrieved August 14, 2026, from https://openchainbench.com/benchmarks/l2-block-time","ris":"TY  - GEN\r\nAU  - OpenChainBench\r\nTI  - Fastest L2 block time, live across Robinhood, Arbitrum, Base and 7 more\r\nPY  - 2026\r\nUR  - https://openchainbench.com/benchmarks/l2-block-time\r\nY2  - 2026-08-14\r\nER  - \r\n"},"pageUrl":"https://openchainbench.com/benchmarks/l2-block-time","ogImage":"https://openchainbench.com/api/og/l2-block-time","source":"https://github.com/ChainBench/OpenChainBench/tree/main/harnesses/l2-block-time","methodology":["Robinhood Chain exception: the sequencer exposes no public WebSocket, so its block time is derived from eth_blockNumber deltas polled every 2 seconds over HTTP. A window that advanced N blocks contributes N samples of (elapsed / N) ms, which preserves per-block weighting and yields an accurate average; per-block jitter is not captured on this chain and this note is the disclosure.","Cadence: continuous WebSocket subscription per L2, one persistent connection, no polling.","Subscribe payload: `{\"jsonrpc\":\"2.0\",\"id\":1,\"method\":\"eth_subscribe\",\"params\":[\"newHeads\"]}`. No API key, public endpoints (publicnode.com mostly, era.zksync.io/ws for zkSync).","Sample: block-time(N) = T_recv(N) − T_recv(N-1), measured in milliseconds with `time.Now()` precision on the harness clock. Block-number duplicates from the same connection are filtered.","Sanity bound: any single sample > 5 min is dropped (reconnect artifact, never a real block-time).","Reconnect logic: exponential backoff 2 s → 60 s on dial / read errors. Per-chain `l2_block_time_reconnects_total` counter exposed for instability alerting.","Endpoint health: client-side ping every 30 s defensive against idle close, pong handler resets the read deadline. publicnode and era.zksync.io endpoints verified live for 90-second windows during harness inception (full table in the harness README).","Excluded by design: Polygon zkEVM and Mode (no public no-key WS available, would require an API-keyed contributor endpoint; deferred to v2). Starknet excluded, Cairo stack with a different RPC shape, would live in its own bench."],"license":"CC-BY-4.0"}