Skip to content
MetricMaven

Agency Operations

Agency client reporting QA checklist and metric definitions template

A client reporting QA checklist and a shared metric definitions template catch the errors that cause number disputes before the report reaches the client.

Jamie IsabelJamie IsabelPublished October 12, 20268 min read
On this page

Most client report failures at agencies are not design problems. They are definition problems, timing problems, or tracking changes nobody wrote down. A QA checklist and a shared metric definitions template catch those before the client does.

Why report QA fails at agencies

An agency runs many clients, and each one has its own ad accounts, CRM, analytics property, and spreadsheet. Templates get copied from one account to the next and carry old assumptions with them. Definitions drift: “lead” means a form submit in one account and a qualified contact in another. When a number moves, account managers often cannot tell whether the cause is a tracking break, a real change in performance, or a change they made themselves. The report looks finished, but nobody can defend it when the client asks.

Metric definitions template

Write the definitions down once per client, then reuse the structure across accounts. Each row is one metric. The columns are the fields that cause disputes when they are missing. The rows below are examples of how to fill the template, not definitions to copy unchanged into every client file.

MetricDefinitionSource of truthFormulaAttribution/windowOwnerNotes
SpendTotal cost for the period across the paid accounts in scopeAd platform reporting, per accountSum of platform spend in account currencyCalendar period in the account time zone; no attributionAccount leadList every account and currency included
LeadsSubmissions counted by the rule agreed with the clientGA4 or CRM, named explicitlyCount of the agreed event or contact creationEvent or record date; window written downAccount leadSay which source the client sees
Qualified leadsLeads that have reached the client’s qualification stageCRM lifecycle or stage fieldCount of contacts at or past the agreed stageStage date; any lookback written downClient ops and account leadChanges to the qualification rule must be annotated
Cost per leadSpend divided by leadsDerived from the two rows aboveSpend ÷ LeadsSame period and source for both inputsAccount leadNever mix sources between numerator and denominator
Conversions (platform-reported)Conversions as the ad platform counts themAd platformPlatform conversion countPlatform attribution setting, recorded per accountPaid media leadLabel as platform-reported; do not compare directly with CRM counts
RevenueRevenue the client agrees to reportCommerce platform or CRM, namedSum of agreed order or deal valueOrder or close date; refund rule statedClient finance and account leadCurrency and tax treatment written down
ROASAttributed revenue for paid media divided by spendDerived from the two rows aboveAttributed revenue ÷ SpendSame attribution source and window as revenue and spendAccount leadShow the revenue source next to ROAS
SessionsAnalytics sessions for the periodGA4 property named in the templateCount of sessions in the propertyProperty time zone and filters statedAnalytics ownerNote any filters or excluded traffic
Example rows. Each client’s template should name its own sources, owners, and rules.

Attribution windows differ by platform and by account setting, and they can change over time. The template should not assume a default for any platform. Every row that depends on attribution, a lookback period, or a reporting window needs the setting in use, where to check it, and the date it was last confirmed. If the window cannot be written down, the metric is not ready to report.

Pre-send QA checklist

Run this list on every report before it goes to the client. Each item is a yes or a documented exception.

  1. Date range and time zone match the agreed reporting period in every source.
  2. Every source has been refreshed after the period closed, and the refresh time is noted.
  3. Spend totals match the ad platform UI within a tolerance you set in advance and recorded in the template.
  4. Conversion definitions are the same as last period, or the change is annotated.
  5. Zero days and spikes are explained, or listed as open questions with an owner.
  6. Currency is stated and matches the account currency.
  7. Tracking changes in the period, such as tag, form, or event changes, are annotated on the charts and in the commentary.
  8. Commentary explains why numbers moved, not only what moved.
  9. Every link in the report opens to the right destination.
  10. Client-specific KPIs appear on page one.

Monthly and quarterly checks

The pre-send checklist catches errors in one report. These recurring checks catch the drift that builds up across many reports.

CheckCadenceWhat to confirm
Definitions reviewQuarterly, with the clientEach metric still means what the client thinks it means, and the sign-off is recorded
Tracking auditQuarterlyTags, events, conversion actions, and CRM stage rules still fire and map the way the template says
Access and permissionsQuarterlyOnly current staff and client users can reach each ad account, analytics property, and CRM
Connector healthMonthlyEvery automated pull ran, row counts look as expected, and no source has stopped updating without notice
Attribution and lookback settingsMonthlyPlatform settings match what the template records for each account
Recurring checks keep the template true after the first report is sent.

Handling discrepancies in the report

When two numbers disagree, show both of them. Name each source, state each value, and state the difference. Then explain the likely cause using the definitions and windows in the template: a different attribution window, a time zone shift, deduplication, a filter, or a real change in the business. If the cause is not known yet, say so, name what is being checked, and give the date it will be resolved. Do not quietly adjust a number to match another platform. A silent fix makes the next discrepancy harder to explain, and it hides a tracking problem the team needs to see. If the team decides to change the reported source of truth, annotate the change and restate the prior period on the same basis where that is possible. The reasons numbers diverge are covered in why your numbers never match between platforms.

What to automate and what a human checks

Automation should do the repeatable work: pulling sources, applying the template’s date and currency rules, and flagging anything that breaks a check. A person still decides what a number means and what the client should do about it.

TaskAutomateHuman check
Scheduled source pullsYes, with a log of each runConfirm the run completed and row counts look plausible
Spend and session tie-outsYes, against the agreed toleranceReview any difference above the tolerance and explain it
Date range, time zone, currencyApply the template’s settings consistentlyConfirm the period matches what the client agreed to
Zero days and spikesFlag automaticallyDecide the cause and write the explanation
Tracking-change annotationsLog known tag and event changesConfirm the annotation appears on the report
CommentaryNot automatedWrite why the numbers moved and what happens next
Link checksYesSpot-check the client-facing destinations
Page-one KPIsTemplate-driven layoutConfirm the client’s priority KPIs are the ones shown
Automate the checks that have a clear pass or fail. Keep judgment with the account team.

For the wider process, read the client reporting workflow for agencies and the client reporting system for agencies. For the stack that feeds the template, see how to set up your agency’s reporting infrastructure. The service is covered on the agency client reporting page, and the industry context is on marketing analytics for agencies. If you want a second pair of eyes on a report before it goes out, book a tracking audit: bring the last report and we’ll check it against the definitions above.

Frequently asked questions

What should a client reporting QA checklist include?

At minimum: the date range and time zone, a refreshed source for every metric, spend tied out to the ad platform within a tolerance set in advance, conversion definitions that are unchanged or annotated, explanations for zero days and spikes, currency, tracking-change annotations, and client KPIs on page one.

What is a metric definitions template?

A metric definitions template is a shared table that records, for each reported metric, its definition, source of truth, formula, attribution or window, owner, and notes. It stops the same metric name from meaning different things across accounts and months.

How should an agency handle a discrepancy in a client report?

Show both numbers and name their sources, then explain the gap using the definition and window in the template. Do not silently change a number to match another source. If the cause is not known yet, say so and state what is being checked.

Can MetricMaven help with client reporting QA?

Yes. We map the source fields, attribution windows, exclusions, and CRM stages behind each client metric, then set up the checklist and definitions template so account teams can run the same QA every reporting cycle.

Tracking audit

Find out what your tracking is missing.

Every engagement starts with a written audit of what you track today, what’s broken, and what to fix first.

Book a tracking audit
  1. What we check

    Tags, events, and consent on your site, and how conversions reach GA4, your ad platforms, and your CRM.

  2. What you get

    A ranked list of tracking gaps with the business impact of each and the effort to fix it.

  3. What follows

    Your team works through the list, or we implement the fixes and keep them working.