Sign in

Blog · How-to guides

Campaign analytics: compare results beyond clicks

Campaign analytics connects campaign activity to customers, revenue and contribution. Follow a file-based review with matched exports, spreadsheet formulas and checks that keep the campaign totals tied to finance.

The short answerCampaign analytics compares campaign activity with business results: qualified leads, buying customers, net revenue and contribution after campaign costs. Match campaign, CRM and finance exports using stable identifiers and an agreed credit rule. Compare equally mature customer groups, calculate results from the matched rows, and reconcile spend and revenue before using the comparison to change a budget.

Campaign analytics compares what a campaign costs with the customers, revenue and contribution it produces under an agreed reporting rule. Start with matched campaign, CRM and finance exports, then compare results over the same observation window. Clicks help explain delivery; contribution shows what the matched sales leave after their costs.

Agree the review before opening the exports

Write down the business question. A sales leader deciding which campaign deserves another budget allocation needs different evidence from someone checking whether an advertisement reached its audience.

For a commercial review, define a qualified lead, a buying customer, net revenue and the direct costs included in contribution. Use the same definitions across campaigns. Finance should own the revenue and cost scope, marketing should own campaign identifiers and spend, and sales operations should own lead and customer matching.

Choose the credit rule before comparing results. A customer who attended a webinar and later clicked a search advertisement cannot count as a full customer in both rows. The marketing attribution methods guide covers those credit choices; this workflow uses the agreed assignments rather than choosing a new method during the review.

Gather three exports with stable identifiers

Keep the original files and build a separate comparison workbook. These are the minimum working sheets:

Sheet One row represents Required columns
Leads One deduplicated qualified lead A: lead ID; B: assigned campaign; C: buyer flag
Finance One matched sales or credit line A: transaction ID; B: assigned campaign; C: net revenue; D: direct cost
Spend One campaign cost line A: cost ID; B: campaign; C: description; D: amount

The buyer flag is numeric: use 1 if the lead became a buying customer inside the window and 0 otherwise. Where several leads belong to one buying account, first consolidate them to the agreed customer unit. Otherwise the numerator can count contacts while the denominator describes accounts.

Keep an unassigned campaign bucket for records that cannot be matched. Separate discounts and returns consistently in the finance export, and include creative or agency costs when they belong in your agreed spend scope. The customer acquisition cost guide explains the broader cost boundary when the question is acquisition cost rather than this campaign comparison.

Put every campaign on the same clock

Consider a US industrial supplier reviewing qualified leads acquired during June 2026. Each lead has a 30-day buying window beginning on its qualification date. The review takes place after the latest June lead has completed that window.

Filter Finance to the resulting matched sales and credits within each lead's window. Filter Spend to the campaign costs assigned to the June acquisition group. Do not compare June's entire spend with only the orders received before June closed: late-month leads would have less time to buy.

Save the extract date and window definition beside the workbook. Later returns can change the result, so a revised report should retain the earlier snapshot. Marketing ROI tracking covers that revision process over successive reviews.

Calculate the comparison in Google Sheets

Create a Summary sheet with campaign names in A2:A4. Use B for spend, C for leads, D for buyers, E for revenue and F for direct cost.

Google documents COUNTIFS as counting rows that meet multiple criteria. With the deduplicated Leads sheet described above, enter these formulas and fill down:

B2 = SUMIFS(Spend!$D:$D,Spend!$B:$B,A2)
C2 = COUNTIFS(Leads!$B:$B,A2)
D2 = COUNTIFS(Leads!$B:$B,A2,Leads!$C:$C,1)
E2 = SUMIFS(Finance!$C:$C,Finance!$B:$B,A2)
F2 = SUMIFS(Finance!$D:$D,Finance!$B:$B,A2)

SUMIFS adds values meeting the specified criteria, so the revenue formula sums matched finance rows rather than relying on a campaign platform's sales total. Add conversion in G, contribution before campaign spend in H, and contribution after spend in I:

G2 = IF(C2=0,"",D2/C2)
H2 = E2-F2
I2 = H2-B2

Covirage is not affiliated with Google.

Worked review: three campaigns

These illustrative source totals produce the following review. Currency is USD; conversion is rounded to one decimal place, while calculations retain full precision.

Campaign Spend (USD) Leads Buyers Net revenue (USD) Direct cost (USD)
Search 12,000 240 48 72,000 43,200
Webinar 9,000 90 27 67,500 35,100
Email 3,000 160 32 32,000 22,400
Total 24,000 490 107 171,500 100,700
Campaign Buyers / leads Conversion Revenue less direct cost (USD) Less spend (USD)
Search 48 / 240 20.0% 72,000 - 43,200 = 28,800 28,800 - 12,000 = 16,800
Webinar 27 / 90 30.0% 67,500 - 35,100 = 32,400 32,400 - 9,000 = 23,400
Email 32 / 160 20.0% 32,000 - 22,400 = 9,600 9,600 - 3,000 = 6,600
Total 107 / 490 21.8% 70,800 46,800

The proof is 171,500 - 100,700 - 24,000 = $46,800, which also equals 16,800 + 23,400 + 6,600. Tie each input column to its filtered source export. Any unassigned sales or costs stay visible in that reconciliation.

Search brought the most buyers. Webinar left the largest contribution after campaign spend. Email used the least budget but generated the least total contribution. These are different findings, so bring the decision back to the objective. For return ratios, use the existing ROI versus ROAS formulas rather than treating revenue as profit.

Where it goes wrong

  • Different maturity. An unfinished buying window depresses conversion and revenue. Mark it incomplete rather than treating future sales as absent forever.
  • Duplicated customers or orders. Multiple contacts, touches or invoice lines can inflate counts. Deduplicate the customer unit and reconcile transaction IDs.
  • Changing cost scope. Including agency fees for one campaign but omitting them for another makes their contributions incomparable.
  • Net revenue missing credits. Returns and discounts change the amount earned. Apply the same revision policy across every campaign.
  • Observed return treated as scalable lift. A successful campaign may reach a limited audience. Check audience overlap, sales capacity and incremental evidence before assuming more budget produces the same result.

Review your campaign files in Covirage

Bring your campaign spend, matched CRM records and finance export; Covirage maps the columns, and its tools compute and check the comparisons. The external AI model explains the results with every figure traced to its rows. Create a free Covirage account, which takes about a minute, and bring a sample of your own export after setting up your business.

See Covirage for sales insights for the supporting business context.

Questions people ask

What should a campaign analytics report include?

Include campaign spend, qualified leads, buying customers, net revenue and the direct costs of those sales. Show the observation window and credit rule beside the figures. A report also needs unmatched records and reconciliation results so readers can distinguish performance from missing data.

How often should campaigns be reviewed?

Review delivery and spending while a campaign runs, then compare commercial results after the agreed sales window has matured. The right interval follows your buying cycle. Keep an early operational review separate from the later finance review so incomplete sales do not look like final outcomes.

Can clicks show whether a campaign was profitable?

Clicks show activity before a sale. Profitability requires matched revenue, the agreed costs of delivering those sales and campaign costs. A campaign can attract substantial activity while producing little contribution, especially when discounts, product mix or returns reduce the value of the resulting orders.

Does a matched campaign sale prove the campaign caused it?

Matching establishes which campaign receives credit under your reporting policy. It does not establish what would have happened without that campaign. Use an appropriate controlled comparison to estimate incremental effects, and label ordinary campaign reports as attributed results rather than causal lift.