Pending
Approved
Rejected
✅ Queue is clear — no pending items.

All changes written automatically to drug_assets — from 8-K extractions and OpenFDA polling. Spot-check for errors; use ↩ Undo to revert any bad write.

Loading…

Summary stats for each completed update.py run — hourly Railway cron and manual runs.

Loading…

The digest distribution list — independent of user accounts. pending addresses receive nothing until they confirm. bounced and complained are terminal and are never mailed again; that is deliberate, since re-mailing a complainer is how a sending domain gets blocked.

⬇ Export CSV
Campaign performance Delivered, bounced and complained are hard numbers — they decide whether the domain stays out of spam folders. Opened and clicked are directional only. Corporate mail gateways open every message and follow every link to scan it (the 2026-09-21 issue logged 5,000+ clicks from ~300 recipients, nearly all within minutes of delivery), and Apple Mail pre-fetches images whether or not the message was read. Compare issue to issue; never read either as a headcount. Rows marked unmeasured predate the webhook or were sent with tracking off — that is not zero engagement, it is no data.
CampaignSentDeliveredOpened ClickedBouncedComplained

⚠️ No open events recorded yet. If sends are landing, open tracking is probably still off — Resend → Domains → your sending domain → Configuration → “Enable tracking metrics”. It needs its own CNAME, not just a toggle.

Loading…
No subscribers match.
EmailStatusSourceAdded SendsAccount

Everyone who has signed up, newest first. Read-only: plans are owned by Stripe and synced here by its webhook. From digest marks an address that was already on the newsletter list before the account existed — the newsletter turning a reader into a user.

Accounts
New · 7 days
New · 30 days
Signed in · 7 days
Paid plans
From digest
Loading…
No accounts match.
EmailPlanBillingSigned up Last sign-inDigestFrom digestAPI keysStripe

Curate the weekly digest before it sends. 📌 Pin tiles to choose the Top Stories (unpinned tiles are ranked and sectionized automatically), remove noise, and write — or ✨ draft — the intro note. Changes are optional: an untouched week sends the computed slate automatically. Target send: .

Loading slate…