Skip to main content

Measure customer lifetime value in Python

Project description

Measuring users is hard. Lifetimes makes it easy.

PyPI version Documentation Status Build Status Coverage Status

Introduction

Lifetimes can be used to analyze your users based on a few assumption:

  1. Users interact with you when they are “alive”.

  2. Users under study may “die” after some period of time.

I’ve quoted “alive” and “die” as these are the most abstract terms: feel free to use your own definition of “alive” and “die” (they are used similarly to “birth” and “death” in survival analysis). Whenever we have individuals repeating occurrences, we can use Lifetimes to help understand user behaviour.

Applications

If this is too abstract, consider these applications:

  • Predicting how often a visitor will return to your website. (Alive = visiting. Die = decided the website wasn’t for them)

  • Understanding how frequently a patient may return to a hospital. (Alive = visiting. Die = maybe the patient moved to a new city, or became deceased.)

  • Predicting individuals who have churned from an app using only their usage history. (Alive = logins. Die = removed the app)

  • Predicting repeat purchases from a customer. (Alive = actively purchasing. Die = became disinterested with your product)

  • Predicting the lifetime values of your customers

Specific Application: Customer Lifetime Value

As emphasized by P. Fader and B. Hardie, understanding and acting on customer lifetime value (CLV) is the most important part of your business’s sales efforts. And (apparently) everyone is doing it wrong. Lifetimes is a Python library to calculate CLV for you.

Installation

pip install lifetimes

Requirements are only Numpy, Scipy, Pandas, Dill (and optionally-but-seriously matplotlib).

Documentation and tutorials

Official documentation

Questions? Comments? Requests?

Please create an issue in the lifetimes repository.

More Information

  1. Roberto Medri did a nice presentation on CLV at Etsy.

  2. Papers, lots of papers.

  3. R implementation is called BTYD (for, Buy ‘Til You Die).

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

Lifetimes-0.10.0.0.tar.gz (574.5 kB view details)

Uploaded Source

Built Distributions

Lifetimes-0.10.0.0-py2.py3-none-any.whl (608.9 kB view details)

Uploaded Python 2 Python 3

Lifetimes-0.10.0.0-py2-none-any.whl (608.9 kB view details)

Uploaded Python 2

File details

Details for the file Lifetimes-0.10.0.0.tar.gz.

File metadata

  • Download URL: Lifetimes-0.10.0.0.tar.gz
  • Upload date:
  • Size: 574.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.8.1 pkginfo/1.4.1 requests/2.18.1 setuptools/38.2.5 requests-toolbelt/0.7.1 clint/0.5.1 CPython/2.7.11 Darwin/18.0.0

File hashes

Hashes for Lifetimes-0.10.0.0.tar.gz
Algorithm Hash digest
SHA256 bc7eefd28645ce993754dc7d18a2c255fd55d2384d9e1cb9667ba5747eff454c
MD5 56828d88fac71c6d95fd1883bbb6bcc0
BLAKE2b-256 40396c496460dee2af84ac5f80a25155dfd3efd5b1905d459232a2b9d43f1234

See more details on using hashes here.

File details

Details for the file Lifetimes-0.10.0.0-py2.py3-none-any.whl.

File metadata

  • Download URL: Lifetimes-0.10.0.0-py2.py3-none-any.whl
  • Upload date:
  • Size: 608.9 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.8.1 pkginfo/1.4.1 requests/2.18.1 setuptools/38.2.5 requests-toolbelt/0.7.1 clint/0.5.1 CPython/2.7.11 Darwin/18.0.0

File hashes

Hashes for Lifetimes-0.10.0.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 437cb8ae89902c53229d73b9407da334ab6ffecac13d62637b59a443a42fc9ad
MD5 8d5e667e6d7b9f07a65788e26e14929e
BLAKE2b-256 f95849b82f2a2a4ff208f259aed5acaa70e84ce2bd5baa8a88cb5d197dcaaa55

See more details on using hashes here.

File details

Details for the file Lifetimes-0.10.0.0-py2-none-any.whl.

File metadata

  • Download URL: Lifetimes-0.10.0.0-py2-none-any.whl
  • Upload date:
  • Size: 608.9 kB
  • Tags: Python 2
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.8.1 pkginfo/1.4.1 requests/2.18.1 setuptools/38.2.5 requests-toolbelt/0.7.1 clint/0.5.1 CPython/2.7.11 Darwin/18.0.0

File hashes

Hashes for Lifetimes-0.10.0.0-py2-none-any.whl
Algorithm Hash digest
SHA256 207add6bf36a612d764e0fbe8ae0254c289342366ee50545a48042464b373ab9
MD5 fc04c46428da622d9559e274b15aeb04
BLAKE2b-256 2baa4dda92836c6daa7540f99c523050bc028eab76d5885345ba8cb8f7bf193a

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page