Exposure Logs provide event-level data on Impressions, Clicks, Engagements and Conversions for the purpose of advertiser analytics and measurement services. All data is associated with won impressions and attributed conversions associated with targeting and rule setup in Yahoo DSP. Data is delivered with a one-day delay.
The schema shows expected metadata and associated metrics. Participation in Partner Match is not required. Any integrator to Partner Match will be eligible to receive their specific Partner Match identifier (PXID) as the User ID (user_id).
Any recipient of Exposure Logs must agree to Yahoo terms and conditions. Exposure Logs adhere to regional privacy regulations. Please contact your Yahoo representative for more information.
Schema
Field Name | Data Type | Possible Sample/Expected Values | Definition |
|---|---|---|---|
event_time | bigint | 1758100025699 | The time the event occurred in Epoch format down to the millisecond. |
event_type_id | int | 2 | Indicates what type of event a given row in the exposure log corresponds to: 2 = Impression 3 = Click 4 = Conversion 5 = Measurable Impression 6 = Engagement 9 = Viewable Impression |
seat_id | int | 1 | The seat ID an impression is served on within DSP. |
seat_name | string | Seat Name | The name associated with the seat. |
account_id | bigint | 123456 | The Advertiser ID assigned to an Advertiser in the DSP seat. |
account_name | String | Advertiser Name | The Advertiser Name assigned to an Advertiser in the DSP seat. |
order_id | bigint | 987654 | The Campaign ID an impression was served against. |
order_name | String | Campaign Name | The Campaign Name in the DSP seat. |
line_id | bigint | 345678 | The Line ID an impression was served against. Lines are under an order. An order is a campaign. |
line_name | String | Line Name | The Line Name in the DSP seat. Lines are under an order. An order is a campaign. |
creative_id | bigint | 135790 | Indicates the specific Creative ID an impression was served against. |
creative_name | String | Creative Name | The name associated with the creative. |
ad_id | bigint | 12345678 | Refers to the unique creative and line pairing of this specific impression. |
publisher_id | bigint | 6 | Refers to the Exchange ID an impression was served on. |
publisher_name | String | Exchange Name | The name associated with the Exchange ID. |
country | String | United States | The country the ad was served to. |
region | String | Omaha | The region the ad was served to. Values could be states, provinces, counties or other regions. |
postal_code | String | 51549 | The postal code the ad was served to. |
language | String | ENG | The language of the user the ad was served to. |
device_type | String | Connected TV | The type of device an ad was served on.
|
device_make | String | Samsung | The manufacturer of the device the ad was served on. |
device_model | String | Samsung Galaxy S23 Ultra | The model line of the device the ad was served on. |
os_name | String | Android 15.0 | The operating system on the device the ad was served on. |
browser_name | String | Chrome | The browser the ad was served on. |
domain | String | yahoo.com | The top-level domain an ad was served on. When applicable, this can also be the app bundle name an ad was served on. |
user_id | String | <id value associated to the user_id_type on the event> if user_id_type is UNMATCHED, user_id is also UNMATCHED | ID of the user in the format indicated by the user_id_type. The IDs waterfall from most deterministic to least.
|
user_id_type | String | PXID | Indicates the type of user ID matched for the individual event. The IDs waterfall from most deterministic to least.
|
targeted_segment_id | String | e.g., 55444333 (can be comma separated values in some cases) | The Yahoo ID(s) for the Segment (comma-separated list). The Yahoo segment that the user qualified to in serving, out of the targeted segments on the line. All qualified segment IDs are shared in the exposure log. For example, if a user qualified for a partner’s segment and a first-party yahoo segment then both values would be present in this field as a comma-separated list. |
targeted_segment_name | String | Segment Name | The Data Provider’s Segment Name(s), as uploaded by the partner (comma separated list). In the case of retargeting audiences, this will be the name of the audience in the Yahoo DSP. All qualified segment name(s) are shared in the exposure log. For example, if a user qualified for a partner’s segment and a first-party Yahoo segment, then both values would be present in this field as a comma-separated list. |
taxonomy_id | String | 1001100210 | The Data Provider Segment ID(s), where applicable (comma-separated list). The taxonomy ID(s) the user qualified to at time of serving out of targeted segments. All qualified segment IDs are shared in the exposure log. For example, if a user qualified for a partner’s segment and a first-party Yahoo segment, then both values would be present in this field as a comma-separated list. Note: If a non-data provider segment is targeted alone, then this value can be an empty string. |
total_cost | bigint | 1028000 | Total cost of the reported event in the Seat currency is displayed in nanos units. |
currency_code | String | USD | The 3-letter currency code as assigned in the Seat. |
deal_name | String | Deal Name | The Deal Name as entered in the DSP. |
deal_id | bigint | 123456 | The Deal ID as assigned in the DSP. |
exchange_deal_id | String | 239 | The unique ID for the deal on the Exchange. |
seller_id | bigint | 123456789 | The unique ID that represents a publisher/seller as provided by the exchange. |
content_genre | string | Action | The genre of the content where the ad played. |
content_network | string | Roku | The name of the network where the ad played. |
content_channel | string | NBC | The content channel where the ad played. |
content_rating | string | PG | The rating of the content where the ad played. |
content_livestream | int | Live | The content streaming type where the ad played.
|
content_length | int | 0:30:00 | The length of the content where the ad played in seconds. |
content_language | string | English | The language of the content where the ad played. |
ctv_make_id | int | 3 | The numeric ID of the CTV make. |
ctv_model_id | int | 48 | The numeric ID of the CTV model. |
ctv_model_name | string | TV | The string representation of the CTV Model. |
ctv_make_name | string | Roku | The string representation of CTV Make. |
app_name | string | Yahoo Mail | The name of an iOS, Android or CTV app. |
line_channel_type | string | CTV | Channel Type this impression served against.
|
market_area_id | int | 2001 | The numerical id of the market area. |
market_area | string | New York, NY | The name of the market area. |
video_engagement_type | int | 3 | Indicates what type of video engagement quartile event a given row in the data feed corresponds to: Will be present only for event_type_id = 6 (Engagement) 2 = Video Start 3 = 25% Complete 4 = 50% Complete 5 = 75% Complete 6 = 100% Complete |
Note
User-level and/or event-level data is not permitted to be passed through Yahoo DSP when there is no user consent and for specific supply sources. In these cases, Yahoo is only able to share aggregate data or redact precise identifiers in event level data sent via the Yahoo DSP. The following supply sources may not match activity inside the Yahoo DSP UI or Reporting API:
Disney
Spotify Ad Exchange (SAX)
Netflix
Contact your Yahoo Account representative for details on what types of measurement these supply sources support.
Formatting and Folder Structure
Exposure Logs are delivered in PARQUET format by default. Reach out to your Yahoo representative with questions or compatibility issues.
Data will be delivered daily with a 1-day delay in the indicated data destination bucket, meaning that the prior day’s campaign exposure logs is delivered by the next morning. It will use the following example standard directory structure.
s3://<bucket_name>/<path>/dt=<yyyyMMdd>/Data is partitioned and placed in the events’ data destination folder (for example, S3). Each exposure log has a partitioned date (date an event occurred) and a filename which indicates the date a file was generated.
Date Partition Folder Name - 20260101
File Name - 20260102_44050_00007_56rrz_0490364c-9ff3-4a17-9536-e4fa255ac6d5.gzIn this example, a data file was generated on 2026-01-02 and was delivered to the path dt=20260101. Events in this file occurred on 2026-01-01.
Data for a given date can be added to the given partition after the initial daily file is delivered.
Access and Delivery
Yahoo DSP supports exposure log delivery to the following platforms.
Identity in Exposure Logs
Yahoo DSP supports user level identity matching via the DataX Data Collaboration platform. This solution allows secure matching of user level identifiers for targeting and measurement. Participation in the Partner Match user level solution offers a way to receive a partner-specific user ID in the logs, but is optional.
For advertisers and integrators receiving exposure logs, a user id is provided for each event when available in the user_id field. The possible ID types are Partner ID (requires a Partner Match integration), Device ID, IP address or the string “Unmatched”. Note that targeting settings in the platform can impact what matched user is returned. Using household targeting or adding additional audiences to a line will expand the audience to additional users and can result in user id values in the feed that were not part of the original audience.
Yahoo DSP will always return a PXID as the user_id when there is a matched user on the event. When no PXID match is present, we return device_id. When no device_id is present, we return the IP address. Any unmatched user_id appears as Unknown.