- All Posts
- /
- A system for prioritising segments
A system for prioritising segments
Messaging and Automation-
Chris Hexton
-
Updated:Posted:
On this page
At any given moment each of your users will match several different marketing segments, or states.
Take an imaginary user, Casey, who:
- Is in a free trial but hasn’t activated yet,
- Previously signed up for weekly product updates,
- Recently attended a live, in-person event.
This week you intend to send three different messaging campaigns:
- A re-engagement nudge to inactive trials (this is automated),
- A product update email introducing a new feature,
- A sales offer to recent event attendees.
If we’re in charge of customer messaging, the question is: what do we send Casey? All three messages? One message? Which message?
Let’s look at how we might answer this question.
Firstly, we could ask Casey. With preferences, we can confirm what Casey wants to hear.
This is a good step but, even then, we have options: preferences are a way of learning what a customer is interested in. That doesn’t necessarily mean that Casey wants to receive all three emails this week.
And this is just a simple example: the problem really escalates as a company grows. When there’s a sales team, a product marketing team, a digital marketing team, an events team, a customer success team and beyond all working on ways to get your users’ attention.
The following framework helps you frame your thinking about this problem.
Left-to-right, top-to-bottom
Take the following matrix:
The rules of this matrix are as follows:
- Left-most match. A customer can belong to many given segments at the same time but with this system, we will put them in the first column they match, moving left-to-right. E.g. if a user is in segments A and B then they’ll be in “A” for the purposes of messaging them today.
- Top-to-bottom message prioritisation. Once it’s determined where a customer sits in terms of segmentation they will then get the top-most message assigned to that segment.
The simplest way to put this model to work is to imagine a “gate” that opens every day at a certain time, say 9am (in each users’ timezone). At that time the system calculates which segment the user is in, using the “first match” from left-to-right.
The message will then be chosen using a “next-cab-off-the-rank” methodology, working top-to-bottom within that segment. Implicit in this selection process is the idea that a user will never get the same message twice. For example, if a user has been in a particular segment before and received message A then, if they re-enter this segment after having been prioritised in another, then they will receive message B.
So, today, Casey might be in segments B and C but not A. Using the matrix, the system would place her in segment B as the priority. It would then assess whether to send messages 1, 2 or 3. Assuming she’s been in segment B before and received message 1, she will receive message 2 today.
Next-best action
What this model is doing is determining the “next-best action” for each of our users.
Traditionally, marketing works on a campaign-based approach. Marketers develop “campaigns” using automations and users are evaluated on a campaign-by-campaign basis. This is absolutely fine but does get tricky at a certain scale: it gets to a point you can no longer visualise what message a user is likely to get and when they’re likely to get it.
One way to solve this is to introduce rate limits. I.e. users can not receive more than X messages per Y days/weeks. This is a good approach but doesn’t necessarily mean you’re optimising the message a user will receive and it can also be very opaque as, rather than asking “what is the best thing we can send today” it instead says “stop sending messages after one goes out”, which can be very different things.
The “next-best action” approach takes the competing streams of messages into consideration and optimises the best message for a user to receive, and does so in a way that is easier to understand and hold in our heads.
Is there a ceiling?
This system does have limits.
Eventually you’ll get to a point that you have so many segments left-to-right and so many messages top-to-bottom that you can’t easily determine what order they should go in or how to decide on what wins in each competition. Even though it’s less opaque than a campaign-driven approach, you will still have too many manual rules to maintain.
The ultimate way to solve this is to move toward a system without any rules: something purely algorithmic: letting the system decide “right now, what other users does Casey look like and, based on all available message streams, which message should I send next?” from limitless message options.
This lifts the ceiling and essentially makes it possible to scale infinitely but it gets complex and requires a large user base to be effective for most goals.
The future
At Vero, we think this sort of “next-best action” approach is the future and we’re working on tooling to get there. Right now it’s not easy to build this sort of system at scale for a few reasons:
- Campaign-based tooling is the norm. Whether you’re using Vero or any of our major competitors, campaign-based tooling is what you’ve got access to. This makes it difficult to build a programmatic next-based action system.
- “Gating” isn’t forward-looking. If you only want to send two messages per week, is the system smart enough to know that you’ve got a product update or other newsletter coming up at the end of this week? Does it take into account scheduled campaigns or regular cadences?
- Message grouping isn’t readily available. In the matrix above you can see we’ve got “product updates” as a message stream. Technically product updates are individual campaigns or messages in most customer engagement platforms. Ensuring you can identify these as a single message stream or message type is key to the next-based action approach.
All of these are solvable and we have great ideas on how to do so! We’re excited to build them out.
Using the matrix as a reference
All that said, you can still use this matrix today.
As a small company or marketing team
At Vero, we’re not yet big enough that we have so many competing messaging streams we need to implement a full-blown, programmatic next-best action messaging system.
But we do have a few competing message types and we try hard not to overwhelm our users with messages.
If you’re in the same boat as us, and aren’t yet at the stage you need a algorithmic next-best action messaging system, you can still use this matrix as a useful guide, even when just scheduling up campaigns manually or with your automated campaigns.
We use the framework to help us visualise the competing messages we’re sending and to whom we’re sending them. For example, in weeks where we are sending a product update and a blog post, we know there are many customers that are both in the ex-trials segment and blog subscriber segments, so they could receive both. For users in the “ex-trials” segment, we want to prioritise product updates over blog posts. To visualise this, we think about a user who is in both segments as landing here on our matrix, during those weeks where they are in both segments.
This approach works equally well for automated messages. For example, based on the matrix above, we exclude anyone who is in our onboarding sequence from product updates and blog posts, as we prioritise the onboarding messages first.
As a big company or marketing team
As a bigger team you’re going to have a lot more going on in terms of customer messaging. Whilst, ultimately, a true programmatic system is the dream, the tooling isn’t quite there yet.
This system can help you map out, perhaps in a giant spreadsheet, Miro or Figma board, all of the groups or streams of messages you’re sending customers. You can then use segments in the various campaigns in your customer engagement platform to get as close as possible to the matrix and massively reduce fatigue.
At the very least this will give you a framework when you’re setting up or maintaining the messages your sending customers.
A comprehensive system for segmentation
You can use the framework in this post to audit and take stock of what you’re currently sending customers. I find it a really valuable way to think about all of the possible things you are sending (or trying to send) and the trade-offs between them.
At a small scale, it’s a tight one-pager you can discuss with your team to get alignment as well.
I would love to hear your thoughts on this system. Where does it break? What doesn’t make sense? Your feedback will help us build the future.