Metrics / zapstore / native_release_count
native_release_count
Counts kind-30063 (zapstore-app-releases) release rows in the NATIVE partition per UTC day - releases, not distinct apps: a developer who ships 30 patch versions contributes 30 rows, and one app recurs across many days.
unit
releases
grain
day (UTC)
series
sparse, full history
key
zapstore.native_release_count@day
Parameters
| param | accepted values |
|---|---|
| grain | day - default day (omit to get the default) |
| from | optional inclusive ISO UTC calendar day (YYYY-MM-DD); omit for the series start |
| to | optional inclusive ISO UTC calendar day (YYYY-MM-DD); omit for today UTC (that day still in progress) |
| format | csv | markdown |
Query it
MCP tool call against https://dev.nostrolo.gy/mcp (connect your agent):
{
"name": "nostrology_query_metric",
"arguments": {
"metric": "native_release_count",
"domain": "zapstore",
"grain": "day"
}
} Windowed (inclusive UTC days; both optional):
{
"name": "nostrology_query_metric",
"arguments": {
"metric": "native_release_count",
"domain": "zapstore",
"grain": "day",
"from": "2026-07-01",
"to": "2026-07-31"
}
} Response: a plain-text envelope (window, freshness, column contract, this page's
caveats) followed by the data table (csv, or format: "markdown") at day grain.
Response columns
| name | type | description |
|---|---|---|
| utc_day | date | UTC calendar day (bucketed at UTC, not session TZ) |
| native_release_count | integer | Release rows (app-versions) self-published by developers that day |
What is counted
'Native' means self-published by a developer via zapstore-cli - every app EXCEPT those published by the Zapstore curator key that are not Zapstore's own first-party software (the curator's other entries are the GitHub/F-Droid republishes counted by zapstore.republished_release_count, whose partition is this one's exact complement; the two sum to all releases and never double-count a row).
Caveats
- Do NOT confuse this with zapstore.new_native_app_count, which counts the same partition DEDUPED to each app's first-ever release: that series counts apps and is bounded above by this one day for day.
- Row grain is one row per (pubkey, '<package>@<version>'): kind-30063 is addressable on (pubkey, d_tag) with the version inside d_tag, so every version survives as its own row - but RE-publishing the same version replaces the earlier row, so it is counted once and dated at the latest revision, which makes this a count of app-versions-published rather than of raw relay events.
- The day comes from the event's own created_at as set by the publisher, not from when we ingested it.
- Includes pre-release channels (alpha/beta/rc), matching the Zapstore Android client, which does not filter on channel.
- Series is sparse: days with zero native releases are omitted.
Freshness in every response is data-derived: latest kind-30063 (zapstore-app-releases) event time.