/retentioneering-tools

Retentioneering: product analytics, data-driven CJM optimization, marketing analytics, web analytics, transaction analytics, graph visualization, process mining, and behavioral segmentation in Python. Predictive analytics over clickstream, AB tests, machine learning, and Markov Chain simulations.

Primary LanguagePythonOtherNOASSERTION

Rete logo Discord Telegram Python version Pipi version Downloads Downloads

What is Retentioneering?

Retentioneering is a Python library that makes analyzing clickstreams, user paths (trajectories), and event logs much easier, and yields much broader and deeper insights than funnel analysis.

You can use Retentioneering to explore user behavior, segment users, and form hypotheses about what drives users to desirable actions or to churning away from a product.

Retentioneering uses clickstream data to build behavioral segments, highlighting the events and patterns in user behavior that impact your conversion rates, retention, and revenue. The Retentioneering library is created for data analysts, marketing analysts, product owners, managers, and anyone else whose job is to improve a product’s quality.

A simplified scenario of user behavior exploration with Retentioneering.

As a natural part of the Jupyter environment, Retentioneering extends the abilities of pandas, NetworkX, scikit-learn libraries to process sequential events data more efficiently. Retentioneering tools are interactive and tailored for analytical research, so you do not have to be a Python expert to use it. With just a few lines of code, you can wrangle data, explore customer journey maps, and make visualizations.

Retentioneering structure

Retentioneering consists of two major parts: the preprocessing module and the path analysis tools.

The preprocessing module provides a wide range of hands-on methods specifically designed for processing clickstream data, which can be called either using code, or via the preprocessing GUI. With separate methods for grouping or filtering events, splitting a clickstream into sessions, and much more, the Retentioneering preprocessing module enables you to dramatically reduce the amount of code, and therefore potential errors. Plus, if you’re dealing with a branchy analysis, which often happens, the preprocessing methods will help you make the calculations structured and reproducible, and organize them as a calculation graph. This is especially helpful for working with a team.

The path analysis tools bring behavior-driven segmentation of users to product analysis by providing a powerful set of techniques for performing in-depth analysis of customer journey maps. The tools feature informative and interactive visualizations that make it possible to quickly understand in very high resolution the complex structure of a clickstream.

Documentation

Complete documentation is available here.

Installation

Retentioneering can be installed via pip using PyPI.

pip install retentioneering

Or directly from Jupyter notebook or google.colab.

!pip install retentioneering

Quick start

We recommend starting your Retentioneering journey with the Quick Start document.

Step-by-step guides

Preprocessing

Path analysis tools

Raw data type

Raw data can be downloaded from Google Analytics BigQuery stream, or any other such streams. Just convert that data to the list of triples - user_id, event, and timestamp - and pass it to Retentioneering tools. The package also includes some datasets for a quick start.

Changelog

Contributing

This is community-driven open source project in active development. Any contributions, new ideas, bug reports, bug fixes, documentation improvements are very welcome.

Retentioneering now provides several opensource solutions for data-driven product analytics and web analytics. Please checkout this repository for JS library to track the mutations of the website elements.

Apps are better with math! :) Retentioneering is a research laboratory, analytics methodology and opensource tools founded by Maxim Godzi in 2015. Please feel free to contact us at retentioneering@gmail.com if you have any questions regarding this repo.