This documentation page assumes that you already have a SeekTable account.

Cohort Analysis with SeekTable

Cohort analysis is used for getting insights about user behaviour when they are grouped by some criteria. This kind of analytics is performed with dataset that represents a history of some events; this might be page views statistics or log of user actions (say, purchases).

On input you need to have tabular data with the following columns:

This article shows how SeekTable can be used for cohort analysis on user retention report sample (like in Google Analytics).

CSV data source

Lets assume that our history data is represented by user_events.csv file. After file upload SeekTable automatically suggests "year" and "month" dimensions for date columns:

To perform cohort analysis we need to add one custom dimension to calculate number of months between event data and registration date (Cube → Edit Configuration). For this purpose "Expression" type of dimension can be used:

Type Name Label Format Parameters
Expression month_from_reg Months from Reg Date
  1. ( 12*Dim["Event Date (Year)"]+Dim["Event Date (Month)"] ) - ( 12*Dim["Reg Date (Year)"]+Dim["Reg Date (Month)"] )
  2. Reg Date (Year)
  3. Reg Date (Month)
  4. Event Date (Year)
  5. Event Date (Month)

In dimension with type="Expression" 1-st parameter is a formula expression, and next N parameters are names of dimensions that are used as arguments of the formula.

Also lets add a measure that counts number of unique users inside group:

Type Parameters Name Label
CountUnique ID CountUniqueOfID Count Unique Users

Now we can configure user retention by month report:

You can use options from "Format" tab to make your user retention report like in Google Analytics:

Now you have basic cohort report; you can use another dimensions on columns to change cohort criteria; also you can change the formula and user another period instead of month - say, a day or quarter.