DoubleClick Pixel for Cookie Matching (google/doubleclick-cookie-matching-pixel
)
operated by: Google LLC
(get company information on datarequests.org)The DoubleClick Pixel for Cookie Matching is part of Google’s features for real-time bidding (RTB) to exchange user IDs between bidders and Google: “Cookie Matching is a feature that enables [bidders] to match [their] cookie—for example, an ID for a user that browsed [their] website—with a corresponding bidder-specific Google User ID, and construct user lists that can help [them] make more effective bidding choices.”
The goal of cookie matching is to circumvent the browser security features that would otherwise restrict the reading of cookies set by another domain.
Cookie matching uses match tables that record the mapping from a Google User ID to the user ID in the bidder’s system (and/or vice versa). These match tables can be populated and hosted by bidders themselves or by Google, with Google recommending bidders to let Google host the match tables.
Endpoint URLs
These are URLs or regexes of endpoints the tracker sends data to. We use these to determine which adapter to apply to a request. Some trackers use the same endpoint for several formats. In this case we use additional logic to match the adapter to the request, refer to the code for more information.https://cm.g.doubleclick.net/pixel
Decoding steps
Every tracking library has its own way of transmitting tracking data, often even several. They are regularly pretty convoluted, nested encoding schemes. Because of that, the adapter needs to decode the request information into a consistent format. We try to keep keys and paths intact, but the structure results from our decoding. All steps used in the decoding for this adapter are documented here.- Parse the query string in the request path as a query string. Store that in the result for the query string.
- Get the property at JSONPath
$
in the request headers. Store that in the result for the request headers. - Get the cookie
$
. Store that in the result for the cookies.
1res.query = parseQueryString(query)
2res.header = header.$
3res.cookie = cookie.$
Observed data transmissions
This is data that we observed being transmitted by this tracker. Not every request contains all of this data. The context of the data describes where we found the data in the request, the path describes the location of the data in the decoded request. The examples are a selection of observed values.References
- Documentation for
gdpr_consent
: https://developers.google.com/authorized-buyers/rtb/cookie-guide#match-tag-url-parameters - Documentation for
google_nid
: https://developers.google.com/authorized-buyers/rtb/cookie-guide#match-tag-url-parameters - Documentation for
google_ula
: https://developers.google.com/authorized-buyers/rtb/cookie-guide#add-to-single-user-list - Documentation for
google_hm
: https://developers.google.com/authorized-buyers/rtb/cookie-guide#storing-a-match-in-a-google-hosted-match-table - Documentation for
google_gid
: https://developers.google.com/authorized-buyers/rtb/cookie-guide#redirect-url-parameters