HomeGuidesAPI Reference
Submit Documentation FeedbackJoin Developer CommunityOptimizely GitHubOptimizely NuGetLog In

Configure BlueKai


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 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 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 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 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 snippet.

    For example:

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



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

Enable the BlueKai integration in Optimizely 

See Enable integrations in Optimizely.

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 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 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. 



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
    • 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 audience

Create an audience in Optimizely 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 A**udience 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 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. 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. 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.


Once the BlueKai campaign is activated and the Optimizely experiment is running with a test cookie, these are the steps to validate data is sending properly to Optimizely 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 by manually changing the BlueKai tag URL below with the appropriate Site ID and phint key-value pairs (highlighted in red):


    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 (for example, <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 experiment is running, give yourself the test cookie, and verify you are bucketed



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.