Revenue analyst
The agent writes Python, runs it in the sandbox, and each number is graded against ground truth recomputed from Stripe.
Shows recorded answers. New questions run from the CLI (npm run ask).
Current MRR is $336,780.71 USD across 332 customers (332 contributing subscriptions), with ARR of $4,041,368.56 and a trial pipeline of $12,953.13.
336,780.71USD
Matches Stripe ground truthexpected 336780.71 · agent 336780.71
| metric | value |
|---|---|
| MRR (USD) | 336780.71 |
| ARR (USD) | 4041368.56 |
| Customers (MRR) | 332 |
| MRR subscriptions | 332 |
| Trial pipeline (USD) | 12953.13 |
| Canceled subscriptions | 65 |
| Logo churn (current) | 16.37 |
Method: Summed monthly_amount (minor units, post-discount) over subscriptions with status active or past_due, converted each to USD via to_usd using the subscription currency, and aggregated.
Code that produced this
attempts 1 · model poolside/laguna-s-2.1:free · tokens 1635 · 27.4 s · exit 0
analysis.py (attempt 1)
import jsonimport stripe_datasubs = stripe_data.subscriptions()mrr_usd = 0.0customers = set()trialing_usd = 0.0canceled_count = 0mrr_count = 0for s in subs:status = s.get("status")if status in ("active", "past_due"):minor = stripe_data.monthly_amount(s)usd = stripe_data.to_usd(minor, s["currency"])mrr_usd += usdcustomers.add(s["customer"])mrr_count += 1elif status == "trialing":minor = stripe_data.monthly_amount(s)trialing_usd += stripe_data.to_usd(minor, s["currency"])elif status == "canceled":canceled_count += 1arr_usd = mrr_usd * 12logo_churn = canceled_count / (mrr_count + canceled_count) if (mrr_count + canceled_count) else 0result = {"answer": f"Current MRR is ${mrr_usd:,.2f} USD across {len(customers)} customers ({mrr_count} contributing subscriptions), with ARR of ${arr_usd:,.2f} and a trial pipeline of ${trialing_usd:,.2f}.","value": round(mrr_usd, 2),"unit": "USD","table": [{"metric": "MRR (USD)", "value": round(mrr_usd, 2)},{"metric": "ARR (USD)", "value": round(arr_usd, 2)},{"metric": "Customers (MRR)", "value": len(customers)},{"metric": "MRR subscriptions", "value": mrr_count},{"metric": "Trial pipeline (USD)", "value": round(trialing_usd, 2)},{"metric": "Canceled subscriptions", "value": canceled_count},{"metric": "Logo churn (current)", "value": round(logo_churn * 100, 2)},],"method": "Summed monthly_amount (minor units, post-discount) over subscriptions with status active or past_due, converted each to USD via to_usd using the subscription currency, and aggregated.",}print("RESULT: " + json.dumps(result))
Benchmark
| Check | Expected | Agent | Attempts | Tokens | Verdict |
|---|---|---|---|---|---|
| MRR (USD) | 336780.71 | 336780.71 | 1 | 1635 | Pass |
| Paying customers | 332.00 | 332.00 | 1 | 1340 | Pass |
| Emerging-market share of MRR (%) | 25.26 | 25.26 | 1 | 1836 | Pass |
| Logo churn (%) | 16.37 | 16.37 | 1 | 8884 | Pass |
| Archetypes (plan × interval) | 7.00 | 7.00 | 1 | 2032 | Pass |
| MRR (USD) | 336780.71 | 285985.11 | 1 | 6255 | Fail |
| Paying customers | 332.00 | 332.00 | 1 | 3017 | Pass |
| Emerging-market share of MRR (%) | 25.26 | 13.57 | 1 | 1898 | Fail |
| Logo churn (%) | 16.37 | 16.37 | 1 | 1175 | Pass |
| Archetypes (plan × interval) | 7.00 | 7.00 | 1 | 2012 | Pass |