Adobe Target Archives - MiaProva

Category: Adobe Target Page 1 of 3

MiaProva and Adobe Workfront

MiaProva is thrilled to announce our custom and highly advanced integration of Adobe Workfront to MiaProva.

The video features a discussion about the integration between MiaProva and Adobe Workfront, and how this integration benefits customers who use both solutions for their optimization and personalization management. In this blog post, we will provide an overview of MiaProva and Adobe Workfront, explain the value of their integration, and discuss the benefits that customers can expect.

MiaProva is an Enterprise test management platform that sits on top of Adobe I/O. This platform enables organizations to define journeys within MiaProva using the rich data within Adobe Analytics and Adobe Target. MiaProva automates the management of default data sets that get applied based on the journeys. The platform has over 84,000 activities in its ecosystem from organizations around the world and over 2200 active unique users. The robust test and personalization management platform offers single sign-on capabilities and extensive integrations with the Adobe world, including Adobe Analytics, Adobe Target, and Adobe Journey Optimizer.

Adobe Workfront, on the other hand, is an Enterprise project management tool that spans organizations across different departments, from IT to marketing. The tool incorporates management of creatives and all the business workflows that go with them, making it an impressive tool. Workfront offers various stages or status levels of different projects within the organization, similar to the Jira world.

The integration of MiaProva and Adobe Workfront automates the import of business-end activities, test request documents, issues, and projects. The integration is fully automated, which is very exciting for customers who are taking advantage of this integration. Customers who use both solutions can expect to realize the ROI against some of the projects that they manage within Adobe Workfront, with MiaProva serving as the catalyst to stitch these two together based on the concept of journeys.

The integration offers several benefits for customers. First, it enables customers to fully automate activities coming in from Adobe Target. Second, it allows customers to manage metrics, calculated metrics, segments, and data that’s in Adobe Analytics. Third, it provides industry best practices, such as sample sizes, sample ratio mismatch, and custom alerts based on lift and confidence thresholds. Fourth, it offers a robust test and personalization management platform. Finally, the integration offers extensive integrations with the Adobe world and single sign-on capabilities.

In conclusion, the integration between MiaProva and Adobe Workfront provides an exciting opportunity for customers who use both solutions. The integration allows customers to automate activities, manage metrics, and offers a robust test and personalization management platform. Customers can expect to realize ROI against some of the projects that they manage within Adobe Workfront. With extensive integrations with the Adobe world and single sign-on capabilities, the integration offers a seamless experience for customers who use both solutions.

This integration is of enormous value to Adobe Target and Abobe Workfront users. MiaProva serves as the bridge connecting Projects in Workfront to Optimization and Personalization efforts via Adobe Target Activities. This automation is further advanced by MiaProva’s Journey concept, which buckets default metrics, segments, events, and calculated metrics from Adobe Analytics based on Journey.

Not only will this integration serve the creation of an automated knowledge library combining the two datasets, but it will also automate the ROI of each Project from Workfront, giving the organization an accurate view of the metrics each Project is making.

The video is an announcement of the integration between MiaProva and Adobe Workfront, which automates activities and optimizes personalization management for Adobe Target users. MiaProva is an Enterprise test management platform that automates the management of data sets and enables organizations to define journeys within MiaProva. The integration with Adobe Workfront automates the import of business end test request documents, issues, and projects. Adobe Workfront is an Enterprise project management tool that manages creatives, workflows, and resourcing. MiaProva focuses on optimization and personalization efforts within programs associated with Adobe Target.


Video Transcript

Report Groups for Adobe Target’s Automated Personalization

I have long been a big fan of Automated Personalization (AP) in Adobe Target. One of the critical features to extract as much value from it as possible is Report Groups for offers used in AP.

Report Groups allow you to folder or bucket similar offer themes. One client of mine recently took my advice to do this exercise and, since doing so, has realized a 28% lift with the targeted group vs. control by raising the conversion lift to 9% from 7%

The video is about automated personalization in Adobe Target, and the speaker suggests grouping offers in report groups to extract more value out of it. Report groups help automated personalization associate learnings from other similar offers that are from that particular group, and it is a best practice to associate report groups within similar offers. The speaker mentions an example of a client who saw a conversion rate lift from 7% to 9% by creating report groups. Using report groups also helps in getting reporting by different report concepts.

Video Transcript

Custom Code in Automated Personalization within Adobe Target

Automated Personalization is one of my favorite tools in Adobe Target. There is one nuance, though, when you wish to use custom code to define the experiences used by the models or for random distribution. This video outlines a quick workaround.

In this video, the speaker talks about using custom code in automated personalization activities within Adobe Target. They explain that while the visual editor in Adobe Target allows for modifications, adding custom code is not an option in creating an automated personalization activity. The workaround suggested is to grab something static on the page and add custom code to it, while ensuring that the source code of the image is maintained. The speaker emphasizes the usefulness of custom code in automated personalization and suggests this workaround for situations where it is needed.

Video Transcript

Adobe Target Link Tracking

The video is about link tracking in Adobe Target and how to track links not just on one page but down a funnel. The approach works for XT, AB, and any type of activity type within Adobe Target. The speaker suggests updating the URL with a unique identifier, like s equals one, on each page and then tracking links on those pages by modifying the URL with s equals two, s equals three, etc. The changes can be applied with a visual editor or form-based editor. The conversion can be configured to be viewed as a page and URL contains s equals one, s equals two, etc. The speaker recommends using Adobe Analytics to get better selective reporting and suggests using conversion as an Adobe Target-related metric. The tracking information will not be ported into Adobe Analytics automatically and needs to be manually chosen.

Video Transcript

Adobe Target Server Side Delivery API

Adobe Target offers a few ways to leverage Adobe Target server-side. This is a video about the implementation of Adobe Target’s server-side delivery API. Traditionally, Adobe Target is installed client-side via a tag management platform, with server calls made out. In the client-side world, the visitor API service is on top, followed by the Adobe Target call and the Adobe Analytics call. The Adobe Target delivery API allows for standard HTTP requests, and Adobe also has SDKs for Node.js and Java. There are some limitations to processing cookies or redirect calls, but there are workarounds. Integrating the experience cloud is a common issue, but this can be resolved by putting the visitor ID service before the Adobe Target call. The video provides an example of a server-side call and passing parameter value pairs. Overall, this video provides a basic overview of Adobe Target’s server-side delivery API.

Links mentioned in the video and sample code:

** If you are leveraging A4T, implement the Visitor ID service before Adobe Target and pass that visitor ID to Adobe Target as you do Analytics.

content-type: application/json
cache-control: no-cache

"id": {
"tntId": "f64f23fefcd74c7384936a1be29db123.35_0"
"context": {
"channel": "web",
"browser": {
"host": "demo"
"address": {
"url": ""
"screen": {
"width": 1200,
"height": 1400
"property": {
"token": "08b62abd-c3e7-dfb2-da93-96b3aa724d81"
"execute": {
"mboxes": [
"name": "server-side",
"parameters": {
"customer": "true"
"index": 1
Video Transcript

Adobe Target Audiences and Locations

Over the years, we have gotten many requests from customers asking for clarity around how best to use Adobe Target Audiences and Locations when setting up Activities via the Visual Experience Composer (VEC) or Form-based creation.

This video will share best practices and explain how best to leverage the functionality.

Video Transcript

Adobe Target and Local Storage

Spoiler Alert: If you don’t want to know today’s Wordle answer or how to access the solution without playing, please do not watch the video below.

Local Storage

Most websites widely use local Storage to store and access data. This data doesn’t expire like cookies and can hold considerably more data than cookies. Because of this, it is no surprise that there can be rich data to arm a testing and personalization engine like Adobe Target.

This video shows how easy it is to get data from Local Storage and make it available to Adobe Target for first impression targeting.

Adobe Target targetPageParams documentation:

Code used to grab the Wordle solution from Local Storage to Adobe Target:

function targetPageParams() { 

		var str = window.localStorage.getItem("gameState");
		var parsed = JSON.parse(str);
		var solution = parsed.solution;

		return ("solution=" + solution); 


Activity Conversions Use Case

This week, we had a client reach out to us with an interesting use case with one of their Activities in Adobe Target.

The Activity was a test in their cart targeted to visitors who were making their third visit to that location. Adobe Target profiles easily support targeting such an audience but the Analysts needed to only count purchases if they happened during the same session as that third visit.

This video highlights how you can use Adobe Target ‘events’ and data like Profile Attributes as Activity Goals and still have the data in Adobe Analytics via A4T.

Video Transcript

And screenshots of the “Primary Goal Configuration” to automate the flow of this data into Analytics:

Adobe Target Host Groups

One of our customers here at MiaProva is expanding their testing efforts and use of Adobe Target well beyond their www and mobile site. They are bringing Adobe Target to their Email Platform, and we are helping them do so.

The magic that is making this possible is Adobe Target’s Delivery API. You have to call Adobe Target before emails get sent because you can’t put mboxes or Adobe Target server calls in email. The Delivery API does precisely this. It calls Adobe Target with data, just as a client-side mbox does on the site, and it gets a response based on any Activities and Audiences configured in Adobe Target.

Host Groups

The challenge this organization is dealing with was permissions within Adobe Target. The team developing this incredible capability for email testing with Adobe Target didn’t have the necessary Approver rights. Given they were new to Target and this organization has hundreds of live activities in place, handing out Approver rights wasn’t an initial option.

Host Groups was the fix, and after talking to a few other companies today, I realized a video might be helpful to the Target community, so here you go:

Video Transcript

Amplitude and Adobe Target

Amplitude is a Digital Optimization System that we have been asked about quite a bit lately. It turns out, MiaProva has some friends there from our Omniture and Adobe days, and so we got a much closer look at the solution and some of the use cases that organizations are using it for.

They offer a free trial that allows you to send 10,000,000 hits per month, and so we decided to kick the tires and see if we could create an integration for those organizations that use Amplitude and Adobe Target.

Image from:

Amplitude Data Consumption

We are by no means experts and have minimal experience with Amplitude, but from what we figured out so far, there are many different ways to collect data via SDK Libraries. Given that most organizations using Adobe Target leverages Javascript, we decided to create our Adobe Target custom integration based on their Javascript SDK.

Amplitude SDKs

Users and Events

Greatly simplifying things, with Amplitude, you send in a Visitors ID (or use theirs), pass in any Properties related to that ID, and any Events as you wish.

Here is an elementary example of passing to Amplitude that a Visitor is a “Cubs” fan:

var userProperties = {
    favorite_baseball_team: "Cubs"

This data would then be correlated with the User that was initially defined. An event represents something that has happened like ‘clicked,’ ‘searched,’ ‘hovered,’ ‘started a video,’ etc… Really anything that all and these Events can be Arrays and have Properties similar to how User data is passed. Here is what an Event call looks like:

var event = "MiaProva_trial";

We’ve configured this event to fire when a visitor arrives on our trial page: as a straightforward example. This documentation goes into much more advanced approaches as well.

Passing in your Adobe Target data

Adobe Target has some wonderful mechanisms to make data available for other solutions like Amplitude. Those organizations that use our popular Chrome Extension get to see Adobe Target Response tokens as one way to make the Activity meta-data visible. We did something similar with our approach to Amplitude.

We first had to decide whether we wanted to push the data as an “Event” Property or “User” Property. This decision has some significant implications for the Analysis and the management of data. While folks can debate the approaches, the best approach is a “User Property.” Adobe Target defaults to the Visitor counting methodology, and for excellent reason. Participating in a test is not like clicking a button or visiting a page, but rather something tied to the User so that it can be correlated to Events after entering into the Activity.

With that in mind, this is the single step needed to push your Adobe Target test data to Amplitude. Keep in mind; these steps assume you have Amplitude snippet in place or the npm/yarn installation. Modifications can be made as needed depending on how you manage Adobe Target’s deployment – we are using Adobe Launch.

  1. You need to add this code to the bottom of your Adobe Target at.js file. This code can be added via the Adobe Target UI before your download the at.js file or it can be custom code added via Launch to execute after Target is Loaded.
     document.addEventListener(, function (e) {
         if (e.detail.responseTokens) {
             var rt = e.detail.responseTokens,
                 ids = [];
             window.targetExperienceList = '';
             for (var i = 0; i < rt.length; i++) {
                 var inList = false;
                 for (var j = 0; j < ids.length; j++) {
                     if (ids[j] == rt[i]['']) {
                         inList = true;
                 if (!inList) {
                     targetExperienceList += (targetExperienceList ? ',' : '') + rt[i][''] + ':' + rt[i][''] + ':' + rt[i]['experience.trafficAllocationType'];
         if (window.targetExperienceList) {

             var values = [targetExperienceList];
             var identify = new amplitude.Identify().set('Activity:Experience', values);



Pretty easy, right!? Let us break things down so all can see what is going on with this code because developers can use this code to push data to any solution, including CDPs, data layers, etc…

Line 1: This is an event listener that will execute the code within it after a successful Adobe Target server call (mbox call:) has taken place.

Lines 2 – 19: We are creating a window scoped variable called “targetExperienceList” that will have a value that will equal a concatenation of all “Activities, Activity Experience, and Activity Allocation” that were tied to the response of the successful Adobe Target server call (mbox call:). On, this is what the value looks like:

You won’t typically see this sort of thing, but we have quite a few Activities running here for demonstration purposes. For those of you not familiar with “Activity Allocation,” that value is only pertinent to Automated Personalization and Auto-Target, where Adobe has Control and Targeted Groups. All other Activity types will have ‘undefined’ as a value.

Lines 20 – 26: Here, we are first checking to see if there is a value for “targetExperienceList”. This value would exist if the Adobe Target server call (mbox call:) had Adobe Target Response Tokens that showed that the Visitor was in a live Activity. If so, then it would execute Lines 22-24, which pushes all the Adobe Target data to Amplitude as User Properties. This could differ from the above User Properties because we treat the values like an array if the Visitor gets into more than one Adobe Target Activity on a single Adobe Target server call (mbox call:).

And there you have it:

Then you can analyze as you wish, create user cohorts (not available in free trial), create dashboards, visualize paths, etc…

Happy testing, folks!

Page 1 of 3