Event Driven Marketing and the Customer Journey

Joel Oliveira
Joel Oliveira
Sep 14 2020
Posted in Best Practices

It's not what you can do with events but what events can do for you

Event Driven Marketing and the Customer Journey

One of our most successful propositions, Actionable Analytics, is a combination of two great features in our platform. One is the ability to track any event you care about and the other the ability to trigger an action based on those events and its underlying data. When combining these two powerful products (Analytics and Automation Connectors), you can identify key changes in the client’s behaviour and activate predefined campaigns when these changes occur.

The merit of event driven marketing is that you can approach the right client with the right offer, at the right time. Keeping information about the receiver in mind, you can effortlessly create highly personalised campaigns. And it all happens automatically, as soon as the customer triggers a pre-defined campaign.

But let's get practical about this. With Notificare, implementing event driven campaigns is literally one line of code. Pretty much like other analytics solutions, your front-end or back-end applications will trigger an event:


In some cases, you will want to send along some data too:

logCustomEvent("MY_EVENT", {
  key: value

This data will allow you to personalised your messaging campaigns and/or make sure it can will only be triggered when certain thresholds are met. There are also certain types of events you can tap into without having to implement any custom events. These are events Notificare already collects automatically for you, things like your application lifecycle (Open, Close) or message lifecycle (Open, Replied). For these type of events, you can use them right away without having to implement anything.

But let's jump into some real-world examples:


This is a very common use case for most of our clients. It is also a great way to fight installation churn in mobile apps. Implementing an on-boarding screen is the best way to welcome new customers to your applications. It is also the best way to explain what an app is all about, demonstrate what it can do for users and obtain request permission for certain features.

Implementing an on-boarding screen in your app is a great way of highlighting what's in it for users and what steps they should take next. But you will also want to know which users actually complete this step and eventually sign up for your product.

This is where we will focus in this example. We will demonstrate how you can welcome new users, re-engage the ones that got stuck in the process and congratulate the ones that eventually completed the end goal. You can apply this concept to basically any use case you might have.

To achieve this you would start by logging some events. First you would make sure that whenever a user completes the on-boarding process you would log the following event:


And whenever a customer actually finishes the sign up process you would log the following event

logCustomEvent("SIGNUP", {
  name: "John Doe"

As soon as these events are being collected, you can now make them actionable by creating automated campaigns that will be triggered as soon as these events are executed. For example it is now pretty easy to send a welcome message to all users that finish the on-boarding process:

It is also pretty straightforward to send a reminder to all users that finished the on-boarding process but did not complete the sign up form after 24 hours:

Note the cancelling events interaction in this connector. By using a cancelling event you can, with certainty, interact with those users that did finish the on-boarding but did not complete the sign up process.

And finally, it is pretty obvious that you can easily congratulate all those users that actually finished the sign up form:

As you can see, by just registering two different events and create three different automation connectors, you can now engage, remind and welcome new users.

Product Scarcity

A frequently observed business requirement for the majority of our retail clients, is the ability to make customers aware of a certain product's scarcity. This is also a great way of improving a specific product's marketing performance. It works particularly well for products that you either have a limited stock or the necessity to be perceived as such.

For this example, we would register an event whenever a customer visits a certain product's detail page:

logCustomEvent("VIEWPRODUCT", {
  product: "1234567890"

You can then trigger a campaign whenever users visit this page more than once:

Brands that want to drive demand and create interest around a product will find this approach highly effective.

Back in Stock Reminders

Pretty much the same way as the above example, when companies run out of stock for certain products, event driven message can also help gathering a list of users that are interested in such products and easily re-engage with those users later on, when new stock is available.

This would mean allowing users to click a certain button to be reminded about stock availability for a certain product, which in turn would register an event as follows:


In this case you would want to create a segmented group of users that subscribed to a product's availability list. This would mean that you would first trigger this automation connector based on this event:

And use our segmentation rules, where you can easily add all these users into a segment that you can use to as the target audience for a message, whenever the product becomes once again available.


This is a great example of campaigns you can trigger based on events that Notificare automatically collects for you. In this example we will demonstrate the ability to re-engage users that become dormant for a certain period of time.

For cases like this, you can quickly re-engage all those users that did not open your app or visit your website for 30 days by doing the following:

Cart Abandonment & Order Completion

This is probably one of the most interesting interactions you can trigger using Actionable Analytics. Besides measuring how your sales perform, you can at the same time, automatically reach those users that add products to the shopping cart but do not complete an order and send those users who actually make a purchase, an order confirmation message.

For this use case, you would create an event with the most recent cart information data (in this case the quantity of products in the cart and the total amount):

logCustomEvent("ADDTOCART", {
  qty: "2",
  amount: "120.00",
  currency: "EUR"

Pretty much the same way, you would register an event whenever a customer actually finishes an order:

logCustomEvent("PURCHASE", {
  order_nr: "1234567890",
  qty: "4",
  amount: "320.00",
  currency: "EUR"

By registering these events, you can then easily interact with these customers whenever products are left in a shopping cart for 24 hours:

And you can also send a confirmation to those that actually make a purchase:

Shipping Status

Lastly, we would also like to demonstrate how these events can also be triggered by your own server. Keeping the user informed about the shipping status of a purchase is the perfect example for this. Because these events are most likely to come from 3rd party providers, your back-end application is probably the best place to trigger those events.

In this use case, you will trigger an event for a certain user:

curl --include \
     --request POST \
     --header "Authorization: Basic xxx" \
     --header "Content-Type: application/json; charset=utf-8" \
     --data-binary "{
        \"data\": {
                \"status\": \"In Transit\"
}" \

You can then easily transform these server-side events into Push, Email or SMS messages by creating an automation connector as follows:

Ready to Automate your Business?

For most businesses, these examples are just scratching the surface of what is possible with event driven marketing. Due to its nature, these campaigns will always trigger meaningful interactions, personalised messages and highly relevant content that customers will happily perceive as valuable communication.

If you would like to know more, brainstorm your own use cases or simply see these features in action, do not hesitate to contact our Sales Team or drop an email in our Support Channel.

Keep up-to-date with the latest news