Internal Divine report · 23 Aug 2026

Invite codes ended
during a real
arrival wave.

Firebase recorded 3,044 first app opens on Aug 18 and 5,947 on Aug 19, while invite codes were still required. The server stopped requiring codes on Aug 20; first opens stayed high at 5,189, the invite screen largely disappeared, and more installations reached account creation, the feed, and successful publishing. Production stayed available through the surge.

All daily product figures use UTC · Aug 22 is partial through roughly 22:22 UTC
First app opens5,947Aug 19 · Firebase installation event
Active app installations8,638Aug 20 · sent any Firebase event
Installations reaching feed2,919Aug 20 · pooled feed screen seen
Successful app publishes497Aug 20 · from 239 installations
01
How to read this report

Each system sees a different part of the story.

There is no single event in the available data that means “a person completed Divine signup.” This report therefore keeps app measurements, public Nostr activity, client failures, and infrastructure health separate.

Firebase describes the app.

A “first open” is the first launch of one app installation, including reinstalls. “Active installations” sent at least one analytics event. Screen counts mean an installation reached that screen; they do not prove the step was completed.

ClickHouse describes Nostr activity.

Nostr is the open network Divine uses. An account is identified by a public key. ClickHouse records public profiles, posts, follows, reactions, comments, and other signed activity from Divine’s data pipeline—not only actions performed in the Divine app.

Crashlytics and Sentry describe failures.

Crashlytics records fatal and nonfatal mobile failures. Sentry records grouped backend and web errors. Repeated reports can come from one installation, so event totals are not the same as affected people.

02
App arrivals

The wave started two days before the gate opened.

Divine app version 1.0.20 produced nearly all first opens during the surge. iOS contributed 3,868 of 5,947 first opens on Aug 19; Android contributed 2,079. The arrival peak cannot be attributed to invite removal because it happened while codes were still required.

Firebase Analytics · first app opens · UTC

The arrival wave began while invite codes were still required.

iOSAndroid
01.5k3k4.5k6kServer stops requiring codes · Aug 2034211294121,16413557143361533416299173,044185,947195,189201,822211,18722*August 2026 · * Aug 22 partial through roughly 22:22 UTC

Definition: Firebase first_open fires when an app installation launches for the first time. It includes reinstalls and does not prove that a person created or finished creating a Divine account. This is a first-party measure of new app arrivals, not a signup count.

Aug 17 → Aug 1810.2×

First opens jumped from 299 to 3,044 while the server still required invite codes.

Aug 19 peak5,947

3,868 first opens were on iOS and 2,079 were on Android.

Aug 20 transition5,189

The server changed to open mode during the UTC day, so Aug 20 contains activity from both sides of the change.

03
What installations reached in the app

The invite screen fell away. Account and feed reach rose.

These are distinct Firebase installation IDs that displayed each screen during the UTC day. They are not a sequential conversion funnel: one installation may appear in several boxes, and someone can start on one day and continue on another.

Installations that saw invite_gate

Invite-screen reach collapsed

402Aug 115,281Aug 1927Aug 22*

5,281 on Aug 19 → 1,464 on the Aug 20 transition day → 51 on Aug 21.

Installations that saw create_account

Account-screen reach nearly doubled

78Aug 114,301Aug 201,199Aug 22*

2,344 on Aug 19 → 4,301 on Aug 20. Reaching the screen is not proof of account completion.

Installations that saw pooled_video_feed

Feed reach nearly doubled

352Aug 112,919Aug 201,515Aug 22*

1,525 on Aug 19 → 2,919 on Aug 20.

Aug 20 · Firebase Analytics

What the app recorded.

Active installations8,638any event
Sessions started10,725app sessions
Successful publishes497239 installs
Failed publishes6client event
04
Next-day app activity

The larger arrival groups returned at roughly the existing rate.

Before the surge, 14.5% of installations that first opened from Aug 11–17 sent another Firebase event on the next UTC day. The rate was 15.3% for Aug 18, 12.7% for Aug 19, and 15.9% for Aug 20. Aug 21 currently reads 18.8%, but its next-day window uses partial Aug 22 data.

Firebase · next-day app activity

Next-day activity did not collapse when invite codes ended.

14.5% → 15.9%
0%5%10%15%20%25%Aug 11–17 weighted baseline · 14.5%14.9%1118%1212.9%1314.7%1415.2%1514.1%1616.1%1715.3%1812.7%1915.9%2018.8%21*

Definition: the denominator is app installations that fired first_open on a given UTC day. “Active next day” means the same Firebase installation sent any analytics event on the following UTC day. It measures installation-level return to the app, not account retention and not whether someone posted. * The Aug 21 group uses an incomplete Aug 22 return window.

Aug 19 was the low point.

755 of 5,947 first-open installations were active again on Aug 20: 12.7%.

Aug 20 matched the earlier range.

824 of 5,189 first-open installations were active again on Aug 21: 15.9%.

This is app return, not account retention.

Firebase identifies installations, not people or Nostr accounts. Reinstalls and multiple devices can create more than one identifier.

05
Creation and public network activity

More installations published, and more Nostr accounts posted video.

Firebase and ClickHouse agree on the direction but count different things. Firebase records what instrumented Divine app installations reported. ClickHouse records public Nostr activity that reached Divine’s analytics pipeline, including activity from other clients.

Firebase installations with publish_succeeded

App publishers rose to 239

13Aug 11239Aug 20209Aug 22*

60 installations on Aug 16 → 239 on Aug 20 → 209 on partial Aug 22.

Distinct public keys posting video

Nostr video authors rose to 259

89Aug 11259Aug 20219Aug 22*

95 Nostr accounts on Aug 16 → 259 on Aug 20.

Firebase publish_succeeded events

The app reported 497 publishes

58Aug 11497Aug 20489Aug 22*

179 on Aug 16 → 497 on Aug 20 → 489 on partial Aug 22.

Public Nostr video records

ClickHouse recorded 611 videos

210Aug 11611Aug 20540Aug 22*

266 on Aug 16 → 611 on Aug 20.

06
Why the original profile chart was misleading

A public Nostr profile is not a Divine signup.

The earlier draft treated newly observed Nostr profiles as if they were app signups and invented labels for subsets. That was wrong. The chart remains useful only as a description of public profile records entering the analytics pipeline.

ClickHouse · Nostr profile records first seen · UTC

The Aug 21 profile spike was not an app signup spike.

All other profile recordsListed atomstr.data.haus
00.5k1k1.5k2k12811185121,532132631410515128162751743018703191,346201,9872149822*August 2026 · * partial day

Definition: a Nostr profile record is public account metadata seen by Divine’s analytics database. It can be created by Divine, another Nostr client, an import, or automation. On Aug 21, 1,236 of 1,987 records listed atomstr.data.haus in the profile address field and arrived in a concentrated batch. We report that exact fact; we do not label the other records “human.”

07
Production systems

The backend stayed available through the surge.

The infrastructure snapshot was taken near 22:27 UTC on Aug 22. It describes server capacity at that moment, while request/error totals cover UTC days. It does not describe every client-side experience.

Production cluster24 / 24

compute nodes Ready

“Ready” means Kubernetes could schedule and run workloads on every node. The busiest node was at 65% CPU.

Funnelcake API3 / 12

pods running / allowed

A pod is one running API instance. The snapshot showed three running, with room for the autoscaler to add up to twelve.

Relay3 / 30

pods running / allowed

Each relay pod had about 130 live connections; the connection-based scale threshold was 1,500 per pod.

Analytics database72 sec

data delay

ClickHouse was about 72 seconds behind live Nostr traffic at 22:16 UTC.

Cloudflare Worker requests / errors

High-volume edge paths continued serving.

Aug 22 partial
UTC dayMedia uploadsDivine namesIdentity checksModeration calls
Aug 20402,617 / 0329,476 / 1,104—10.27m / 1,926
Aug 21797,428 / 0389,449 / 20157,532 / 016.54m / 1,660
Aug 22*513,690 / 0165,895 / 084,550 / 012.66m / 1,335

The values are requests / Worker execution errors. Moderation errors were 0.0188% of calls on Aug 20, 0.0100% on Aug 21, and 0.0105% on partial Aug 22. The Divine name service recorded 1,104 Worker errors on Aug 20, 20 on Aug 21, and none on partial Aug 22.

08
Client and server failures observed

Error volume rose with traffic, but the data does not show a broad outage.

Crashlytics is the mobile failure source. Sentry covers Funnelcake, Divine Connect, Keycast, and web projects. Counts from these systems are not directly comparable: Crashlytics counts events and affected installations; Sentry groups similar server/web events into issues.

Aug 20 · Crashlytics28

Distinct mobile installations reported at least one fatal event: 3 Android and 25 iOS. The same UTC day had 7,932 active iOS/Android installation IDs in Firebase.

Aug 20 · Crashlytics415

Distinct installations reported any fatal or nonfatal Crashlytics event: 197 Android and 218 iOS. One installation can report many events.

Aug 11–22 · Sentry53

Issue groups were active in the checked projects: 47 Funnelcake, 2 Divine Connect, 4 web, and 0 Keycast. This is a count of grouped error types, not occurrences.

Most mobile reports were nonfatal.

On Aug 20 Crashlytics received 1,373 reports: 51 fatal events and 1,322 nonfatal events. The largest nonfatal families involved view-event publishing and uncaught Flutter zone errors.

Sentry saw transient backend failures.

Active Funnelcake groups included feed/list failures and short ClickHouse connection failures around 14:33 UTC on Aug 22. ClickHouse ingestion was current again in the later snapshot.

The invite screen did not reach zero.

Firebase still saw 51 installations on invite_gate on Aug 21 and 27 on partial Aug 22. The shipped client could still show that screen when its configuration request failed; the analytics data cannot separate that path from stale sessions or navigation.

Sources and limits

What each number came from.

Firebase Analytics: BigQuery dataset analytics_505815521. Used for first opens, active installations, sessions, screens, successful/failed publishing, and next-day app activity. Daily boundaries were recalculated from event timestamps in UTC.

Firebase Crashlytics: BigQuery dataset firebase_crashlytics, Android and iOS batch plus realtime tables, deduplicated by Crashlytics event ID. Used for fatal/nonfatal reports and affected installation counts.

Sentry: Divine organization projects funnelcake, divine-connect, javascript-react, and keycast. Used for issue groups active from Aug 11 through Aug 22. Sentry does not contain the Divine mobile project.

ClickHouse: Divine production Nostr analytical views. Used for public profile records, video posts, video authors, follows, reactions, comments, and accounts authoring any Nostr event.

Divine Brain: used for the operational request/error ledger and to locate the Aug 20 invite-mode change in Divine Mobile issue #8000. Brain document 3CCABF801C7F2419C43E61C7A5.

Live production: Kubernetes, autoscaling, deployment, and metrics state captured Aug 22 around 22:27–22:29 UTC. A later state can differ from this snapshot.

No direct signup-complete event: the available Firebase event list has first_open and onboarding screen events, but no single first-party event proving that account creation completed. The report therefore does not state a signup count.

Aug 22 is partial: Firebase, ClickHouse, and request data were still arriving when the snapshot was taken. Do not compare Aug 22 totals with full days without adjusting for the shorter window.

Internal source ledger
  • Firebase Analytics and Crashlytics queries run 23 Aug 2026 against project openvine-co.
  • Sentry project issue checks run 23 Aug 2026 against the Divine organization.
  • ClickHouse queries captured 22 Aug 2026 against Divine production analytical views.
  • Divine Brain operational status fetched 23 Aug 2026 for the preceding 168 hours.
  • divine-mobile #8000 documents the server switch and shipped client fallback behavior.