Lifecycle of a customer

The lifecycle of a customer includes several milestones. A customer might start out by signing up for a free trial (lead), purchase a subscription (new business), upgrade to a different plan (expansion), downgrade that plan (contraction), cancel (churn) and then reactivate (reactivation). This article gives an example of the lifecycle of a customer and the activities that define it. 

In ChartMogul, customer activities are summarized as MRR movements. These movements can be observed on a customer's profile page and in the data table below the charts.


Imagine you are a subscription company with the following plans:

  • Gold trial: $0
  • Silver trial: $0
  • Gold annual: $500
  • Gold monthly: $50
  • Silver annual: $300
  • Silver monthly: $30

Free trial

A customer signs up to the Gold trial plan and becomes a lead. 

New business

A new customer 'Emperor Gaming Inc' is created and they subscribe to 4x Gold annual plan. They are charged $2,000.

ChartMogul considers this 'New business' and the MRR is calculated as $2000 / 12 = $166.67 MRR.


Handling the many ways in which our supported billing connectors and API handle mid-term upgrades is fairly complex. We've worked hard to make sure that we follow the same patterns as described below when dealing with the various types of expansion. 

Pro-rated upgrade and instant charge 

A week later Emperor Gaming Inc decides to increase the quantity of their Gold annual plan to 6x instead of 4x. They are charged a pro-rated amount from the time of upgrade to the end of the billing period. This is classified as expansion and will appear in your ChartMogul account right away.

Upgrade and charge at next billing cycle 

In some scenarios (e.g. with customers on monthly billing) you might decide to wait until the next billing cycle to start charging the higher amount. In these cases, the expansion will be registered in ChartMogul at the start of the next billing cycle.

Instant Pro-rated upgrade with delayed charge

You might decide to pro-rate the upgrade but not charge the customer right away. Instead, you add this pro-ration as a one-time charge on their next invoice. This is effectively paying in arrears (or post-paying) for a period where the plan was upgraded beyond what was paid for originally. In this scenario, once this amount has been paid at the start of the next billing cycle, ChartMogul will go back in time to the time when the expansion happened and revise the MRR upwards from that moment onwards.

Expansion through additional subscription 

A few days later Emperor Gaming Inc also decides to add a second subscription of 2x Silver monthly plan. They are charged $60 for this and, as it's a monthly plan, the MRR for this subscription is also $60. As this is an additional subscription on an existing paying customer, we classify this as 'Expansion' and not 'New business'.


Contraction through cancellation 

After 2 weeks, Emperor Gaming Inc realises they don't need their Silver plan and cancels that subscription. As they still have one subscription active, this is classified as 'contraction' rather than 'churn'. As the customer has already paid up to the end of the month for this plan, the $60 of contraction MRR will be registered in ChartMogul at the start of the next billing period rather than right away because you have "Always recognize cancellations as churn at the end of the paid-up billing period" selected in your ChartMogul churn recognition settings

Contraction through MRR decrease 

With a mid-cycle downgrade (not cancellation) things are a little bit more complex if your billing system supports (and you have enabled) pro-rated downgrades. In this scenario, a pro-rated credit is applied to your account and then used as a deduction from your next invoice. In this scenario, we will learn about the contraction and this pending credit at the start of the next billing cycle. We will then go back in time to the moment of the contraction and revise the MRR downwards. This is only in the case that you elect to pro-rate your downgrades (not a normal practice).


As Emperor Gaming Inc approach the end of their first year's Gold annual subscription, they realise they need to cut some costs and decide to cancel their Gold annual subscription. As this is their only remaining active subscription, this cancellation is classified as 'churn'. The churn will be realised at the end of the current billing period, rather than right away as they have already paid up until the end of the year.


Great news, a few weeks later Emperor Gaming Inc realised they can't do without your service and subscribes to a new 3 x Gold monthly plan. This is classified as a 'Reactivation' with $150 MRR.



When analyzing the activities of a customer's lifecycle in ChartMogul, it is important to understand that the movements are based on changes in MRR which might differ from the actual activity taking place.

For example, if you offer your customer a time-based discount to upgrade, this could result in the price of the new plan being lower than the price of the current plan. The result would be a contraction, as the MRR amount decreases for a period of time. When the discount is removed at a later time, an expansion activity would occur. 

Another factor to keep in mind is that an activity could be delayed based on how plan changes and charges are actioned out in the billing connector. This influences when they appear in ChartMogul and results in the time stamp not being set to the time when the activity was initiated but rather when it was actioned out.