Blog Campaign measurement Reference

Create a campaign data dictionary before the first report

Give each campaign field a source, formula, unit, time window and owner. Use a twelve-field dictionary to keep agency and brand reports consistent.

Twelve distinct measuring pieces fit into one shared reference case, with owner markers and stacked revision tabs.

Keep two teams from using the same metric name differently by giving each field one shared, versioned definition before reporting starts. Your influencer campaign data dictionary should specify the source, calculation, unit, reporting window, missing-value rule and person who can approve changes. Both teams should calculate a small test dataset from that definition and get the same result.

Start after you have chosen campaign metrics for the decision you need to make. The dictionary records what those fields mean. It does not decide which goals matter.

Give the field a definition that survives a handoff

A column called "sales" leaves too much open. One team might count purchases carrying a creator coupon. Another might use a platform's attributed conversions. Even matching totals would not establish that the teams counted the same transactions.

USGS guidance on data dictionaries includes field definitions, data types, nullability, missing-data codes and validation rules. It also recommends updating the dictionary when the data structure changes. Those principles apply to a campaign spreadsheet as well as a database.

For each entry, record:

  • Source: The system, account or property, export or query, and original field name.
  • Meaning and formula: What one row represents, which records qualify, how duplicates are removed, and the calculation.
  • Unit and window: Count, minutes, currency or percentage; dates, timezone and any attribution lookback.
  • Missing rule: Whether the field is required, when it can be unavailable, and whether dependent calculations must stop.
  • Owner and history: The accountable person, definition version, effective date, reason for change and affected reports.

These are recommended working rules. They are separate from platform requirements.

A twelve-field starter dictionary

The example below covers a hypothetical YouTube creator campaign with coupon-based purchase reporting. It contains twelve fields across a content register, video metrics and a campaign summary. Keep those tables separate so that joining multiple videos cannot multiply campaign spending or purchases.

The example uses these shared definitions:

  • Y window: September 1 through September 7, 2026, using YouTube's Pacific-time reporting days. Its dimensions documentation defines those day boundaries.
  • C window: Purchase timestamps from September 1, 2026, at 00:00 UTC up to, but excluding, September 8 at 00:00 UTC. This is a team-chosen purchase window. It differs from Y and must remain labelled.
  • R1: Initial definition, effective September 1, 2026. Each owner approves their entries before use. In a working copy, replace role owners with named people.

"Stop" means the affected calculation cannot receive a final value until the defect is resolved. "Null" means unavailable, with a recorded reason. A returned numeric zero remains zero.

FieldSource and ruleUnit; windowMissing ruleOwnerChange history
campaign_idCampaign register; stable key, copied without calculationText; campaign lifetimeStop if absentCampaign leadR1: key assigned
creator_idCreator register; internal key linking creator and channelText; campaign lifetimeStop if absentCreator managerR1: mapping fixed
video_idContent register; YouTube video identifier, one row per campaign videoText; publication onwardStop if absentCreator managerR1: video key
yt_likesYouTube Analytics likes; positive ratings for the listed videoCount; YNull if unavailableSocial analystR1: native field
yt_commentsYouTube Analytics comments; commenting actions for the listed videoCount; YNull if unavailableSocial analystR1: native field
yt_sharesYouTube Analytics shares; shares through its Share buttonCount; YNull if unavailableSocial analystR1: scope fixed
yt_watch_minutesYouTube Analytics estimatedMinutesWatched; viewing time for the listed videoMinutes; YNull if unavailableSocial analystR1: minutes retained
coupon_ordersRecorded GA4 purchase data; distinct qualifying transaction IDs under the rule belowTransactions; CStop for invalid qualifying IDsWeb analystR1: coupon-only rule
coupon_purchase_valueSame qualifying transactions; sum each transaction's value onceUSD; CStop for missing value or currencyWeb analystR1: before refunds
campaign_costApproved cost ledger; creator fees, agency fees, product cost and shipping assigned to this campaignUSD; whole campaignStop for incomplete ledgerFinance ownerR1: cost categories
cost_per_coupon_ordercampaign_cost divided by coupon_ordersUSD per transaction; C denominatorNull if denominator is zero or either input unavailableMeasurement leadR1: formula fixed
definition_versionDictionary release register; version used to prepare each datasetText; report releaseStop if absentMeasurement leadR1: release marker

The four YouTube metric meanings follow its official metrics reference. They remain YouTube-specific. A field from another platform needs its own entry before anyone combines it with these numbers.

For this coupon rule, a transaction qualifies when its event-level coupon matches a code assigned only to this campaign and its purchase timestamp falls in C. Count it once by transaction_id. Identical duplicate records collapse to one; conflicting duplicates stop the calculation for review. Item-level coupons do not qualify under R1. Purchases without a qualifying code stay outside this measure. There is no click or view lookback.

Google's purchase event specification treats event-level and item-level coupons independently. It defines purchase value as item price multiplied by quantity, summed across items, excluding shipping and tax. Currency accompanies the value. R1 accepts USD transactions only and makes no refund deduction. Other currencies require a separately approved conversion rule.

This is a custom grouping of recorded purchases. It makes no claim about purchases caused by a creator or about all campaign sales. It also assumes the team has configured purchase collection and can access transaction-level records. Google lists these as events that require configuration.

Test the definition with transactions both teams can see

Give both teams the same hypothetical records before they build reports. All rows below fall inside C, use USD, and carry a qualifying event-level campaign coupon.

RecordTransaction IDItem valueShippingTax
AT018058
BT018058
CT02120012

Under R1, A and B describe one transaction. Therefore:

  • coupon_orders = 2 distinct transaction IDs.
  • coupon_purchase_value = 80 + 120 = USD 200.
  • With hypothetical campaign_cost of USD 500, cost_per_coupon_order = 500 / 2 = USD 250.

A result of three orders shows that duplicate removal differs. A value of USD 225 includes shipping and tax. Neither result matches R1. Resolve the definition or implementation before comparing team performance.

Separate unavailable data from a changed definition

Access and timing belong in the dictionary too. The YouTube query reference requires authorized requests. It also says responses stop at the latest day available for all requested metrics. A requested end date does not prove that the response covers it.

Save the query or export reference, extraction time, requested dates and actual coverage with each report. A failed request or absent value must not become an observed zero. For report labels and how to present incomplete coverage, use the guide to reporting missing campaign data.

Change definitions through one owner

Modash's reporting guide warns that changing engagement denominators or attribution models breaks comparisons. A dictionary needs an approval process to prevent that drift.

Use this process whenever a proposed change affects meaning:

  1. The requester names the field, old rule, proposed rule and reason.
  2. The owner lists affected formulas, datasets and reports.
  3. Both teams calculate the test records under the proposed rule.
  4. The owner records the approval and effective date in the change-history column.
  5. The report author either recalculates earlier periods under the new rule or marks the comparison as using different definitions.

Correcting a typo can retain the definition version. Changing the coupon scope, cost categories, timezone or refund treatment needs a new version. Preserve the earlier definition with reports that used it.

Before the first report, ask one person from each team to calculate the hypothetical transaction table independently. If they disagree, revise the relevant dictionary entry until they can explain and reproduce the same answer.

Sources

  1. Data Dictionaries U.S. Geological Surveyaccessed Sep 27, 2026
  2. Influencer Marketing Reporting: A Complete Guide [With Templates and Real Examples] Modashaccessed Sep 27, 2026
  3. Metrics Google for Developersaccessed Sep 27, 2026
  4. Reports: Query Google for Developersaccessed Sep 27, 2026
  5. Recommended events Google for Developersaccessed Sep 27, 2026
  6. Dimensions Google for Developersaccessed Sep 27, 2026