Insights | Dataweavers

Shocking Discovery! Sitecore Marketing Automation not actually Automated

Written by Dataweavers | Jul 27, 2022 11:20:30 AM

One of the things we take on with gusto at Dataweavers is breaking down cloud roadblocks that stop customers from being successful. But, what happens when a fundamental advertised capability of a platform just simply doesn’t work?

We recently found an issue with Sitecore Marketing Automation, and while we’re not in the business of finger pointing - this one stinks, and we need to get it sorted.

Why? A report by One Spot and referenced by Consultancy here said that based on a survey of 350 marketing execs, they found that 65% of email marketers deem dynamic content as the most effective personalization tactic in their arsenal. They also say that 60% of marketers say real-time data in email is either ‘effective’ or ‘highly effective’.

In short, we need email marketing automation and personalization to be successful.

Our client, like many others had a requirement to run a Marketing Automation plan based on a segment of the userbase that had interacted or not interacted with one of their specific marketing emails. This is a common requirement for teams looking to set up various Marketing Automation activities using Sitecore.

In Sitecore versions 9.0 and 9.1, you would specifically use the campaign rules. However, in the latest version of Sitecore, new rules specific to email and email statistics have been introduced. In this case, this particular solution is running on Sitecore XP 9.1, in Azure PaaS, with the search provider Azure Search (instead of the other supported options like Solr). It has been performing well and as intended for around 10 months of the solution being live.

Let us walk you through how we were setting up the marketing automation campaign. To set up the Automation plan, one of the rules we required was the contact opened email <specific email>. 

When we tried to run this, Sitecore throws an exception:

System.NotSupportedException: Contact.Interactions is not currently supported in Azure

As we were working towards getting this campaign live and ready, through testing… BOOM, we came across this issue.

So we decided to contact Sitecore support and hear what they had to say. Here is a redacted version of our communications with them:

Hello Mark,

I have investigated the Azure error you faced (Contact.Interactions is not currently supported in Azure) and found that, unfortunately, this functionality is not supported for now. Actually, there were conversations with Microsoft about this on the past and at that moment they had no plans to add support for it. A feature request has been created for the product so that we might come up with some alternative around the existing functionality in our future implementation.

Reason for this issue has been mentioned here:  https://doc.sitecore.com/developers/90/sitecore-experience-platform/en/supported-methods-and-operators-for-xconnect-search.html#idm46062001413056

The following limitation is specific to the Azure Search provider for xConnect search.

contact.Interactions.Any() :  Joins are  not  supported by the Azure Search provider.

We responded:

Thanks for the info. Would it be possible if the code was changed so that it doesn't need to do a join?

Sitecore responded:

Hi Mark,

I have tried my best to help you but we don't have any recommendation for your question.

You may track the future status of this request, please use the reference number 229424. More information about public reference numbers can be found here  https://kb.sitecore.net/articles/853187

While we have known about this issue for a little while, as such a fundamental flaw in the system we did expect it to be fixed with the release of version 9.2. Now with the improvements in the Marketing Automation interface in version 9.2, more and more customers are now discovering the issue too.

We simply don’t believe that changing to a different search provider such as Solr is an acceptable response to implementing a change to a platform whose core mantra is based on creating personalised experiences.

Is this true…that Sitecore isn’t in a position to support this particular functionality?

Blaming this issue on the limitations of the given search provider is not acceptable. There are other ways to solve this specific problem, such as going direct to the database or rearchitecting the way your search provider specifically works. However, Sitecore, you’re not delivering on the needs of your customers who fundamentally buy the platform for… Marketing Automation and Email Marketing.

Is this quality of decision making we can expect from Sitecore going forward?

Having trouble with something similar? Get in touch and we can work on a solution together.