Instrument · 01 · Nostr interoperability
Every Nostr app, measured against the spec.
Every app discovered from public relays, ranked by real usage, rated NIP-by-NIP with signed ratings anyone can publish and anyone can recompute.
Read-only crawlsSignature-verifiedMedian of medians
Readout · 02 · The scoreboard
Top apps by real usage.
- Flawless1.0
- Incomplete0.6
- Isolated0.3
- Borked0.1
- self-rated only
- claimed in code, unverified
- no data
- superscript = distinct raters
Coverage row: share of rated apps at each tier, per NIP.
| App | MAU | Overall | 01 | 02 | 05 | 09 | 10 | 17 | 19 | 23 | 25 | 46 | 57 | 65 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Coverage | 10 | 10 | 9 | 8 | 8 | 7 | 7 | 7 | 7 | 7 | 7 | 7 | ||
| Amethyst2 distinct raters | — | F | F2 | F2 | F2 | F2 | F2 | F2 | F2 | F2 | F2 | F | F2 | F2 |
| Bearings1 distinct raters | — | F | F | F | ||||||||||
| Coracle1 distinct raters | — | F | F | F | I | F | F | F | F | F | I | I | I | F |
| Ditto1 distinct raters | — | F | F | F | I | I | F | F | F | F | F | I | F | |
| Flotilla1 distinct raters | — | F | F | F | F | F | F | |||||||
| Nostria1 distinct raters | — | F | I | F | F | I | F | I | F | F | I | I | I | F |
| nostrudel1 distinct raters | — | F | F | F | F | F | F | I | F | F | I | I | I | I |
| snort1 distinct raters | — | F | F | F | I | I | F | I | F | F | I | I | I | F |
| Treasures1 distinct raters | — | F | F | F | F | F | ||||||||
| YakiHonne1 distinct raters | — | I | I | I | I | I | F | I | F | I | I | I | I | F |
Readout · 03 · Why measure
Interoperability is the whole point of a protocol.
Nostr's promise is that your identity, your posts and your relationships work in any app. That promise only holds when apps implement the same specs the same way. Nostrometer makes it measurable.
Fewer one-client surprises for users
A zap that works in one app and vanishes in another is a protocol failure that users blame on Nostr. The matrix shows exactly where it happens, so it gets fixed instead of tolerated.
A concrete fix list for developers
Every cell below Flawless names a NIP, carries the rater’s note, and comes with an upstream issue filed with the app. Sorted by real usage, it is a backlog with impact built in.
Pressure that is public and fair
Nobody is graded in private. Ratings are signed public events, medians are reproducible, the tooling is open, and the number moves when the app does.
Readout · 04 · How it works
Three read-only crawls, one rule, and a median.
- 01
Discover
Crawl kind 31990 handler events from public relays. Verify every signature. Merge duplicates; the developer’s own key wins over a same-named listing from anyone else.
- 02
Rank
Count distinct authors who tagged their events with the app’s client tag over the last 30 days, via NIP-45 COUNT. A failed query is a ?, never a zero.
- 03
Rate
Reviews check the current NIP text, then test the round trip against a second client: a cell earns Flawless only when it works on both sides. Anyone can publish a rating; the median per cell sets the tier.
- 04
Publish
Everything here is read straight from relays or from crawl files you can download. The tooling that produced them is open source.
Readout · 06 · Updates