Required Datapoints
- Revenue from Referral Accounts (ARR, MRR, or bookings)
- Total Revenue in Time Period
- Attribution Model/Tagging Accuracy
Referral Account Revenue Contribution measures the percentage of total revenue generated from accounts acquired via referral. It helps quantify the business impact of customer advocacy and word-of-mouth-driven acquisition.
Referral Account Revenue Contribution is a key indicator of organic growth and customer-driven acquisition efficiency, reflecting how much of your revenue comes from customers who were referred by existing users, partners, or advocates.
The relevance and interpretation of this metric shift depending on the model or product:
A high contribution rate suggests strong brand advocacy and scalable word-of-mouth, while a low rate may point to invisible programs, poor incentives, or untapped evangelists.
By segmenting by referral source, account tier, or acquisition channel, you unlock insights to refine referral mechanics, spotlight high-value advocates, and forecast low-CAC revenue streams.
Referral Account Revenue Contribution 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 |
|---|---|
| Referral Program Design | Referral Program Design focuses on Referral Program Strategy Development encompasses the comprehensive process of designing, implementing, and refining initiatives that encourage existing customers, users, or partners to refer new business. It gives teams a clear plan for where to focus, how to sequence work, and what to measure. Relevant KPIs include Customer Referral Rate and Referral Account Revenue Contribution. |
| Revenue Attribution | Revenue Attribution is the systematic process of identifying, tracking, and assigning credit for generated revenue to specific marketing campaigns, sales activities, product features, or customer touchpoints. It turns signals into decisions, interventions, and measurable follow-up. Relevant KPIs include Expansion Revenue Rate and Referral Account Revenue Contribution. |
| Advocacy Campaigns | Advocacy Campaigns focuses on Coordinated efforts to shape public perception, influence stakeholder opinions, and impact industry standards play a crucial role in creating favorable conditions for product adoption and business growth. It coordinates execution across touchpoints so teams can move users or accounts toward the target outcome. Relevant KPIs include New Users from Referrals and Personalized Referral Outreach Rate. |
| Referral Follow-Up | Referral Follow-Up involves systematically nurturing and monitoring interactions with prospects or customers introduced via referrals. It helps teams translate strategy into repeatable execution. Relevant KPIs include Referral Account Revenue Contribution. |
Total ARR: $5.2M
ARR from referred accounts: $1.1M
Formula: $1.1M ÷ $5.2M = 21.2% Referral Account Revenue Contribution
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(`ReferralAccounts`, { sql: `SELECT * FROM referral_accounts`, measures: { referralRevenue: { sql: `referral_revenue`, type: 'sum', title: 'Referral Revenue', description: 'Total revenue generated from referral accounts.' } }, dimensions: { id: { sql: `id`, type: 'string', primaryKey: true }, createdAt: { sql: `created_at`, type: 'time', title: 'Created At', description: 'The time when the referral account was created.' } }})cube(`TotalRevenue`, { sql: `SELECT * FROM total_revenue`, measures: { totalRevenue: { sql: `total_revenue`, type: 'sum', title: 'Total Revenue', description: 'Total revenue in the specified time period.' } }, dimensions: { id: { sql: `id`, type: 'string', primaryKey: true }, period: { sql: `period`, type: 'time', title: 'Period', description: 'The time period for the total revenue.' } }})cube(`ReferralAccountRevenueContribution`, { sql: `SELECT * FROM referral_account_revenue_contribution`, measures: { referralAccountRevenueContribution: { sql: `${ReferralAccounts.referralRevenue} / NULLIF(${TotalRevenue.totalRevenue}, 0)`, type: 'number', format: 'percent', title: 'Referral Account Revenue Contribution', description: 'Percentage of total revenue generated from accounts acquired via referral.' } }, joins: { ReferralAccounts: { relationship: 'belongsTo', sql: `${CUBE}.referral_account_id = ${ReferralAccounts.id}` }, TotalRevenue: { relationship: 'belongsTo', sql: `${CUBE}.total_revenue_id = ${TotalRevenue.id}` } }, dimensions: { id: { sql: `id`, type: 'string', primaryKey: true }, calculationDate: { sql: `calculation_date`, type: 'time', title: 'Calculation Date', description: 'The date when the revenue contribution was calculated.' } }})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