Where does the data come from?
All data displayed on this dashboard is sourced from Pensieve, an archive-first Nostr indexer that stores canonical events and provides analytics via ClickHouse.
Pensieve connects to dozens of public Nostr relays in real-time, ingesting and deduplicating events as they're published across the network. This provides a comprehensive view of Nostr activity, though it doesn't capture 100% of all events (private relays, offline relays, etc. are not included).
How does Pensieve work?
Live Relay Ingestion
Connects to Nostr relays via WebSocket and streams events in real-time. Includes automatic relay discovery via NIP-65.
Deduplication
Events are deduplicated using RocksDB, ensuring each event is only stored once even if seen on multiple relays.
Archive Storage
Canonical events are stored in notepack segments (gzip compressed) as the source of truth.
Analytics Index
ClickHouse serves as a derived analytics index, enabling fast queries for dashboards like this one.
Architecture
┌─────────────────────────────────────────────────────────────────┐
│ Event Sources │
│ [Live Relays] [JSONL Backfill] [Proto Backfill] │
└──────────┬─────────────────┬─────────────────┬──────────────────┘
│ │ │
▼ ▼ ▼
┌─────────────────────────────────────────────────────────────────┐
│ Ingestion Pipeline │
│ validate → dedupe (RocksDB) → segment writer → indexer │
└──────────────────────────────┬──────────────────────────────────┘
│
┌────────────────┴────────────────┐
▼ ▼
┌──────────────────────────┐ ┌──────────────────────────────┐
│ Notepack Archive │ │ ClickHouse │
│ (source of truth) │ │ (analytics index) │
└──────────────────────────┘ └──────────────────────────────┘Learn More
Note: Nostr Stats provides an approximation of network activity based on events collected from public relays. It does not represent 100% of all Nostr activity. Private relays, paid relays, and events published before indexing began are not included.