Reading…
Everything built and waiting, one card per idea, with where it is on each platform. A TikTok that says draft is sitting in your TikTok inbox — open the app, tap it, paste the caption from here.
| Platform | Waiting | Posted | Failed | Measured | Views | Likes | Saves |
|---|---|---|---|---|---|---|---|
| Reading the shelf… | |||||||
Ready to go
Already out
Who signed up and stopped coming back, and who stopped paying. Refreshes every minute. User drop-off is read from sign-in dates, which record logins rather than activity, so treat it as the upper bound.
Signup weeks, and how many are still around
Paid
Website traffic. Plausible is already on the marketing site, but the desk has no Plausible Stats API key, so there are no visitor or signup-conversion numbers here yet.
Where events originate, so you draft during the announcement rather than joining the wave. P1 means the event changes a constant the engine actually reads — a product task as much as a content angle.
Most of the calendar is knowable a year out. A draft-by date means the piece is written before the news breaks. Dates the agency has not fixed yet show their window, not a invented day.
Candidates the wire and diary generated, waiting on a yes or a no. Unlike the design prototype, these decisions write back — approve or reject updates content_candidates in Supabase immediately.
The rows between the schedule markers in docs/growth/social-content-backlog.md. That file is the source of truth for when — this reads it, and the drag-and-drop board writes it.
The design carried a marketing funnel — installs to signups to MRR. Nothing feeds that yet, so this is the funnel that is instrumented: a candidate's journey from idea to published post.
Format mix — everything scheduled
Real posted content and what it did. A dash is not a zero: it means the platform reports nothing back to us, which for Facebook is every row until the Page permissions are fixed.
| Date | Post | Views | Likes | Comments | Saves |
|---|---|---|---|---|---|
| Reading the ledger… | |||||
What is already being discussed, and which of it you have not covered. Late by construction — the wire in II is upstream of this. Its value is not novelty, it is the join: sustained volume against zero coverage.
signal_eventspolled weekday business hoursdiary.json, projected forwardwindows shown where the date is not fixedcontent_candidatesapprove/reject writes backsocial_postsNULL renders as a dash, never a zerosocial_accounts + the scheduletopic_events — Reddit, Hacker News, Money Stack Exchangecoverage joined from your own captionsThe radar reads Reddit unauthenticated, which now 403s the JSON API and rate-limits RSS — 4 of 16 feeds get through and none carry a score. A free script app fixes it; until then treat its ranking as directional.
Radar heat mixes sources of wildly different scale. It is a ranking, never a measurement, and no absolute reading of it means anything.
The acquisition funnel (installs → signups → activation → MRR) has no source wired. It needs Plausible's Stats API and a read of the app's own tables.
The firsts ladder from the design — first install, first subscriber, first $100 MRR — has nowhere to read milestones from, so it is not drawn. It was the design's motivational instrument and it would have been the most tempting thing to fake.
Facebook and Instagram metrics are NULL on every row: the posts published, but the Page permissions never granted read-back. That is a dash in the ledger, not a zero.