Churn Prediction Model based on Customer Activities
First of all, you need to see your churn rate to see how rare it is. If your churn rate is really low ( below &lt; 5% of total labels ), then you could treat this as an anomaly detection system, meaning you train your model on non-churn users ( if churn is the label you're predicting then the non-churns would have 0 as label ), and flag any activity different from what you trained your model on as an anomaly ( in case you don't have enough examples of activities that led to churn ), or if you have enough 'churners' to train your model on, treat this as a classification problem. I'll suggest some indicators for you even though i haven't worked on a churn model before.

Assuming you only have email activity ( following your statement ) you could :


create a feature count on the email activity to see if there's a pattern to churn after certain numbers of non-reads,non-clicks,non-opens.
try to collect more features if there are more because 3 is a low feature count for a predictive model ( maybe not only the activity but the user's personal information like age / type of profession etc.. )
you can also see this article discussing user churn.


Hope this helps you.