← Back to pricing

Verify before you pay

Every number we serve carries the URL it came from. Call ours, call theirs, compare. No key, no signup, no card — the point is that you check us first.

1. Ask us for a network

curl -s "https://kairossignal.com/v1/supply?network=FLUX"

Each metric comes back with its value, the source, an as_of timestamp, a computed age_hours, a freshness label, and verify_yourself — the exact upstream endpoint our collector read.

"IPV4_NODES": {
  "value": 2294.0,
  "source": "depin_first_party",
  "as_of": "2026-08-09 19:44:39",
  "age_hours": 26.2,
  "freshness": "stale",
  "verify_yourself": "https://api.runonflux.io/daemon/getzelnodecount"
}

2. Call the network yourself

curl -s "https://api.runonflux.io/daemon/getzelnodecount"

That is Flux’s own API, not ours. The numbers should agree, allowing for the age we already told you about. If they don’t, we want to hear it — that is a bug report we will act on, and it is worth more to us than a sale.

3. Check what we don’t have

curl -s "https://kairossignal.com/v1/provenance"   # sources + not_covered + suppressed_series
curl -s "https://kairossignal.com/v1/networks"     # every network, labelled by tier

Networks with no public first-party feed are named explicitly in not_covered, with the reason. Series we found to be mislabelled at source are listed in suppressed_series and are never served. We would rather show you the hole than paper over it.

What the free tier gives you

 Free (no key)Paid
Networks in /v1/supply12-network sampleAll 383
Provenance & not_coveredFullFull
Network catalog & tiersFullFull
Snapshot history—Included

The sample is a sample and the response says so, in a field called access. Nothing is silently truncated.

Coverage, stated plainly

318 networks carry first-party telemetry — 7,427 series, every one of which now returns a clickable verify_yourself endpoint. 92 more are on-chain only. The catalog lists 745, which means 482 are catalog entries with no live feed at all, and /v1/networks labels each one so you can tell the difference before you build on it.

On freshness: these are not all real-time. Each value reports its own age and is labelled live (<2h), recent (<26h), stale (<7d), or static. A meaningful share of series are stale at any moment, usually because the upstream network publishes slowly. We surface that rather than hide it — check age_hours before you trust a number.

See pricing Ask the operator