Deal measurement queries
As a selling party, you can access comprehensive reporting and analytics data for your deals. With the deal measurement queries, you can retrieve quality metrics that compare your deal's performance to market benchmarks as well as other metrics that track deal activity and outcomes. These insights are essential for evaluating deal effectiveness and optimizing your deal strategies.
To analyze deal quality, performance, and forecasted outcomes, query the deals object, using your account ID and the ID of the deal that you want to review. The following sections provide example queries that show how to retrieve deal quality and performance metrics. For details on available fields, see Deal measurement objects.
Quality metrics
Quality metrics help you evaluate how well your deal is performing compared to the market benchmarks. Each metric—addressability, inventory uniqueness, price competitiveness, and signal fidelity—shows your deal's actual results (observed values) alongside the average results (marketAverage values) for similar inventory in the marketplace. When your results are higher than the market average, it usually means your deal is doing better. The overall deal quality score combines these individual metrics into a single, comprehensive assessment of your deal’s effectiveness compared to market benchmarks.
The following deals query shows how to retrieve the overall deal quality score and its metrics. For field details, see QualityMetrics object.
query GetDealQualityMetricsExample {
deals(
input: {accountId: "ACCOUNT_ID_PLACEHOLDER"}
where: {
id: {
in: ["DEAL_ID_PLACEHOLDER"]
}
}
) {
nodes {
id
name
measurements {
qualityMetrics(where: {
lookbackPeriod: LIFETIME
}) {
startAt
dealQualityScore {
marketAverage
observed
}
addressability {
marketAverage
observed
}
contributionToCampaignPerformance {
marketAverage
observed
}
inventoryExclusivity {
marketAverage
observed
}
priceCompetitiveness {
marketAverage
observed
}
relevance {
marketAverage
observed
}
signalFidelity {
marketAverage
observed
}
}
}
}
}
}
Performance metrics
Performance metrics provide the operational data essential for campaign reporting, budget tracking, and deal optimization. You can retrieve this data in two ways, by setting the aggregate field to one of the values described in the following table.
| Aggregate Field Value | Data Breakdown | Description | Use Case |
|---|---|---|---|
TOTAL |
Total aggregated values | Summary reporting across an entire period. | High-level performance overview. |
TOTAL_BREAKDOWN_BY_INTERVAL |
Interval breakdowns | Trend analysis and time-series visualization. | Detailed performance over time. |
For field details, see PerformanceMetrics object.
Retrieve total aggregated performance metrics
To get a high-level overview of the deal performance, set the aggregate field to TOTAL. The following deals query shows how to retrieve total performance metrics for a specified date range.
query GetDealPerformanceMetricsTotalExample {
deals(
input: {accountId:"ACCOUNT_ID_PLACEHOLDER"}
where: {
id: {
in: ["DEAL_ID_PLACEHOLDER"]
}
}
) {
nodes {
id
name
measurements {
performanceMetrics(
where: {
aggregate: TOTAL
dateTimeRange: {
gte: "2025-11-05T16:49:30.370Z"
lt: "2025-11-20T04:59:00.000Z"
}
}
) {
availCount
avgDailyAvailCount
avgDailySpendUsd
bidCount
bidRatePercent
impressionCount
winRatePercent
cpm
totalSpendUsd
startAt
}
}
}
}
}
Retrieve performance metrics with interval breakdown
To get trend analysis and time-series visualization of the deal performance, set the aggregate field to TOTAL_BREAKDOWN_BY_INTERVAL. The following deals query shows how to retrieve performance metrics broken down by intervals over a specified date range.
NOTE: The Trade Desk sets the intervals based on the date range you select.
query GetDealPerformanceMetricsIntervalExample {
deals(
input: {accountId: "ACCOUNT_ID_PLACEHOLDER"}
where: {
id: {
in: ["DEAL_ID_PLACEHOLDER"]
}
}
) {
nodes {
id
name
measurements {
performanceMetrics(
where: {
aggregate: TOTAL_BREAKDOWN_BY_INTERVAL
dateTimeRange: {
gte: "2025-11-05T16:49:30.370Z"
lt: "2025-11-20T04:59:00.000Z"
}
}
) {
availCount
bidCount
bidRatePercent
impressionCount
winRatePercent
cpm
totalSpendUsd
startAt
}
}
}
}
}
Forecasting and prediction
Forecasting metrics predict future deal performance, spending patterns, and potential underspend scenarios. This enables proactive deal management and optimization.
The following deals query retrieves inventory adherence metrics and forecasting data to assess deal performance against expectations.
query GetDealInventoryAdherenceExample {
deals(
input: {accountId: "ACCOUNT_ID_PLACEHOLDER"}
where: {
id: {
in: ["DEAL_ID_PLACEHOLDER"]
}
}
) {
nodes {
id
name
measurements {
inventoryAdherence
forecastedSpendUsd
forecastedUnderspendPercent
forecastedUnderspendUsd
qualityMetrics {
startAt
dealQualityScore {
marketAverage
observed
}
}
}
}
}
}
Observed data
Observed data provides granular insights into how frequently specific bidding terms and floor price levels appear in your deal compared to marketplace averages. This helps assess deal transparency and signal quality.
The following deals query retrieves detailed observed data, such as bidding terms frequency and floor price analysis, compared to marketplace averages. For field details, see ObservedData object.
query GetDealObservedDataExample {
deals(
input: {accountId: "ACCOUNT_ID_PLACEHOLDER"}
where: {
id: {
in: ["DEAL_ID_PLACEHOLDER"]
}
}
) {
nodes {
measurements {
observedData {
biddingTerms {
biddingTerm {
id
name
}
observedPercent
marketPercent
}
floorPrices {
observedPercent
value {
amount
currency {
id
name
}
}
}
inventoryComposition {
adEnvironments {
observedPercent
value
}
adFormats {
observedPercent
value {
height
id
mediaType
name
width
}
}
apps {
observedPercent
value
}
audioFileTypes {
observedPercent
value
}
audioPodSeq {
observedPercent
value
}
audioSlotInPod {
observedPercent
value
}
audioStartDelay {
observedPercent
value
}
browsers {
observedPercent
value {
id
name
}
}
channels {
observedPercent
value {
name
}
}
consumerGeos {
observedPercent
value {
geoLocationType
id
name
}
}
contentCategories {
observedPercent
value {
id
name
path
taxonomy
}
}
contentKeywords {
observedPercent
value
}
contentLanguages {
observedPercent
value {
id
name
}
}
contentRatings {
observedPercent
value {
id
name
}
}
deviceMakes {
observedPercent
value {
id
name
}
}
deviceTypes {
observedPercent
value
}
feed {
observedPercent
value
}
genres {
observedPercent
value {
id
name
}
}
hasNativeAdRequest {
observedPercent
value
}
inventoryChannels {
observedPercent
value
}
liveStream {
observedPercent
value
}
mediaTypes {
observedPercent
value
}
mobileCarriers {
observedPercent
value {
id
name
}
}
nativeOptionalAssetTypes {
observedPercent
value
}
nativeRequiredAssetTypes {
observedPercent
value
}
networks {
observedPercent
value {
name
}
}
operatingSystems {
observedPercent
value {
id
name
}
}
placementIds {
observedPercent
value
}
plcmt {
observedPercent
value
}
podSeq {
observedPercent
value
}
productionQualities {
observedPercent
value
}
publisherCategories {
observedPercent
value {
id
name
path
taxonomy
}
}
publisherKeywords {
observedPercent
value
}
publishers {
observedPercent
value {
id
isEnabled
logoUrl
name
type
}
}
sellers {
observedPercent
value {
domain
id
isEnabled
logoUrl
name
type
}
}
sellersJsonSellerIds {
observedPercent
value {
sellerId
}
}
series {
observedPercent
value
}
sites {
observedPercent
value
}
skippability {
observedPercent
value
}
slotInPod {
observedPercent
value
}
startDelay {
observedPercent
value
}
supplyVendorUserIdMappedToTDID {
observedPercent
value
}
systemLanguages {
observedPercent
value {
id
name
}
}
titles {
observedPercent
value
}
userIdTypeAvailable {
observedPercent
value
}
venueTypes {
observedPercent
value {
id
name
}
}
videoDimensions {
observedPercent
value {
height
width
}
}
videoFileTypes {
observedPercent
value
}
videoMinMaxBitRateInKbps {
observedPercent
value {
max
min
}
}
videoMinMaxDurationInSeconds {
observedPercent
value {
max
min
}
}
videoPlayerSize {
observedPercent
value
}
videoRequiredDurationsInSeconds {
observedPercent
value
}
videoSupportedApiFrameworks {
observedPercent
value
}
videoSupportedVastVersions {
observedPercent
value
}
wseat {
observedPercent
value
}
}
}
}
}
}
}
Comprehensive deal measurements query
The following deals query shows how to retrieve all available measurement data for a deal in a single request, including quality metrics, performance metrics, and observed data. For field details, see Deal measurement objects.
TIP: To perform trend analysis or period-over-period comparison, include timestamp fields in performance metrics. For quality metrics, use the Lookback period enumeration values.
query GetComprehensiveDealMeasurementsExample {
deals(
input: {accountId: "ACCOUNT_ID_PLACEHOLDER"}
where: {
id: {
in: ["DEAL_ID_PLACEHOLDER"]
}
}
) {
nodes {
id
name
dealType
measurements {
qualityMetrics(where: {
lookbackPeriod: LIFETIME
}) {
startAt
dealQualityScore {
marketAverage
observed
}
addressability {
marketAverage
observed
}
inventoryExclusivity {
marketAverage
observed
}
priceCompetitiveness {
marketAverage
observed
}
signalFidelity {
marketAverage
observed
}
}
performanceMetrics(
where: {
aggregate: TOTAL
dateTimeRange: {
gte: "2025-11-05T16:49:30.370Z"
lt: "2025-11-20T04:59:00.000Z"
}
}
) {
availCount
avgDailyAvailCount
avgDailySpendUsd
bidCount
bidRatePercent
impressionCount
winRatePercent
cpm
totalSpendUsd
startAt
}
inventoryAdherence
forecastedSpendUsd
forecastedUnderspendPercent
forecastedUnderspendUsd
observedData {
auctionTypes
biddingTerms {
observedPercent
marketPercent
biddingTerm {
name
}
}
}
}
}
}
}