I'm able to fit a logistic growth curve, e.g. like this.

Example provided in that link:

data <- data.frame(
  x = 0:15,
  y = c(3.493, 5.282, 6.357, 9.201, 11.224, 12.964, 16.226, 18.137,
        19.590, 21.955, 22.862, 23.869, 24.243, 24.344, 24.919, 25.108)
model = nls(y ~ SSlogis(x, a, b, c), data = data)
plot(data$x, data$y)
lines(data$x, predict(model))

I wanted to experiment by trying to use this approach to model cohort lifetime revenue. I like this model because I get back:

  1. The asymptote which I'll report as almost predicted lifetime revenue
  2. The midpoint which is useful since it tells me how long it will take till we get half of the cohorts expected lifetime revenue.

But, fitting my actual data and plotting it, it looks like my data are more exponential than logistic growth. Black line is actual, blue is predicted with nls(cumulative_revenue ~ SSlogis(tenure, asym, mid, scale), data = mydata:

enter image description here

I like the properties of the logistic growth model, the asymptote and mid point. My question is: if my actual data appear to start off with steep growth before leveling off, is there an equivalent model for exponential growth, with a mid-point and asymptote?

Just eyeballing it I almost just want to flip it over for a hopefully better fit.

[Edit] Updated following a comment. I log transformed the predictor variable and now look! enter image description here

  • $\begingroup$ Why not just use a log linear model? $\endgroup$ Apr 26, 2021 at 17:38
  • $\begingroup$ Hi @DemetriPananos, I liked the logistic growth because of the 2 coefficients: Asymptote and midpoint. I'm not sure but I don't think Log Linear provides those? $\endgroup$
    – Doug Fir
    Apr 26, 2021 at 17:39
  • $\begingroup$ Apologies, I meant logarithmic so something like y~log(x). The logistic growth model tells a nice story, but it is very clear that the data do not support it. It seems like the second derivative of the processes is negative so if you somehow enforced the midpoint to be very small you might be able to get a reasonable fit. Are you able to share the data you used to make this plot? $\endgroup$ Apr 26, 2021 at 17:50
  • $\begingroup$ @DemetriPananos Yes! I'm going to share the new chart above with your simple suggested edit. It's beautiful! Editing my post $\endgroup$
    – Doug Fir
    Apr 26, 2021 at 17:55
  • $\begingroup$ Aw you killed it! Look at that fit! $\endgroup$ Apr 26, 2021 at 17:56

1 Answer 1


The model isn't an exponential growth model (that was my mistake). In English, logarithmic changes in tenure will change $y$.

The model is $$ y = \beta_0 + \beta_1\log(x)$$

At tenure=0, the $y$ value is just $\beta_0$. When tenure is $\exp(1) \approx 2.72$, the $y$ value would be $\beta_0 + \beta_1 \log(\exp(1))$ which is $\beta_0 + \beta_1$. The tenure has to increase by a factor of 2.72 for an amount of $\beta_1$ to be added to the outcome. Make sense?


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.