Setting up AdForm first-party integration

In order to use AudienceProject data in AdForm SSP and PPAS for targeting purposes without using DMP as a link in between, a few steps are needed:

  1. Modify the placements code snippet
  2. Add the AudienceProject code snippet to the website
  3. Configure the AdForm account 

The following guide will describe how to setup the integration and how the data can be used.

We kindly ask you to consult with our team before setting up the implementation, you can contact us on 

Configuring the data synchronisation

1. Modify placements code snippet

AdForm has a synchronous and an asynchronous version of the placement code.

First, you need to get the asynchronous version of the code.

Second, you need to remove the last <script> tag that loads // (adx.js going further), so the code looks like this:

<script data-adfscript=""> </script>

You can still use all snippet customisations that are documented. It is important to ensure that the adx.js is not being referenced on the page, as it will be injected by the AudienceProject code snippet.

If you do not modify all placements on page, so some of them still load adx.js, targeting data may be not applied.

2. Add the AudienceProject code snippet to the website

The AudienceProject script is simple and looks like this:

<script src="//" async></script>

Place it in the beginning of the web page, e.g. in the <head> tag or in the beginning of <body>.

It will set the targeting data for all non-initialized placements through AdForm setTargeting API and load the adx.js that will request ads for your placements.

In order to ensure that the Ads are requested, it is required to place an additional script to the website. This will ensure that adx.js will be added.

<script type="text/javascript">
setTimeout(function () {
if (!document.getElementById("sak-adform-adx-script")) {
var s = document.createElement("script"); = "sak-adform-adx-script";
s.type = "text/javascript";
s.src = "//";
s.async = true;
}, 1000);

It is recommended to add this code right before </body> tag. If you want to connect both tags into one it is recommended to increase from a 1000 to 2000. This number is the threshold (in milliseconds) waiting time for the targeting data and adx.js request.

3. Configure AdForm account

AudienceProject only sends obfuscated data to AdForm. For instance, key ap_a stands for Gender and key 1 stands for Male.

It is possible to apply human readable labels on keys and values by following this documentation. Keys, values and labels will be shared with you when the contract is signed by both parties.

Not all keys and values will appear immediately. Keys and values will appear when users from different segments visit the pages where the data synchronisation is running.

Using the targeting data

When creating line items or orders it is possible to set targeting criteria using Keyword / Key Value Targeting like shown in the following example:

How did we do?

How to access segments in Mapp data?