Automatic tracking of DFP campaigns

What the integration does

The new integration between AudienceReport and DoubleClick for Publishers (DFP) makes it possible for publishers to automatically track their DFP campaigns in AudienceReport.

By utilizing UserReport Premium's existing script, AudienceReport can automatically create a new AudienceReport campaign report every time a new campaign is initiated through DFP.

The DFP integration will allow AudienceReport to automatically track impressions and in-view. Clicks can be tracked if a redirect URL is added to landing-pages manually.

While web-content is fully supported in this version, we are still working on including native app tracking capabilities in the future.

How to enable DFP Full Tracking

In order to use the new integration you need to have both AudienceReport and UserReport Premium running. If you don’t have that right now, please contact our Client Service team at to get started.

UserReport needs to cover your entire inventory as the integration will rely on the UserReport Premium script to include automated AudienceReport tracking.

If both criteria are fulfilled, you need to login to your DFP account and add the user in order to allow the integration to fetch campaign information from DFP directly. Get your DFP network code in Admin > Global Settings > Network settings.


After that, you should login to your AudienceReport account and enable the integration by following the steps below:

  • Click the gear icon in the top right corner and click at ‘Settings’
  • Click the ‘Integrations’ tab and request feature activation
    • You need to provide us your DFP network code
    • Confirm that you granted access to DFP
    • Confirm that you are an existing UserReport Premium customer

It will take some time for the account manager to check the details of your request. He will reach out to you to activate the feature.

Setting up access to the DFP API

AudienceReport needs to access your DFP account to get order and line-item information. Therefore you need to do the following:

  • Enable API access to your DFP here
  • Create AudienceProject role in DFP
    • Go to 'Admin – Access & authorization' > 'Roles'
    • Press 'New Role'
    • Give it "AudienceProject Role" name
    • Recommended description is "Role that AudienceProject services can access DFP for AudienceReport and AudienceData integrations. Allows to get information about all orders and line items for AudienceReport integration. Allows to manage key-values and audience segments for AudienceData integration."
    • Select following permissions:
      • Define and deliver orders
      • View creatives
      • View ad units, placements, and key-values
      • Run availability forecasts
      • View my orders and line items
      • View audience segments
      • Edit audience segments
      • Edit key-values values
      • Manage people
      • View companies and contacts
      • Edit labels
      • Edit custom fields
      • Reporting
      • Create and view reports
      • Access to DFP tabs
      • Delivery
      • Admin
      • Inventory
  • Add as user with 'AudienceProject Role'
    • Go to 'Admin – Access & authorization' > 'Users'
    • Press 'New User'
    • Give it "AudienceProject Integration" name
    • is a email
    • Add the user to all teams so it can access to all orders
    • Role > 'AudienceProject Role'
  • It is also recommended to add your AudienceReport account manager to the DFP account with same role so he can help

Technical description of how the integration works

This is going to get a ‘little’ technical. The integration is a JavaScript solution based on Google Publisher Tag events which means that:

Our script looks for these events and fires an appropriate AudienceReport tracking pixel that contains ‘campaignId’ and ‘lineItemId’ when the events are triggered.

For each tracked campaign that we identify, a new AudienceReport campaign will be created where each tracked ‘lineItem’ will be created as a unique ‘reportItem’ in the AudienceReport campaign. The integration will fire impression and in-view pixels based on the DoubleClick events, which means that the AudienceReport campaign will be configured with these two events.

Tailcode format is XXXdfpft-orderId-linetItemId

  • XXX – CID
  • dfpft – static prefix to identify DFP full tracking campaigns
  • orderId – DFP order ID reported by Google Publisher Tag event
  • linetItemId – DFP line item ID reported by Google Publisher Tag event


How fast will new DFP campaigns appear in AudienceReport?

Once a campaign is started in DFP, the report will appear in AudienceReport after 15-30 minutes. Once the report is present in AudienceReport, data will arrive almost real-time.

What if I add new line items to existing campaigns?

AudienceReport will automatically update the campaign reports with new line items. There might be a 10-15 minute delay before the new report items appear in AudienceReport.

Will the integration work on Single Page Applications?

Yes, if the slot is refreshed or a new slot appears on the page – impression and viewability will be measured.

Can I check the status of synchronized campaigns?

Yes, you can see an overview of all campaigns being synchronised if you follow the instructions below:

  • Click at the gear icon in top right corner and click at ‘Settings’
  • Click at the ‘Integrations’ tab
  • Click at the ‘Status’ tab in ‘DoubleClick for Publishers’ tab

Here you can find information about each campaign and compare logged impressions across DFP and AudienceReport. If we detect a significant discrepancy between DFP and AudienceReport impressions, you will see a warning.

What if I detect a discrepancy?

The integration relies on Google Publisher Tag events, which means that a few things needs to be in order to ensure that all events are tracked correctly.

The UserReport Premium script needs to be installed across all network publications and it also needs to be loaded before ads are rendered.

  • Depending on how different assets are organized on your websites, you can choose one of following methods:
    • Add the UserReport Premium script to the section of website
    • Add a reference before Google Publisher Tag implementation
    • Deploy it through Google Tag Manager
    • Use any other method that your development team recommends as long as it ensures that the UserReport Premium script loads before the ads start rendering
Please note that you can not deploy the UserReport Premium script through an ad server.

If you serve DFP orders using a passback setup – you will need to add an additional tag to your passback tags. Reach out to your account manager or for more details on measuring passbacks correctly.

Can I see which campaigns are from DFP in AudienceReport?

All DFP campaigns will have the label “Dfp order” added in AudienceReport. So you can either use the quick filter in AudienceReport to see all DFP campaigns or you can search on campaigns using the DFP order ID in the AudienceReport search field.


Which country will be selected as default for DFP campaigns?

When enabling the DFP Full Tracking feature in your AudienceReport account, we will initially configure a default country on all tracked campaigns. You can always switch the country by editing your campaign directly in AudienceReport.

Please note that if you have multi country customers, we can add country detection by targeting of line items.
Can RTB campaigns be measured in AudienceReport?

Ads delivered through systems like Ad Exchange, Adform SSP etc. are represented as orders in DFP. Therefore, they will also be measured through the DFP integration. However, the orders don’t contain exact information about ‘which’ SSP orders/deals that have been seen.

What will currently be measured?

The integration will currently automatically measure impressions and in-view on web display ads. Clicks can be added through a redirect URL manually.

Native in-app and video inventory are still work in progress.

How to setup click tracking?

Currently it is not technical possible to add click-tracking automatically on all DFP campaigns due to a limitation in DoubleClick. However, it can be added with a relatively small effort.

You can use our standard click tracking solution documented here.

A short description:

The structure of a typical click-tracking URL:[t-code]&event=click&;[Landing_page]

Instead of passing the tcode, you should use XXXdfpft-%ebuy!-%eaid! where XXX is replaced with your unique tracking prefix.

If your destination URL of a DFP creative is, you would add the tcode and landing page parameters like this:!-%eaid!&event=click&;

This will ensure that clicks are also being tracked.

Another example of such a setup:


Custom creatives that use %%DEST_URL%% and %%CLICK_URL_UNESC%% macros are also compatible with this approach.


You can always find your click tracking URL in AudienceReport by entering: Settings > Integrations > DoubleClick For Publishers > Details


How did we do?

Adform integration set-up

Google Campaign Manager Integration