I wanted to share my insight on how I would approach implementing Adobe Target for your channels. Broadly speaking there are two ways through which you can implement Target:
Before we dig further into each and how we can implement them, let's understand what they are and the considerations around each one.
Client Side Implementation works when a user starts an interaction with a web property. The personalized experience is rendered on the client side. To implement this experience, Target provides a What You See Is What You Get (WYSIWYG) editor called the VEC editor.
On the other hand in Server Side Implementation, the web server sends a request to target to provide a personalized experience. To implement this experience, Target provides Application Program Interfaces (APIs) such as Node.js, Java etc.
When you personalize on the client side, there are benefits such as speed at which activity can be set up and use of the VEC editor which allows you to setup activity in three simple steps. In most cases with client side, you don’t need a developer team to help you implement personalization. That means marketers are not bound by any release cycles or unavailability of resources.
Now, let’s look at the benefits of server side implementation. The biggest benefit is the speed and overall end user experience. Since the rendering of content is happening on the server side, the overall user experience improves and there is no dependency on the customer's browser since in some instances JS might be disabled on the customer's end. Another benefit is the flexibility you get with the APIs that Target provides. There are many APIs provided by Target such as Node.js, Java, etc and your development team can take advantage of the benefits and flexibility it provides for complex Target implementations.
As we have seen above, each method has its own benefits and shortcomings. If you are aiming for your marketers to have complete freedom, client side implementation is the way forward. If you want performance and your organization has tight security controls, server side implementation is the way forward. Also, note that if your visitors are cross channel such as browser, mobile devices, Internet of Things (IoT), etc., then server side implementation is the way forward.
I recommend that you list all the requirements and consider which implementation makes more sense to you.
Here is a quick comparison to help you make that decision:
|Item||Client Side||Server Side|
|Setup||Setting up the activity for A/B or Personalization is a breeze since it is user interface (UI) friendly||Server Side Implementation takes time since it needs to follow the release cycle and involves setting up the codebase|
|Go To Market||Since client side activities are not dependent upon developers and marketers, one can use Adobe’s 3 step workflow to setup the activity and publish it; also, go-to-market time for dlient side implementation is shorter||Server side implementation takes time since it is complex and needs a dedicated development team which has to follow release cycles|
|Testing and Debugging||Testing the client side implementation is easier since it runs on the browser end and various debuggers (such as Adobe debugger) can be used to debug implementation issues||Testing the server side implementation is complex since the testing team will have to rely on server side logs and developers to debug the issues|
|Flexibility||Since the client side implementation is UI based, complex personalization might not be possible to implement||Server side implementation provides complete flexibility|
|Overall End User Experience||Client side implementation is known to have performance issues and flickering which affects the end user experience.||In server side implementation, since the rendering is already done at the server, the experience is smooth for the end user.|
When you are using client side implementation, VEC Editor can be used to create various activities you want to implement:
All of the above activities can be implemented using:
For implementation of server side personalization and A/B tests, Target provides APIs which developers can use with the language of their own choice. Currently Target provides software development kits (SDKs) in:
You should also consider server side implementation for the scenarios below:
There is a third implementation which can offer the best of both worlds called hybrid implementation. This method allows authors to set up the activity using the visual composer and, once the activity is set up, the activity can be delivered to clients using server side implementation. This method is getting traction and should be a compelling choice going forward.
Read more about Adobe Target Implementation.
Find out how we can help you implement Adobe Target.