Integrate BlueKai

  • Updated

This topic describes how to:

  • Set up your BlueKai JS Return tag to make segment data available client-side
  • Access your BlueKai Campaign list within Optimizely Web Experimentation to create Audiences and target Experiences

BlueKai is a data management platform (DMP) that makes it easy to leverage first- and third-party visitor data when working with Optimizely Web Experimentation experiments. This integration has two prerequisites:

Create a BlueKai JS tag

  1. From partner.bluekai.com, select Manage > Containers.

  2. Click Create New. The Create New Container modal appears.

  3. Enter a name that identifies the container as an Optimizely Web Experimentation data delivery container and accept the defaults for the other settings.

  4. Click Save And Generate Code

  5. In the Generate Code dialog, click the JS tab for the JSON Return tag type.

    Each time a user in your audience visits a web page hosting the JS Return tag, BlueKai returns JSON-formatted data to the page that includes the segment ID and the categories for which the user qualified. Optimizely Web Experimentation uses this data to associate the user with the audience. 

    The JS Return tag has the following syntax:

    <script type="text/javascript" src="http://tags.bluekai.com/site/<SITE_ID>?ret=js&limit=<PIXEL_LIMIT>"</script>

    Check out this article on creating BlueKai Containers for more information.

  6. Click Copy in the code box on the right, then paste the JS tag in the <head> tag of each web page you plan to optimize. Make sure it appears above the Optimizely Web Experimentation snippet.

    For example:

    <head>
    //BlueKai JS Tag
    <script type="text/javascript" src="http://tags.bluekai.com/site/15415?ret=js&limit=1"</script>
    
    //Optimizely Web Experimentation Implementation tag (see step e to get this)
    <script src="//cdn.optimizely.com/js/236000000.js"></script>
    //existing_head_code …
    </head>
 
Important:

Load your BlueKai snippet synchronously above your Optimizely Web Experimentation snippet for the information to be available on a visitor's first page-view.

Enable the BlueKai integration in Optimizely Web Experimentation 

See Enable integrations in Optimizely Web Experimentation.

You are prompted to enter your BlueKai web service user key and web service private key.

Instructions to generate these authentication tokens can be found at the Oracle data management help cent. Turning this integration on will allow Optimizely Web Experimentation to access the campaigns you have defined in your BlueKai account.

The BlueKai app that lets you create Audiences within BlueKai to be pushed over to Optimizely Web Experimentation is not currently available and there is no need to set up this app. Follow the steps below to ensure your campaigns are populated in the JSON return tag outside of the App. 

 
Note:

To use BlueKai campaigns with this integration, you should ensure that the campaigns are configured with the following settings for the JSON return tag:

Create new campaign type > Site Optimization.

In addition to standard new campaign options like name, audience and vendor, select the following options:

  1. Under Blanket Options, select Blanket Campaign with type Inclusive.

  2. Under Options, select all of the following: 

    • Multiple Wins Per Page

    • HTTPS pull

    • JSON RESULT

    • Win Every Time 

If either the Site Optimization campaign type or the Win Every Time option is not available, please contact your BlueKai/Oracle account manager for help.

Create an Optimizely Web Experimentation audience

Create an audience in Optimizely Web Experimentation based on company information in BlueKai, or add BlueKai conditions to an existing audience.

  1. Go to Overview Audiences, and click New Audience.

  2. In the Name field, type in the name of your new audience.

  3. Click BlueKai to see a full list of targeting conditions. Hover over the question mark to see each condition's description.

  4. Drag a BlueKai campaign into the Audience Conditions section. Enter the BlueKai campaign ID/value from the pre-populated drop-down.

  5. Click Save Audience.

In BlueKai, you can see the campaigns you defined under Manage > Campaigns. If you add a new campaign to BlueKai, it may take a few minutes before it appears in the Optimizely Web Experimentation audience builder dropdown.

You can use this audience to target your experiments.

You can also edit BlueKai audiences for post-experiment analysis for audiences created with dimensions in Optimizely Web Experimentation. Simply edit the audience and enable segmentation to accomplish this.

For more on how to configure and use audiences, see our overview article on audiences in Optimizely Web Experimentation. For ideas on how to create personalized experiences for your BlueKai audiences, see Strategy essentials: Personalization.

If you want to learn more about creating audiences and campaigns in BlueKai, visit their knowledge base

Test an Experiment using a BlueKai Campaign

Date created: 6/20/16

Technical skills needed to implement this solution: Access to the customer's BlueKai account

What's the problem?

  • The BlueKai audience integration requires a live BlueKai JS tag on the page, and a live campaign that is actively collecting visitors across the internet. BlueKai does not natively offer testing campaigns or statuses. The only way to be tagged is to go across the sites or take the actions that BlueKai needs to qualify for the campaign.
  • There is no out-of-the-box way to verify that a website visitor who meets the BlueKai audience conditions actually get tagged in the campaign.
  • The following solution requires the BlueKai site ID and a phint key-value pair (BlueKai category), which the customer may need BlueKai's assistance to obtain.

Solution:

Once the BlueKai campaign is activated and the Optimizely Web Experimentation experiment is running with a test cookie, these are the steps to validate data is sending properly to Optimizely Web Experimentation and the experiment is functioning properly. 

  1. Open a new incognito or private browsing tab.

  2. Force yourself into the BlueKai category in the audience being sent to Optimizely Web Experimentation by manually changing the BlueKai tag URL below with the appropriate Site ID and phint key-value pairs (highlighted in red):

    http://tags.bluekai.com/site/<ENTER_SITE_ID>?limit=1&phint=<key>%3D<value>

    For example: http://tags.bluekai.com/site/98765?limit=1&phint=ssid%3D123456

    When you paste and enter this spoofing URL in your browser, it will return a blank page.  You should then be placed into the BlueKai category within the audience.

  3. Paste the following URL in your browser to pull the JSON objects from the JSON Return Tag. This URL will return all results from campaigns & categories associated with the Site ID to which you belong. If the JSON tag is working properly your page should show BK results similar to the below screenshot. Confirm the desired campaign ID and category ID populate in the bk_results object. If bk_results returns a blank page further troubleshooting is required; the customer needs to contact their BlueKai account manager.

    • Replace the highlighted parameter with the correct Site ID (same value as above)
      http://tags.bluekai.com/site/<Enter_Site_ID>?ret=js&limit=1 (e.g. http://tags.bluekai.com/site/98765?ret=js&limit=1

  4. Verify the Campaign ID appears on the JSON Return page

  5. Navigate to the site where the Optimizely Web Experimentation experiment is running, give yourself the test cookie, and verify you are bucketed

  • Note – If the customer's BlueKai audience includes modeled third-party data, this process will not work and they will need to contact their BlueKai account manager.

Why is this information internal-only, and not customer facing?

  • Clorox and BlueKai verified and shared this process with us.  However, Clorox is hyper-sensitive about sharing company information publicly so we cannot do so.  All above site, campaign, and category IDs are dummy values and do not reflect any Clorox data.