All Plays
Reduce Churn with Segment and Intercom

Reduce Churn with Segment and Intercom

Sync customer churn scores to your Intercom account, enabling proactive churn prevention

What this Play does:

This Play automatically syncs Upollo’s Churn Scores to your Intercom account, allowing you to proactively engage with at-risk customers, improving your retention rates and preventing churn.


For this Play to work, you should have the following accounts set up:

  • Upollo Account: Upollo brings together all of your customer data (App/Website, Billing/Subscription, CRM, Customer Support) to provide insights and predictions for Conversion, Churn/Retention, and Expansion. Get started for free. 
  • Segment Account: For collecting your app data and sending Upollo insights to Destinations like Intercom. This Play assumes your app/website’s data is successfully flowing into Segment, and you’ve already completed the Segment Setup with Upollo.
  • Intercom Account: For sending emails to your users. You can use a different email provider - this Play will use Intercom as a Segment Destination to send emails to users based on custom criteria. This Play assumes you’ve already set up your domain via the Intercom documentation

Here’s an overview of how we’ll be moving data between Upollo and these other tools throughout this Play.

Step 1

Add Upollo as a Segment Source

If you’ve already set up Upollo as Segment Source, you can skip to Step 2.

First, we need to add Upollo as Source in Segment. Log in to your Segment dashboard. Select “Catalog” from the left the navigation. 

Search for “Upollo” and select the Upollo from the “Sources” section in the Search Results. 

Set a name for this Source.

After setup, copy and paste the Write Key in the Segment UI. Be sure to keep this key private. For full setup instructions, refer to the Segment Documentation.

In Upollo, go to the Connections page and find the Segment Source connection and click Connect.

In Upollo, paste the Write Key from Segment into the text field marked Private API Key. Click Save.

Once your changes are saved, insights and predictions from Upollo can now be used as Source within Segment. Upollo will send information about which users have a high or low likelihood of churning, so that you can take action right away. In the rest of this Play, we’ll be setting up some automations to monitor and proactively reach out to people who might churn soon.

Step 2

Add Intercom as a Segment Destination

In the Segment dashboard, go to the Destinations page. If you don’t have any Destinations already set up, this page might look different or empty. Click Add destination.

In the Catalog, search for Intercom. Click Add Destination

To set up the Destination, you’ll first need to Select a data Source. You should see the Upollo Source that you created in Step #1 above. Select Upollo from this list and click Next at the bottom right corner.

Click the Connect to Intercom button and you’ll be taken to Intercom in another tab.

In Intercom, ensure you are selecting the correct Workspace. Click the Authorize access button to link this Intercom Workspace to Segment as a Destination. 

Once successfully authorized, you’ll be redirected to Segment and a success message will appear. 

In Segment, go to the Event Tester tab within the Intercom Destination. We’ll use this page to send a test event to Intercom to ensure it works correctly before enabling your live user data.

In the Event type dropdown menu, select Identify. In the Sample event payload text field below, paste in our example event. Take notice of the Trait prediction_churn_score, which has a value of 0.95052526. This means our example user has an approximately 95.05% chance of churning within the next 28 days.

Click Send Event

	"context": {
		"integration": {
			"name": "upollo_source",
			"version": "1.0.0"
		"library": {
			"name": "analytics-go",
			"version": "3.0.0"
	"integrations": {},
	"messageId": "1234567890",
	"originalTimestamp": "2024-05-27T04:14:59.14184486Z",
	"receivedAt": "2024-05-27T04:15:04.385Z",
	"sentAt": "2024-05-27T04:15:04.141Z",
	"timestamp": "2024-05-27T04:14:59.384Z",
	"traits": {
		"email": "",
		"plan": "pro",
		"isOnTrial": true,
		"prediction_churn_score": 0.95052526,
		"prediction_churn_last_updated": "2024-05-26T10:30:22Z"
	"type": "identify",
	"userId": "1234567890",
	"writeKey": "REDACTED"

After confirming that you want to send a test event, a 200 OK success message should appear in the right column under the Event lifecycle heading.

In Intercom, Go to the Contacts page and find the example user. In this case, the email is Click on the user’s email to open their detail page.

On the user detail page, find the Details panel and click See ## more to expand the panel to see all the attributes associated with this user. 

At the bottom, you should see the traits we sent from Upollo in the test event. In this example, we sent the following traits:

  • Isontrial: Whether or not this user is currently on a trial
  • Plan: The name of the Plan this user is on
  • Prediction churn last updated: When the churn prediction score was last updated. 
  • Prediction churn score: A decimal value from 0-1 that indicates how likely a user is going to churn in the next month. 0 means unlikely (0% chance) that they will churn. 1 means likely (100% chance) that they will churn.

If you see the traits above in your Intercom user details, keep reading and we’ll show you how to take proactive action for people with high churn scores.

Step 3

Set up your Campaign(s) in Intercom

Finally, we're at the fun part: Actually preventing churn. We’ve written before about the various reasons why people churn, and how these reasons can actually require a different approach. For this Play, let’s focus on reason #1 from our article, and a very common reason for churning: Not Realizing Enough Value

These users haven’t used all of the key features in your app, and they haven’t logged in for weeks, resulting in a high churn score. To prevent this churn, let’s set up a campaign to automatically reach out to people who are slipping away.

In Intercom, go to the Proactive Support page. If you already have a company email template, feel free to use that. Click the New message button. 

Click the Email section in the left column. For this example, we can use the Re-engage your users template.

Select your styling (either Plain, Personal or Company) and click Use this template. For a company-branded email to many people, we recommend using Personal or Company. For a 1-to-1 personalized email, we recommend using the Plain template. 

Configure the template however you want. Keep in mind, this user hasn’t logged in for awhile and haven't gotten full value out of your product.

Scroll down to the Rules section, and set the following filters in the Audience sub-section:

  • Users
  • Prediction_churn_score: Greater than 0.75 (75%, or whichever threshold you want)
  • Last seen: More than 14 days ago (or whichever threshold makes sense for your company)

After setting your Audience Rules, the example user from earlier should appear in the “Preview # people who is in your audience right now” section. If the example user doesn’t appear here, check their Last seen date and try again. 

After you’re done, scroll back up and send a Preview to yourself to double check everything, and then Save the email. When you’re ready to go live, click the green Set Live button at the top right. This email will be sent to all users with a high churn score (75%+), and haven’t been seen in 14 days. 

Bonus: Flag Inquiries from High-Churn Score Customers

Since we’re already using Intercom for this play, let’s set up another automation to make our teams lives easier. In this part, we’re going to automatically flag Intercom messages that are sent from users with high churn scores, as well as assign these messages to our Customer Success team. This way, everyone is kept in the loop and our teammates can take proactive action in case something goes wrong. 

In Intercom, go to the Automation tab, and click on Workflows. Click New workflow.

Click Start from scratch.

We’re going to use similar Audience filters as before.

In the Audience section, add a new Filter for prediction_churn_score and set this value to 0.6 or whichever threshold you want.

Again, you can check that this is working by verifying that our example user is present in the Preview # person who is in your audience right now section. Click Save and close.

Click Add step. We’re going to take 2 actions during the same step.

First, add the Mark as priority step. This lets your team know it’s urgent.

Next, assign it to a team. In this example, we’re going to assign it to our Customer Success team.

Now you’re done! Click the green Set live button.

After setting this workflow live, any user who reaches out to Support via intercom, and has a high churn score, will automatically be marked as a priority and automatically assigned to your customer success team to take proactive action.

By combining Upollo’s powerful churn prediction scoring with your existing tech stack, you can now send tailored campaigns and personalized 1-to-1 outreach to your customers who are going to churn soon. Need help crushing churn at your company? Upollo is here to help. 

Table of Contents
Integrations in this Play

Get this Play for Free

Automate your churn prevention, conversion, and expansion strategies