EIGENN.
docsguidesapichangelogpricingsign in
EIGENN.

Common formulas: cohorts

Formulas that roll a customer base forward with churn, for one group or for each acquisition channel.

A cohort formula keeps a count of customers from one period to the next. Each period keeps the customers that did not churn and adds the new customers. Revenue then follows the customer count.

The formulas on this page come from the Simple Cohort Model, Advanced Cohort, and B2B SaaS Revenue Model templates. To start from a template, go to Scenario planning → New model, type the template name, and press Enter.

Roll the customer base forward

The Simple Cohort Model uses one customer base.

VariableFormula
CustomersCustomers[previous] * (1 - Monthly churn rate) + New customers
RevenueCustomers * Revenue per customer

In the first period, Customers[previous] is blank. A blank counts as zero in arithmetic, so the first period has only the new customers.

Start from an opening count

If you already have customers, start from an input. The B2B SaaS Revenue Model uses this formula:

if Customers[previous] = blank then Starting customers else Customers[previous] * (1 - Monthly churn rate) + New customers per month

The blank test works when Blanks in data is Treat as blank. That is the setting in the templates.

One cohort for each channel

The Advanced Cohort template breaks the customer base down by the Channel dimension. The items are Organic, Paid, Referral, and Sales. New customers, Monthly churn rate, Revenue per customer, Customers, and Revenue all have the dimension.

VariableFormula
Customersif Customers[previous] = blank then New customers else Customers[previous] * (1 - Monthly churn rate) + New customers
RevenueCustomers * Revenue per customer
Blended revenue per customerRevenue / Customers

Eigenn runs the Customers formula one time for each channel. Each channel uses its own churn rate. The first period with the example inputs looks like this:

ChannelNew customersMonthly churn rateRevenue per customerRevenue
Organic1203%404,800
Paid2006%5511,000
Referral602%452,700
Sales404%2008,000
Total row4203.75%8526,500

Monthly churn rate and Revenue per customer use the Average dimension aggregation. Their total rows show a plain average of the channels. Blended revenue per customer has no dimension, so it divides total revenue by total customers: 26,500 / 420 = 63.10. Use the blended row, not the average, for a company-wide figure.

Patterns in Formula templates

In the formula bar, select Formula templates and search for these names:

TemplateExample after you fill it
Retained customersCustomers[previous] * (1 - Churn rate)
Cohort revenueCustomers * ARPU
Lifetime value by cohortARPU * Gross margin / Churn rate

Related

  • Common formulas: SaaS metrics
  • Time references
  • Dimension references
  • Dimension totals
  • Formulas concept
  • Revenue forecasting

Common formulas: cash and balance sheet

Formulas that carry a cash or balance-sheet balance from one period to the next.

Common formulas: currency and multiple entities

Formulas that consolidate entities, remove inter-company amounts, and convert local currency to a base currency.

On this page

Roll the customer base forwardStart from an opening countOne cohort for each channelPatterns in Formula templatesRelated

Eigenn docs

current product

Overview
Overview
OverviewAccount PreferencesApproval PoliciesAssistant AutomationAssistant Command CenterAssistant Workspace and Saved WorkBank ConnectionsBilling and UsageBudgets and ForecastCommand CenterCustomer FieldsCustomer LifecycleCustomer RecordsCustomersDeveloper PlatformDocument Processing and ExtractionFiles and Document VaultFinancial Analytics and ReportsFinancial OverviewInbox and ApprovalsInvoice InsightsInvoice ProductsInvoicesMarketplace IntegrationsNotifications and BrandingOnboarding and SupportOverviewPlanning Data and DimensionsPlanning Models and FormulasPlanning Time and ActualsPlanning UncertaintyPlanning Versions and CollaborationPlanning Views and ExportsPlans and AdjustmentsReceivablesReceivables AnalyticsReceivables ControlsRolling Budget CloseScenario PlanningSecurity and AccessSettings OverviewStress TestsTeams and OrganizationsTone Profiles and ExperimentsTransaction Categories and RulesTransaction CodingTransactionsWeekly Finance RitualWorkflow ExecutionsWorkflow OutcomesWorkflow PausesWorkflows
OverviewBudget vs. ActualsBuild a Driver-Based Planning ModelBuild and Review a ForecastBuild Your First WorkflowCollaborate on a Planning ModelCompare and Share Planning ScenariosConfigure Approval PoliciesConfigure Assistant OperationsConfigure Customer FieldsConfigure Notifications and BrandingConfigure Planning Time and ActualsConfigure Receivables ControlsConnect Planning Data and ActualsConnect Transaction RecordsConsolidationCreate and Manage CustomersCreate and Send InvoicesCreate Your First Planning ModelDeveloper API SetupFirst Cash ReviewHeadcount PlanningInvoice Collection WorkflowMaintain Transaction RulesManage Security and BillingManage Team AccessManage the Invoice LifecycleMCP WorkflowsMonitor and Recover WorkflowsOrganize and Share DocumentsProcess Inbox ItemsReconcile and Categorize TransactionsRevenue ForecastingReview a Customer Finance RecordReview, Restore, and Export a Planning ModelRun a Finance Operating ReviewRun a Receivables Tone ExperimentRun a Runway Stress TestRun Planning Uncertainty AnalysisRun Your First Command Center ReviewSave and Share Assistant WorkSet Up a WorkspaceTroubleshoot Account AccessWebhook DeliveryWeekly CFO Review
Overview

Concepts

DataDimensionsFormulasScenarios

Variables

VariablesChange an input over timeCreate a variableFormat a variableOrganize variablesTime totalsUse a variable from another modelVariable types

Time

TimeLast actual dateRoll the model forwardTime granularityTime settings

Formulas

FormulasBlanks and helpersCommon formulas: cash and balance sheetCommon formulas: cohortsCommon formulas: currency and multiple entitiesCommon formulas: headcount and payrollCommon formulas: SaaS metricsCommon formulas: seasonalityConditionalsDimension referencesFormula syntaxFunctionsTime referencesTroubleshoot formulasValues with uncertaintyWrite a formula

Charts and Dashboards

Charts and dashboardsCompare scenarios and versionsCreate a chartExport and shareTablesTime aggregation in charts

Dimensions

DimensionsApply a dimensionCreate a dimensionDimension examplesDimension totalsThe Dimensions page

Data

DataChoose cash or accrual for XeroConnect a data sourceLink a variable to dataRefresh and check actualsUse transaction categories as actuals

Data Integrations

Data integrationsBank transactionsCSV importFortnoxQuickBooksStripeXero

Views

ViewsCreate and edit a viewFilter a viewShare a view

Versions

VersionsCompare versionsRestore a versionSave a version

Scenarios

ScenariosCompare scenariosCreate a scenarioPlans and adjustmentsStress tests and shocks

Collaboration

CollaborationComment on a modelShare a model and set accessTeam roles and planning access

Managing Models

Managing modelsDuplicate a modelExport a modelModel limits and performanceStart from a templateThe models home and foldersTrash, restore, and delete a model
OverviewIntegrationsMCPSDKsWebhooks
OverviewAuthenticationBank Accounts APICustomers APIErrorsForecasts and Stress Tests APIInvoice Payments APIInvoices APIPaginationRate LimitsRemote Tracker API StatusTracker Categories APITracker Entries and Timers APITracker Projects APITransactions APIWebhooks API StatusWorkflows API
Overview
Overview