In R I have data where head(data) gives

day   promotion   profit   new_users
1           105    45662          33
2            12    40662          13
3            44    46800          20
4           203    54102          46

Now day is simply the day (and is in order). promotion is simply the promotion-value for the day, the profit is the profit that day and new_users is the number of new users that day.

I want investigate the relationships between promotion to profit and new_users. We see a clear positive correlation between promotion and profit, and there is also a positive correlation between promotion and new_users. In R I simply test correlation

cor.test(data$promotion, data$profit, method="kendall", alternative="greater" )
cor.test(data$promotion, data$new_users, method="kendall", alternative="greater")

which both gives a low p-value, ie we have a positive correlation.

I want to find a point where where the increase of promotion don't increase profit or new_users that must, ie a sweet spot.

Here is 2 plots and the R code for these

plot(data$promotion, data$profit, col="brown")
plot(data$promotion, data$new_users)

enter image description here

enter image description here

How should this be done?

My thoughts where to make a regression model. For the first one "promotion vs. new_users" one could use a poisons model because it's a count-process, so a model like this would be a good chose?

glm(formula= data$new_users ~ data$promotion, family="poisson", data=data)

Next what regression model should one chose for the next one. Is it fair to say that this regression model is a good chose ? (I use sqrt command)

glm(formula=data$profit ~ sqrt(data$promotion) , data=data)

Or maybe it's not even necessary to use a regression model at all to find a sweet spot?


I have now looked at 'good' new users. For each day we have a promotion value and we have a count value which is the number of new good users. This plot shows us the number of good new users we get for a promotion for each day. For example for promotion value 90 we have a day where we got 8 new good users and a day where we got 14 new good users.

What would be the right approach to find a sweet spot for the use of promotion ?

enter image description here


2 Answers 2


Since I cannot comment because I don't have enough reputation, I will post this as an answer.

If your goal is to "find a point where the increase of promotion don't increase profit or new_users", I won't do a simple regression, since the regression will tell you that if you do more promotions, you will always inscrease the profits. I would say that, in reality, the relationship between promotions and profits or new users is not linear. Because the number of new users is limited and the promotions are not.

A better model is to say that there is a optimal promotion that will give you the best increase of profits and new users.

(if you have a real business to optimise, I would introduce the Customer Lifetime Value of new users. Because generally, the new users you get when doing huge promotions will not come back...)

  • $\begingroup$ This makes so much sense. I will try to see what happens when I do it for "good" users. $\endgroup$ Commented May 25, 2016 at 9:56

Sorry to post it as an answer, because of points required for comments. I could not understand the concept of promotion in your case. Possible scenarios:

  • Count of promotions are available to users (quantitative) In this case, the details of those promotions would help a lot, i.e. having a binary column for each promotion.

  • Promotion IDs (categorical). In this case, we need to consider it as factor. For example, promotion equals 20 would mean "30% off dairy products" and 20 doesn't mean anything on its own and is not more effective (in increasing new users or profit) than 19.

  • $\begingroup$ In my case 'promotion' is a value for the cost of the promotion, fe a television advertisement. So promotion with value 88.31 has fe been in television more times than a promotion with value 12.09. $\endgroup$ Commented May 26, 2016 at 11:33
  • $\begingroup$ Thanks for the clarification. It makes sense now. The concept of plateau applies in your case. Read about it here Disclaimer: I tried searching for articles explaining the concept and ended up searching the knowledge base at Communicus, an advertisement research company I worked with before. $\endgroup$
    – pbahr
    Commented May 26, 2016 at 15:46

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.