Data & Analytics · Build & Package
Your metrics, compiled before you ask.
Doe runs SQL against your database, computes week-over-week trends from timestamped data, and delivers a formatted spreadsheet every Monday. Every query is visible, editable, and logged.
Works acrossSupabaseGoogle Sheets
What you get.
Doe automates weekly KPI reporting by running SQL against your Postgres or MySQL database, computing week-over-week and month-over-month trends, and delivering a formatted Google Sheets spreadsheet every Monday morning. Connects to Neon, Supabase, and PlanetScale. Every query is visible, editable, and logged so any number can be traced to its source.
The weekly metrics meeting starts in 30 minutes. The spreadsheet is stale.
All the data is technically in one place. Stripe syncs to Supabase via Fivetran, PostHog events land in the same Postgres cluster, product tables are native. But the queries were written by a data hire who left in August. One references a materialized view that stopped refreshing after a schema migration. Another joins on a column that was renamed from user_id to account_id in Q3 and silently returns fewer rows than it should.
Monday morning becomes re-deriving everything by hand. The data exists. The queries should be simple. The gap between those two things is filled with broken views, stale CTEs, and tribal knowledge that left six months ago.
What changes.
- 01Prep timeBefore · Monday morning spent fixing queries and pasting into sheetsWith Doe · Delivered before you wake up
- 02Query maintenanceBefore · Breaks silently when schemas change, nobody notices for weeksWith Doe · Validated before each run, failures flagged immediately
- 03AuditabilityBefore · Numbers in a spreadsheet with no way to trace how they were computedWith Doe · Results include the source queries so any number can be verified
- 04Ad-hoc follow-upsBefore · "I'll follow up after the meeting" (takes all afternoon)With Doe · Segment breakdowns already included in the spreadsheet
How Doe builds your KPI report
- 01Pulls revenue and billing metrics from synced Stripe tablesSupabaseMRR, net new, expansion, and churn broken down by plan tier and customer segment, computed against your targets. SQL visible in the execution log.
- 02Pulls product engagement and adoption dataSupabaseDAU, activation rate, and feature adoption computed from PostHog events and native product tables. WoW and MoM trends derived from timestamp data.
- 03Computes derived metrics and flags outliersDoeDoe calculates NRR and churn rate by segment from raw query results, then flags any metric with unusual week-over-week movement. Sandbox code is inspectable.
- 04Writes the formatted spreadsheet with audit trailGoogle SheetsDoe delivers executive summary, detailed trends, and raw data in separate tabs. A metadata tab logs every query that ran and the row counts returned.
- 05RecurringEvery Monday at 6:00 AMEvery Monday, Doe runs the full query suite against your database, rebuilds the spreadsheet, and posts the link. Execution logs are saved so you can trace any number back to the query that produced it. Updated spreadsheet linked in #metrics in Slack.
Up and running in under ten minutes.
- 01Connect your toolsOne-click OAuth for each integration. No API keys, no engineering.
- 02Describe what you need“Every Monday, pull MRR, active users, churn rate, and NPS from our Supabase database. Compute WoW and MoM trends, then deliver the spreadsheet to #metrics in Slack.”
- 03It runs on scheduleEvery Monday morning, the updated spreadsheet lands in your team channel.
Before you delegate.
- 01Can I see and edit the SQL Doe runs?Yes. Every query is visible before execution. You can edit the SQL, adjust joins, or add filters. Execution logs show what ran, how long each query took, and how many rows returned. Nothing runs as a black box.
- 02What if our Stripe data isn't synced to our database yet?Doe can connect to Stripe and PostHog via API alongside your database. But if you already sync via Fivetran or Airbyte, Doe queries the database directly. One connection, faster execution, your existing pipeline stays the source of truth.
- 03What if our schema changes?Doe validates every query before each run. If a column was renamed or a view stopped refreshing, the report flags the specific metric that failed instead of delivering stale numbers silently.
- 04Can the report include derived metrics?Yes. Net revenue retention, churn rate by segment, custom ratios. Doe computes them in a code sandbox from the raw query results. You define the formula once. The sandbox code is inspectable so you can verify the math.
- 05Will this put load on my production database?Doe runs read-only queries with configurable timeouts. Point it at a read replica for large datasets. Query performance is logged so you can monitor and optimize.