Required Datapoints
- Total Closed-Won Revenue: Revenue booked in the period.
- Number of Closed-Won Deals: Total successful sales.
- Deal Type Filters (optional): Can be segmented by new vs. expansion, industry, region.
Average Deal Size measures the average revenue generated per closed-won deal over a specific period. It helps evaluate sales efficiency, buyer potential, and monetization strategy.
Average Deal Size is a critical revenue metric that reflects the typical value of closed deals, helping you assess monetization strategy, ICP alignment, and sales efficiency over time. It’s a strong signal of deal quality, not just volume.
The relevance and interpretation of this metric shift depending on the model or product:
An increasing trend points to higher-value wins, better upsell strategies, or improved packaging. A decline may flag price pressure, poor targeting, or discount overuse.
Segment by industry, persona, acquisition source, or sales rep to uncover trends and replicate top-performing patterns.
Average Deal Size informs:
These are the main factors that directly impact the metric. Understanding these lets you know what levers you can pull to improve the outcome
Actionable ideas to optimize this KPI, from fast, low-effort wins to strategic initiatives that drive measurable impact.
Activities commonly tied to improving or operationalizing this KPI.
| Activity | Description |
|---|---|
| Sales Strategy | Sales Strategy is a systematic process focused on defining, prioritizing, and coordinating sales initiatives to drive business expansion within a modern go-to-market framework. It gives teams a clear plan for where to focus, how to sequence work, and what to measure. Relevant KPIs include Average Deal Size. |
| Pricing Optimization | Pricing Optimization is a continuous process that analyzes market demand, customer segments, competitor offerings, and product value to set and adjust prices in alignment with revenue goals and customer willingness to pay. It improves performance by removing friction, testing changes, and scaling what works. Relevant KPIs include Average Deal Size and Monthly Recurring Revenue. |
| Forecasting | Forecasting involves systematically estimating future sales, revenue, or key performance indicators by leveraging historical data, current market trends, and advanced analytics. It turns signals into decisions, interventions, and measurable follow-up. Relevant KPIs include Average Deal Size and Contract Renewal Rate. |
| Segmentation | Segmentation involves strategically identifying and categorizing potential and existing customers based on shared characteristics such as needs, behaviors, usage patterns, and revenue potential. It gives teams a clear plan for where to focus, how to sequence work, and what to measure. Relevant KPIs include Average Deal Size and Cohort Retention Analysis. |
Q2 Sales:
This KPI is associated with the following stages in the AAARRR (Pirate Metrics) funnel:
This KPI is classified as a lagging Indicator. It reflects the results of past actions or behaviors and is used to validate performance or assess the impact of previous strategies.
This role is directly accountable for the KPI and is expected to drive progress and decisions around it.
These roles contribute directly to performance and typically partner on execution, reporting, or optimization.
These leading indicators influence this KPI and act as early signals that forecast future changes in this KPI.
These lagging indicators confirm, quantify, or amplify this KPI and help explain the broader business impact on this KPI after the fact.
How this KPI is structured in Cube.js, including its key measures, dimensions, and calculation logic for consistent reporting.
cube('Deals', { sql: `SELECT * FROM deals`,
measures: { totalClosedWonRevenue: { sql: `total_closed_won_revenue`, type: 'sum', title: 'Total Closed-Won Revenue', description: 'Total revenue from closed-won deals in the period.' },
numberOfClosedWonDeals: { sql: `id`, type: 'count', title: 'Number of Closed-Won Deals', description: 'Total number of closed-won deals in the period.' },
averageDealSize: { sql: `${totalClosedWonRevenue} / NULLIF(${numberOfClosedWonDeals}, 0)`, type: 'number', title: 'Average Deal Size', description: 'Average revenue generated per closed-won deal over a specific period.' } },
dimensions: { id: { sql: `id`, type: 'string', primaryKey: true, title: 'Deal ID', description: 'Unique identifier for each deal.' },
dealType: { sql: `deal_type`, type: 'string', title: 'Deal Type', description: 'Type of deal, e.g., new or expansion.' },
industry: { sql: `industry`, type: 'string', title: 'Industry', description: 'Industry of the client involved in the deal.' },
region: { sql: `region`, type: 'string', title: 'Region', description: 'Geographical region of the deal.' },
closedWonDate: { sql: `closed_won_date`, type: 'time', title: 'Closed-Won Date', description: 'Date when the deal was closed and won.' } }});Note: This is a reference implementation and should be used as a starting point. You’ll need to adapt it to match your own data model and schema