Skip to content
PlacementGraph™
Launch QA

Media plan QA checklist: what to verify before a programmatic campaign goes live

Part of Programmatic media planning

A reader browsing on a laptop with a coffee.
Photo: Vlada Karpovich, Pexels

The short answer

Media plan QA compares what was built in the buying platform with what the client approved, before any money moves. Check eight areas: geography, language, attached site lists, exclusions, deal setup, frequency caps, tracking and naming. A second person, not the builder, runs the checks and records evidence for each one.

Key takeaways

  • QA tests the build against the approved plan, so the approved version of the plan has to exist before QA starts.
  • Launch failures can be quiet: a list on the wrong level, a floor in the wrong currency or a tag that never fired.
  • Tracking can be tested before spend with Google's Tag Assistant and a tagged test click.
  • A naming convention that carries the list version and market makes every later report traceable to the plan.

What should be checked before a programmatic campaign goes live?

Prelaunch QA answers one question: does the campaign in the buying platform match the plan the client signed? It is not a second round of planning. The plan, the approved site list and the deal terms are fixed inputs, and QA looks for every place where the build drifted from them, using the media plan, the approved list version and the seller's deal confirmation. How the plan itself is built is covered in the programmatic media planning guide.

Eight QA areas for a programmatic launch, with the usual failure and the evidence to keep
AreaWhat can go wrongEvidence to keep
GeographyA province or state left out, or an exclusion missing for a market the client does not serveA screenshot or export of the targeted and excluded locations
LanguageThe line item language setting does not match the language of the creative assigned to itThe language setting beside the creative names
Site listsAn old list version attached, or the list attached to one line item and not its twinThe imported placement count beside the approved count
ExclusionsA shared exclusion list not applied to a new campaign, or applied too late to take effectThe list names applied at each level, with the date added
DealsWrong deal ID, the deal not yet active, or a floor read in the wrong currencyThe deal ID, floor and currency matched against the seller's confirmation
FrequencyA cap set at a level that does not do what the plan intendedThe cap, its level and its time window
TrackingA conversion tag that is unverified, or landing page URLs missing campaign parametersThe conversion status and one tested click URL
NamingNames that do not carry the market, list version or flight, so reports cannot be tracedThe final names for every campaign, line item and creative

How do you confirm site lists are attached to the right line items?

A site list can be correct and still be useless if it sits on the wrong object. Work from the platform outward: export what each line item actually targets and compare it with the approved version. Counting is the fastest test. If the approved list holds 84 domains and the line item shows 79, someone needs to know which five were dropped.

Five steps to verify list attachment

  1. Export the targeting from the platform. Download the placement or URL targeting of every live line item rather than reading it on screen.
  2. Match the version. Confirm the list name or file name carries the same version number the client approved, and that no earlier version is still attached anywhere.
  3. Compare counts and spot check entries. Match the totals, then open ten entries at random and confirm the domains are spelled exactly as approved.
  4. Check every twin. When campaigns are split by device, format or language, each split needs the same list unless the plan says otherwise.
  5. Check the limits. In Display & Video 360, a line item can target a combined 10,000 apps and URLs, and Google's help page (opens in a new tab) says to use channels for larger lists.

Exclusions need the same care, plus attention to timing and hierarchy. In Google Ads, placement exclusions (opens in a new tab) can be applied at the account, campaign or ad group level, account level exclusions override the lower levels, and new account level exclusions typically take effect within 12 hours. A shared exclusion list added on launch morning may not be working when the first impressions serve, so apply it the day before.

Which settings can break at launch?

The settings that break can be ones nobody argued about in planning: defaults and fields copied from the last campaign. Record the exact value, not a tick. The frequency capping guide explains how to choose a cap level; QA only confirms the build matches the choice.

Settings that can break at launch, with the documented behavior behind each
SettingWhy it breaksWhat to check
Deal floor currencyIn OpenRTB 2.6 (opens in a new tab), the Deal object's bidfloorcur defaults to USD and does not inherit from the impression's currencyA CAD deal shows CAD on the seller's confirmation and in the buying platform
Deal seatThe Deal object's wseat field lists the buyer seats allowed to bid, and the seat IDs must be agreed between the bidder and the exchange in advanceThe deal was set up for the seat ID the desk buys from
Private auction flagprivate_auction set to 1 restricts bids to the named deals; set to 0, open bids are also acceptedThe seller confirms whether the inventory is offered only through the deal
Frequency cap levelIn Google Ads, Display caps (opens in a new tab) can sit at the campaign, ad group or ad level, while Video caps sit at the campaign level onlyThe cap is set where the plan's intent says, per day, week or month
Creative approvalGoogle says most ads are reviewed within one business day (opens in a new tab), and some take longerEvery creative shows an approved status, not pending, before the start date

How do you check tracking before spend starts?

Tracking is the one area that can be tested end to end without buying an impression. Prove that a click from the campaign reaches the right page with its parameters intact, and that a conversion there is recorded where the plan says it will be reported.

Tracking checks before the first impression

  • Each conversion action the plan reports on shows a healthy status, not Unverified or Tag inactive; Google's Tag Assistant guide (opens in a new tab) walks through a test conversion and says verified actions update after about 30 minutes.
  • The team allowed for slower updates: Google's conversion tracking help (opens in a new tab) says tag status may take up to 48 hours to update after corrections.
  • Every landing page URL carries utm_source, utm_medium and utm_campaign, the three parameters Google Analytics (opens in a new tab) says to always use, so traffic does not report as not set.
  • The utm_campaign value matches the campaign name in the naming convention, character for character.
  • Where Google Ads auto-tagging is on, the team knows that Google Analytics 4 gives auto-tagging priority (opens in a new tab) over manual tagging and offers no override.
  • One tester clicked a test URL and checked the address bar on the final page, since a redirect, such as a vanity URL forwarding to a store page, can drop the query string.

How should campaigns and line items be named for QA?

Definition

Naming convention
A fixed order of fields, joined by a separator, that every campaign, line item and creative name follows, so a name alone tells a reader the client, market, channel and list version behind a row in a report.

Names matter because the reviewer must match each platform object to a line of the plan, and because reports, invoices and reconciliation files carry the name, not the plan. A name that includes the list version answers the question clients eventually ask: which approved list was this line item running on?

One possible naming order for programmatic line items
FieldExample valueWhy QA needs it
Client and productstorage_unitsSeparates products that share an advertiser account
Market and languagemb_enLets the reviewer check geography and language against one field
Buying routepmp or oeShows whether a deal ID should be attached
List versionlist_v4Ties delivery to the approved list
Flight2026q4Keeps an earlier flight's line item from being mistaken for the live one

Who should run QA on a media plan?

The builder checks their own work first but cannot be the last check, because people read what they meant to set rather than what they set. A second person who did not build the campaign, such as a buyer from another account or a QA lead, works through the checklist with the plan open beside the platform.

A two person QA routine

  1. Builder self check. The builder fills in the evidence column for all eight areas and flags anything they are unsure of.
  2. Independent check. A second person repeats the checks from the platform exports, without relying on the builder's notes.
  3. Resolve differences in writing. Each mismatch is fixed or accepted with a reason; questions about the plan itself go to the planner.
  4. Record the sign off. The reviewer names the plan version and list version checked, with the date and time.
  5. Recheck after launch. Within the first day of delivery, the reviewer confirms spend started on every line item and that served placements come from the attached list.
The QA path from build to first delivery
The QA path from build to first deliveryEach step leaves a written record, so a problem found after launch can be traced to the check that should have caught it. 1. Build: Campaign set up from the plan. 2. Self check: Builder records evidence. 3. Second check: Another person repeats it. 4. Fix: Mismatches resolved in writing. 5. Sign off: Plan and list versions named. 6. Day one recheck: Spend and placements confirmed01BuildCampaign setup from theplan02Self checkBuilderrecordsevidence03SecondcheckAnotherpersonrepeats it04FixMismatchesresolved inwriting05Sign offPlan andlistversionsnamed06Day onerecheckSpend andplacementsconfirmed
The QA path from build to first deliveryEach step leaves a written record, so a problem found after launch can be traced to the check that should have caught it. 1. Build: Campaign set up from the plan. 2. Self check: Builder records evidence. 3. Second check: Another person repeats it. 4. Fix: Mismatches resolved in writing. 5. Sign off: Plan and list versions named. 6. Day one recheck: Spend and placements confirmed01BuildCampaign set up from the plan02Self checkBuilder records evidence03Second checkAnother person repeats it04FixMismatches resolved in writing05Sign offPlan and list versions named06Day one recheckSpend and placements confirmed
Each step leaves a written record, so a problem found after launch can be traced to the check that should have caught it.

What does launch QA catch on a real campaign?

Fictional example

A Manitoba self storage campaign

A fictional Winnipeg self storage operator with sites in Winnipeg and Brandon plans a fall display campaign in English, timed for students leaving residence and families downsizing. The plan has an open auction line item, a private marketplace deal with a regional news publisher and a campaign level frequency cap.

A buyer from another account runs the second check on Friday morning. The open auction line item carries list version 3, while the client approved version 4, which removed two real estate listing sites. The deal ID is right, but the buying platform shows the floor in US dollars while the seller's confirmation says CAD.

The reviewer's test click on the Brandon landing page redirects to the Winnipeg page and loses its campaign parameters. The builder attaches version 4, the seller corrects the deal currency and the web team fixes the redirect. The reviewer signs off on plan version 2 and list version 4, and rechecks served placements on Tuesday.

How does PlacementGraph give QA a fixed list to check against?

Frequently asked questions

Should launch QA check creative as well as targeting?

Yes, for the parts that can break the plan: approval status, each creative's language against its line item, the formats the deal accepts, and the click URL. Whether the creative is good is a separate review owned by the creative team.

Is a soft launch at a small budget a substitute for QA?

No. A small first day budget limits the cost of a mistake, but it only reveals problems that show up in delivery. A wrong list version, a missing exclusion or stripped campaign parameters can run quietly at any budget. Run the checks first, then treat a modest first day as a safety margin.

What should the QA record contain?

The plan version and list version checked, the reviewer's name and the date, the evidence for each of the eight areas, and every mismatch with its resolution. Keep it with the campaign files, so a delivery question months later can be answered from the record.

Does QA change when the client's own team builds the campaign?

The checks stay the same, but the access changes. If the agency cannot see the client's buying platform, ask the client's team for exports of targeting, exclusions, deals and caps, plus a tested click URL. Agree in writing which side signs off each area, so no check falls between the two teams.

Sources

  1. App, channel, and website targeting (opens in a new tab)Display & Video 360 Help
  2. Exclude placements at the account level (opens in a new tab)Google Ads Help
  3. OpenRTB 2.6 specification (opens in a new tab)IAB Tech Lab
  4. Frequency capping: Definition (opens in a new tab)Google Ads Help
  5. About the ad review process (opens in a new tab)Google Ads Help
  6. Use Tag Assistant to troubleshoot your unverified or inactive conversion actions (opens in a new tab)Google Ads Help
  7. How Google Ads tracks website conversions (opens in a new tab)Google Ads Help
  8. URL builders: Collect campaign data with custom URLs (opens in a new tab)Google Analytics Help
  9. About auto-tagging (opens in a new tab)Google Ads Help

Researched and written by PlacementGraph Research. Read how we research, source and update these pages. Corrections: diana@placementgraph.com.

HOW AGENCIES WORK WITH US

From your first brief.
To your next campaign.

Share a brief in plain language. Get contextual websites and YouTube channels that fit it, with the evidence behind every pick and a deal ready for your usual buying platform.

  1. 01

    Share your brief

    The campaign in plain language.

  2. 02

    Get your shortlist

    The strongest contextual sites and channels, with the evidence behind each.

  3. 03

    We build the deal

    Your shortlist becomes a curated deal through our exchange partners.

  4. 04

    Activate and grow

    Buy in your usual platform. Agencies earn benefits as their investment grows.

LET’S WORK TOGETHER

Your next campaign starts here.

Your details will only be used to respond to your enquiry.

Prefer email? diana@placementgraph.com

YOUR PRIVACY

You choose whether to allow optional analytics. You can use the whole website either way.

Change or withdraw consent at any time using “Cookie preferences” in the footer. Turning analytics off stops future collection and removes this site’s analytics cookies; it does not erase information already sent. The page may refresh to apply withdrawal.