Target to Drive Several hundred variations of an experience on a single page.... most efficient way? or is there a better way?



We have a site that collects a visit level parameter that can have one of several hundred values. (to put in some kind of context let's argue that I have 500 variations of a Membership Level for a visitor each with a different offer/recognition I'd like to surface to a visitor). Depending on the specific value, a different experience (let's say image banner) is desired to be shown.

So for example purposes: Visit Parameter representing Membership Level has 500 potential values, There are 500 respective images. I want to 'pair' them up when a page loads for a 'personalized' experience.... 

  • Parameter Value of A gets paired with experience that shows Image1.  
  • Parameter Value of B gets paired with experience that shows Image2.  
  • Parameter Value of C gets paired with experience that shows Image3.  
  • and so on....all the way to Parameter Value/ Image 500

This would seem to be in the wheelhouse of Target if I only had for example 5 parameters and/or 5 images from an order of magnitude...but .... using Target understanding would be that I'd have to start a Target activity and create 500 experience options for that activity other than the control version...setting up the rules for each and every one of the 500 Paramter Value variations and respective image I'd like to be shown. Would this even work? Is there a better way?


Thanks in advance for help. I've read much documentation but often examples are only carried out for a small number of offers/experiences in a single activity.... 

Accepted Solutions (1)

Accepted Solutions (1)




Hi Kevin,

Interesting use case.  Are you passing the Membership Level as an mbox parameter in the mbox you want to use to change the image? If so, and if the URLs of the images you want to substitute follow a predictable pattern that uses the value you are passing as the mbox parameter, this could be ridiculously easy.  You just select the image you want to replace, click Edit Source in the VEC, enter the URL pattern, and use the token-replacement syntax to dynamically insert the value you are passing up as your mbox parameter.  In the example below, the notation ${mbox.membershipLevel} would be dynamically replaced with the value of the mbox parameter "membershipLevel"

If your scenario is more complex than this, you can use custom javascript to accomplish a similar thing.  Keep in mind, that this would require you to handle all 500 variations in a single experience which would limit your reporting options.  If you are conducting an A/B test to see how your default imagery compares to personalized imagery, you will have everything you need!  If you added reporting audiences for groups of membership levels (1-10, 10-20, etc.  you are limited to 50 reporting audiences) you could do additional reporting breakdowns by segment (the CSV download or Analytics Workspace if you are using A4T is the best way to look at multiple reporting audiences in one view).


Best of luck,