Foursquare LogoFoursquare Developers Logo

Attribution is a measurement solution engineered to operate across WEB, IN-APP, CTV, OTT, and OOH environments. To power this product, we rely on two methodologies to collect information about the exposed audience. First, is our proprietary pixel which can be deployed in traditional media channels. Our second option is to utilize log files which can be delivered to us via SFTP.


Foursquare can provide pixels for three distinct measurement environments:

  • Web (Desktop, Tablet-Web, Mobile-Web)
  • In-App
  • IP (CTV, OTT)

Once measurement environments are established for each campaign, we structure campaign pixels along a parent/child relationship with an appropriate macro. This allows us to provide measurement insights at both aggregate and granular-level reporting. To do so, each pixel contains an ADVID (Parent) and CAMPAIGNID (Child) URL parameter. Depending on the media environment, your pixel may also contain an AAID, IDFA, or CACHE parameter.

Each parent/child parameter is populated by inserting the below items into a concatenated string formula (using the _ character to join those values):

  • Advertiser
  • Brand
  • Campaign
  • Financial Quarter / Fiscal Year
  • Platform (For campaign_id parameters only)

For example, an in-app pixel may look like this:

The web pixel may look like this:

The IP pixel may look like this:

Please note that for the pixel running in the In-App environment, we've added the AAID, IDFA, and CACHE URL parameters. For the Web and IP pixels, we've only added the CACHE URL parameter. The AAID, IDFA, and CACHE URL parameters are preassigned a placeholder text of INSERTHERE. The placeholder text of INSERTHERE must be replaced with the correct macro in order to function correctly. All macros are sourced directly from the DSP or Ad Server in which the pixel is deployed. For more information, please see below.


Prior to deploying Foursquare's pixels in an active campaign, please ensure that all URL parameter placeholders are replaced with an appropriate macro. Each parameter can accommodate a macro that dynamically populates with a specific value when an impression is served.

  • AAID (Requires an Android Device ID macro)
  • IDFA (Requires an Apple Device ID macro)
  • CACHE (Requires a Cachebuster macro to generate a random number)

Using The Trade Desk's macros as an example, the above in-app pixel would be populated with the following macros:


The final pixel to be deployed in an active campaign would look like this:

If the macros were inserted correctly, our system would see this type of response:

Dynamic Macros

For larger campaigns, we often work with partners that utilize various combinations of targeting, creatives, environments, and media channels that may alternate during the flight of the campaign. Additionally, partners may elect to activate new audience segments depending on their KPIs. This results in a number of permutations that would be too large for our team to measure via manually created pixels.

In this scenario, Foursquare recommends appending a macro (or macros) to the CAMPAIGN_ID URL parameter that will dynamically populate a targeting identifier for each impression. If you elect to pursue this route, you must provide your Foursquare representative with a mapping document that will identify the name of the targeting segment represented by the alphanumeric/numeric string dynamically populated by the macro.

Dynamic Macros Example

In this example, we will utilize The Trade Desk's macros to create a dynamic pixel as discussed in the previous section. A common request is to include both the ADVERTISER ID and the CREATIVE ID. This type of structure will help us identify the advertiser on the campaign (ex: MediaIQ, GroundTruth, NBC, Cadreon, Viant) as well as the creative targeting (ex: 320x50-Pittsburgh-Outdoors, 720x90-Cleveland-Frequent Shoppers).

Based on The Trade Desk's macros documentation, these macros are listed as:

  • Trade Desk Advertiser ID = %%TTD_ADVERTISERID%%
  • Trade Desk Creative ID = %%TTD_CREATIVEID%%

When appended to the CAMPAIGN_ID URL parameter, the dynamic pixel would look like this:

If inserted correctly (ensuring that all macros are separated by the _ character), our system would see this type of response:

To reiterate, the macros MUST be associated with the DSP or Ad Server that is trafficking the media. If you do not have access to that documentation, please reach out to your DSP / Ad Server customer representative. For a link to common DSP/Ad Server macros documentation, see below:



Enterprise Attribution

For more information about this product, please click here.