I'm building BetterPrompt , and this is the reporting workflow I ended up needing every morning. My startup metrics live in two places. PostHog has traffic and top-of-funnel behavior. Postgres has signups, onboarding, prompt runs, subscriptions. The annoying part wasn't that the data was split β every startup has that problem. The annoying part was that the funnel I actually cared about only existed after combining both. So every morning I had two options: open multiple dashboards and do the math by hand, or skip it entirely. Most days I skipped it. Now I run one command, and a sheet of paper comes out of my printer. The one command bun run report That command runs a set of Postgres and PostHog queries, writes the raw outputs to CSVs, computes the cross-source funnel, renders a print-ready PDF, and hands the PDF to my laser printer. Why dashboards weren't enough The hard part wasn't querying either system. Both are great on their own.β¦