# \[Tool\] cosmos-flake-detector: Find Unreliable RPC Endpoints

**URL:** <https://forum.cosmos.network/t/tool-cosmos-flake-detector-find-unreliable-rpc-endpoints/16553>\
**Category:** Validation\
**Created:** [December 31, 2025, 8:48am UTC](https://forum.cosmos.network/t/tool-cosmos-flake-detector-find-unreliable-rpc-endpoints/16553 "2025-12-31T08:48:25Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![Ignismeow](https://yyz1.discourse-cdn.com/flex031/user_avatar/forum.cosmos.network/ignismeow/32/8801_2.png) [@Ignismeow](https://forum.cosmos.network/u/Ignismeow)\
**Post date:** [December 31, 2025, 8:48am UTC](https://forum.cosmos.network/t/tool-cosmos-flake-detector-find-unreliable-rpc-endpoints/16553/1 "2025-12-31T08:48:25Z")

</div>

Hi Cosmos community! 👋

I’ve built a tool to help operators detect flaky RPC endpoints before they cause issues.

**The Problem**

We’ve all been there: RPC endpoints that work 95% of the time but fail when it matters. Traditional monitoring only checks `/health` or `/status`, missing query-specific issues.

**The Solution: cosmos-flake-detector**

A Rust CLI tool that:

- Tests specific query paths (not just `/health`)
- Measures latency with microsecond precision (HDR histogram)
- Calculates flakiness scores (0-100)
- Exports JSON for CI/CD integration
- Runs concurrent load tests

**Example Usage**

```auto
cosmos-flake-detector \
  --endpoints "https://rpc1.com,https://rpc2.com" \
  --duration 120 \
  --output results.json

```

**Features**

- Query-specific testing (abci\_info, status, genesis, etc.)
- p50/p95/p99 latency metrics
- Flakiness scoring algorithm
- Concurrent testing
- JSON export
- Open source (MIT)

**GitHub**

`saadaltafofficial/cosmos-flake-detector`

Feedback and contributions welcome!

**Use Cases**

- Validator operations (pre state-sync testing)

- Chain indexers (CosmWasm endpoint testing)

- CI/CD health checks

- Continuous monitoring

Would love to hear if this solves a pain point for you!

---

<div class="post-metadata">

**Author:** ![yoda](https://yyz1.discourse-cdn.com/flex031/user_avatar/forum.cosmos.network/yoda/32/3938_2.png) [@yoda](https://forum.cosmos.network/u/yoda)\
**Post date:** [January 1, 2026, 9:54am UTC](https://forum.cosmos.network/t/tool-cosmos-flake-detector-find-unreliable-rpc-endpoints/16553/2 "2026-01-01T09:54:48Z")

</div>

This would probably work best as a stand-alone site with an api

---

<div class="post-metadata">

**Author:** ![Ignismeow](https://yyz1.discourse-cdn.com/flex031/user_avatar/forum.cosmos.network/ignismeow/32/8801_2.png) [@Ignismeow](https://forum.cosmos.network/u/Ignismeow)\
**Post date:** [January 1, 2026, 10:48am UTC](https://forum.cosmos.network/t/tool-cosmos-flake-detector-find-unreliable-rpc-endpoints/16553/3 "2026-01-01T10:48:30Z")

</div>

yes no doubt, thanks for advice.
