You’re the analytics lead supporting Uber Eats Grocery in the US (≈ 6M monthly active customers, 120K active couriers, operations in 40 metros). The business is in a profitability push: leadership committed to improving Contribution Margin while maintaining on-time delivery SLAs and customer retention.
At the end of January, Finance flags that the Grocery line missed plan materially. The GM asks you to “analyze the P&L, explain the variance, and tell me what we should do in the next 2 weeks.” You have access to both accounting P&L outputs and operational event-level data.
Finance provides the following simplified P&L (USD, January actual vs December actual vs January plan):
| Line Item | Dec Actual | Jan Plan | Jan Actual |
|---|---|---|---|
| Orders | 18.0M | 19.5M | 19.0M |
| Gross Bookings (GB) | 1,440M | 1,560M | 1,482M |
| Net Revenue (NR) | 216M | 234M | 215M |
| Variable Costs (VC) | 153M | 160M | 170M |
| Contribution Margin (CM = NR - VC) | 63M | 74M | 45M |
Stakeholders disagree on the “why”:
You need to reconcile the P&L with product/ops metrics, identify the biggest drivers, and propose actions with clear expected impact.
You can query a warehouse (Snowflake) with these sources:
| Table / Log | What it contains | Grain |
|---|---|---|
finance_pnl_daily | daily NR, VC, promo spend, courier incentives, support cost allocations, chargebacks | day × metro × line_item |
orders | order_id, user_id, store_id, metro, created_at, delivered_at, status, cancellation_reason | order |
pricing_promos | order_id, promo_type, promo_amount, funded_by (company/merchant), fees, taxes | order |
courier_payments | order_id, base_pay, surge, incentive, distance_km, time_minutes | order |
app_events | checkout funnel events, payment failures, substitutions accepted, tip edits | event |
support_tickets | ticket_id, order_id, issue_type, handle_time, refund_amount | ticket |
Constraints: