Supplier User Matching

As the Supplier and BidSwitch sit between the end-user and the Buyer, user matching is important as it allows a Buyer to know the potential value of a user, and thus make calculated decisions to serve the most appropriate advertisements. Additionally, it can increase CPM and media spend to Suppliers. It is therefore in both parties best interests to sync their cookies appropriately. Use the information int he following sections to get the most out of user matching.

Bid Request Fields

User matching, or cookie syncing, is the process of matching an Supplier cookie ID to a Buyer cookie ID. BidSwitch has an integrated user matching functionality to facilitate this between Buyers and Suppliers. When receiving a bid request from a Supplier, BidSwitch expects both the BidSwitch User ID and Supplier User ID to be sent in the buyeruid and id fields of the User Object.

Supplier Buyer User Matching

Supplier to BidSwitch Bid Request

BidSwitch to Buyer Bid Request


Supplier User Matching Flow


When all parties have synced their cookies, bid requests from the Supplier to BidSwitch will contain the BidSwitch cookie ID. BidSwitch will then match and retrieve the Buyer cookie ID from the BidSwitch database and send it to the correct Buyer. This enables the Buyer to use their cookie ID and bid intelligently.

Supplier Initiated User Sync

Suppliers should sync users using the BidSwitch user sync URL. Once synced, BidSwitch redirects the user to the Supplier’s sync URL, this endpoint is completely up to the Supplier and you can check what link BidSwitch is syncing with on the UI Settings page.

Supplier Initiated Cookie Sync Endpoint

## Syntax$SSP_NAME&user_id=$SSP_UID

## Example

## User sync with GDPR consent

## User sync with US Privacy consent - HTTPS


Fields marked with asterisk (*) are optional.

HTTP Request Parameters






The ID assigned to the Supplier by BidSwitch, for example, sspname.



Indicates if GDPR applies to this sync. 0=GDPR does not apply 1=GDPR applies. If this field is not supplied, the callee should perform a geoIP lookup as GDPR applies for EU IP addresses.



Indicates whether generic URL parameters contain personal data, 0 for no, 1 indicates personal data



A URL-safe base64-encoded GDPR consent string. Only meaningful if gdpr=1. Encodes the purposes to which the user consented and the vendors to whom the user gave that consent, as obtained from the CMP JS API or OpenRTB. BidSwitch supports the v1.1 and v2.0 consent string formats. For each version the content of this macro differ slightly

  • v1.1 gdpr_consent is filled, which will match the user consent string

  • v2.0 gdpr_consent_GVL-ID is filled, which will match the user consent string and append the Global Vendor List ID for the vendor expecting the call.



Passes the CCPA compliant US Privacy string that indicates whether the user has “opted-in” or “opted-out” of the sale of their data, e.g. us_privacy=1NNY. For more information, see the BidSwitch and CCPA section.



The Supplier user ID. This is the value normally passed in the field in OpenRTB bid requests.

Note: This parameter is highly recommended for browsers that do not support 3rd party cookies, e.g. Safari and IOS_App.

BidSwitch Initiated User Sync

When BidSwitch initiates a user sync with a Supplier, the process flows in the following manner.

  1. The user lands on a page, which runs a Buyer tag.

  2. Running this Buyer tag drops a cookie to the user browser e.g. DSP_cookie_9876, which redirects to BidSwitch.

  3. BidSwitch stores the Buyer cookie ID, e.g. DSP_cookie_9876.

  4. BidSwitch then redirects to a sync pixel belonging to a Supplier connected to the Buyer.

  5. The Supplier receives the BidSwitch cookie ID for this user, e.g. BSW_cookie_54321.

  6. The Supplier matches the BidSwitch cookie ID with its cookie ID, and stores them in their database.