CTRL DECK

Command Terminal // Authorized Only

API DB Stripe
--
Dashboard
Statistics
Users
Announce
Payments
Settings
Notes
Tools
Audit
Compliance
MRR ?Monthly Recurring Revenue — normalised monthly value of active subscriptions, net of discounts, trials excluded. This is the number to grow. Sparkline = daily net revenue, last 30 days.
--
New Signups (7d) ?Accounts created in the last 7 days, split into free signups vs. those who started a trial. Trials are your pipeline.
--
— free · — trial
Active Trials ?Users on a free trial right now. These convert (charge) soon — make sure they're actually logging in and using the product, or they'll cancel.
--
Open Support Tickets ?Coming once the support inbox is built into TTT. Oldest ticket will flag red if over 20h, against your 24h SLA.
support inbox: coming to TTT
Needs Action Today

Trials converting ≤ 3 days ?Trials that will charge the card within 3 days. If they're not logging in, reach out now — a surprise charge causes disputes and churn.

Loading...

Failed Payments ?Subscriptions past due from a card decline. These are about to churn but are fixable today — email the customer to update their card.

Loading...

Cancellations (7d) ?Who cancelled this week and their tier. Watch for patterns — same tier, same timing, or right after a charge.

Loading...

Revenue — Last 90 Days ?Net Stripe revenue by month over the last 90 days. Your single trend to watch daily. Everything deeper lives on the Statistics page.

Loading...
Revenue
Funnel
Acquisition
Product
Cohorts
Free → Paid Conversion ?Share of all users on a paid tier. Benchmarks (free trading tools): GOOD above 4%, OK 2–4%, LOW under 2%. Freemium products often sit 1–5%.
--
LTV — Pro ?Estimated lifetime value of a Pro customer (ARPU ÷ monthly churn, ~5% assumed). Should be at least 3× your cost to acquire one.
--
LTV — Elite ?Estimated lifetime value of an Elite customer. Higher tiers should show materially higher LTV or the pricing tiers aren't doing their job.
--

Rolling 12-Month Revenue vs A$75k GST Threshold ?Total net Stripe revenue over the last 365 days against the A$75,000 GST registration threshold. Once you cross it you must register for GST. Watch this as you scale.

MRR by Tier ?Current monthly recurring revenue split by tier. Free is excluded — it makes no revenue.

Churn by Month ?Cancellations per month, split into voluntary (chose to leave) vs failed-payment (card declined — recoverable via dunning). Monthly benchmarks: GOOD under 5%, OK 5–8%, BAD over 8% (under ~3% is excellent). Lots of failed-payment churn means fix your card-retry flow.

Refund Rate by Month ?Refunds ÷ charges each month. GOOD under 1%, watch above 2–3% — high refunds signal expectation or quality problems, and hurt your Stripe standing.

ID Email Name Tier Joined Last Seen Stripe Actions
Loading...

Revenue by Month ?Monthly revenue from Stripe charges. Shows the last 6-12 months depending on data availability.

Loading...
Recent Charges
Customers
Invoices
Coupons
Dunning ?Failed-payment queue: subscriptions that are past due and open invoices Stripe is still trying to collect. Chase these to recover revenue.
DateAmountCustomerStatusDescriptionActions
Loading...

Stripe Tools ?Search and manage Stripe data directly from the admin terminal.

Search Customer
View Subscription
Active Disputes

Products & Prices ?Your Stripe product catalog and pricing configuration.

Products
NameIDActiveCreated
Click Load to fetch
Prices
ProductAmountIntervalActiveID
Click Load to fetch
Maintenance Mode ?When ON, users see a maintenance page instead of the app. Use during deployments or emergencies. Toggle OFF to restore access.
Site accessible to users

Site Configuration ?Key-value config stored in Supabase. TTT reads these to control behaviour like maintenance mode, custom messages, etc.

Set Config Value

Feature Flags ?Toggle features on/off across the platform. These are stored as site config values that TTT checks at runtime.

System Health ?Shows which environment variables are configured on the server. All should show SET for the admin terminal to work properly.

Loading...

Live Monitors ?Read-only health checks: database size, Stripe webhook delivery, and email/rate-limit usage. Blocks show "not configured" until you add the relevant API keys as Cloudflare env vars.

Loading monitors...
WhenActorActionTargetDetails
Loading...
Data Deletion Requests ?Right-to-erasure requests. Each has a 30-day legal deadline. Fulfil by deleting the user (opens the user), then mark completed.
Loading...
Data Access / Export Requests ?Data-portability requests. Each has a 30-day deadline. Export the user's data (JSON), send it, then mark completed.
Loading...