Sign in

Blog · Board and management reporting

PPC analytics: connect ad spend to business results

PPC analytics compares campaign spending with clicks, conversions, and attributed revenue. Build a consistent campaign table from advertising and sales exports, calculate the ratios, and check the result before moving budget.

The short answerPPC analytics measures how paid campaigns turn advertising spend into clicks, agreed conversions, and attributed business revenue. Export campaign costs and outcomes, align their dates and attribution rules, and calculate cost per click, conversion rate, cost per conversion, and return on ad spend. Reconcile credited revenue to sales records before deciding which campaigns deserve more budget.

PPC analytics connects paid campaign spending to clicks, conversions, and attributed revenue using consistent definitions. Start with the advertising export and the sales records that support its outcomes, then calculate the campaign ratios. Keep credited revenue separate from profit and from claims about sales caused by advertising.

1. Set the reporting rules before combining files

Write down the conversion action, date basis, attribution rule, currency, and observation cutoff. A purchase and a contact form are different outcomes; do not add them into a purchase rate. For example, Google Ads defines conversions as actions the advertiser specifies, which can include purchases, calls, and sign-ups.

Choose either an interaction cohort or a calendar-period view. A cohort follows clicks from a defined period and observes their eligible later purchases. A calendar view shows activity recorded during the period. Both can be useful, but dividing cohort spend by an unrelated month's sales creates a misleading return.

The worked example follows August 2026 clicks, with an agreed 30-day purchase window and an observation cutoff of September 30, 2026. The conversion-window documentation explains that the window determines how long after an interaction a conversion can be recorded. Use the actual rule in your export rather than assuming every account uses the same window.

2. Prepare one campaign summary

Keep campaign ID alongside the readable name, since names can change. Use USD throughout this example. Export spend and interactions at the same campaign grain; then summarize credited purchases and revenue to that grain before combining them. Joining campaign spend directly to individual orders repeats the spend on every matched order.

Use a unique transaction ID to reconcile purchase records. If attribution divides credit across campaigns, retain the supplied fractions and require their total per transaction to match the agreed credit. This example uses an exclusive campaign assignment and one counted purchase per credited order.

Place this summary in columns A through F, with headers in row 1:

Campaign Impressions Clicks Spend (USD) Purchases Attributed net revenue (USD)
Brand search 100,000 4,000 8,000 80 24,000
Category search 50,000 1,000 5,000 20 14,000
Returning visitors 20,000 1,000 2,000 50 10,000
Total 170,000 6,000 15,000 150 48,000

Revenue is after recorded discounts and refunds at the cutoff, excluding sales tax. No lead-value estimates are included. For campaign grouping and exception review beyond this table, use campaign analytics.

3. Calculate the ratios from the same rows

Add these Excel formulas in G2 through K2 and fill down through row 4. The labels identify the destination cells; enter only the expression beginning with =.

G2 (click-through rate): =IF(B2=0,"N/A",C2/B2)
H2 (average cost per click): =IF(C2=0,"N/A",D2/C2)
I2 (purchase conversion rate): =IF(C2=0,"N/A",E2/C2)
J2 (cost per purchase): =IF(E2=0,"N/A",D2/E2)
K2 (return on ad spend): =IF(D2=0,"N/A",F2/D2)

Microsoft documents IF as returning different results depending on a condition. Here it makes a zero denominator visible instead of presenting an undefined rate as zero. Format rates as percentages, dollar measures to two decimals, and ROAS as a multiple.

Campaign Click-through rate Average CPC (USD) Purchase rate Cost per purchase (USD) ROAS
Brand search 4.00% 2.00 2.00% 100.00 3.00×
Category search 2.00% 5.00 2.00% 250.00 2.80×
Returning visitors 5.00% 2.00 5.00% 40.00 5.00×
Total 3.53% 2.50 2.50% 100.00 3.20×

For the total, divide summed numerators by summed denominators. Total cost per purchase is 15,000 / 150 = $100.00, and total ROAS is 48,000 / 15,000 = 3.20×. In K5 use:

=IF(SUM(D2:D4)=0,"N/A",SUM(F2:F4)/SUM(D2:D4))

Do not average campaign ROAS: (3.00 + 2.80 + 5.00) / 3 = 3.60× overstates the total by giving the smallest campaign equal weight. Marketing ROI versus ROAS explains the separate contribution calculation.

4. Reconcile, then interpret

The spend check is 8,000 + 5,000 + 2,000 = $15,000 against the same filtered advertising export. The purchase check is 80 + 20 + 50 = 150 credited orders. The revenue check is 24,000 + 14,000 + 10,000 = $48,000 against the sales records assigned to those orders. Keep uncredited sales outside the attributed total and disclose them separately.

If a later $2,000 refund belongs to Returning visitors, its credited revenue becomes $8,000 and its ROAS becomes 8,000 / 2,000 = 4.00×. The total becomes $46,000 and 46,000 / 15,000 = 3.07×, rounded. Spend and clicks did not change; the refund changed the result.

The campaign comparisons identify questions for the paid media manager. Category search has a higher cost per purchase, but its economics also depend on margin and customer value. Returning visitors has the highest measured ROAS, but the export cannot show how many would have purchased anyway. Attribution rules assign conversion credit, as Google's attribution documentation explains; this spreadsheet does not estimate causal lift.

For the combined organic and paid review, use SEO and PPC analytics. Covirage is not affiliated with Google or Microsoft.

Where it goes wrong

  • Incomplete observation windows. Recent campaigns have had less time to produce purchases.
  • Different conversion actions. A form submission should not count as a completed order.
  • Duplicated credit. Several campaigns claiming a whole order can overstate revenue.
  • Gross sales beside net sales. Discounts and refunds need the same treatment across campaigns.
  • ROAS treated as profit. Product and service costs still need to be deducted.

Check your campaign exports in Covirage

Bring an advertising export and sales file, or a Google Sheet with the agreed campaign assignments and conversion definitions. Covirage maps the columns, its tools compute and check the campaign comparisons, and the external AI model explains the results with every figure traced to its rows. Create a free Covirage account and bring a sample of your own data; creating the account takes about a minute.

See revenue driver analysis for the supporting business review.

Questions people ask

What should a PPC analytics report include?

Include the reporting period, campaign identifiers, spend, impressions, clicks, the named conversion action, and attributed revenue. Show the attribution rule and observation date. Calculate campaign ratios from those columns and retain a separate reconciliation to advertising costs and credited sales.

Is ROAS the same as profit?

No. Return on ad spend divides attributed revenue by advertising spend. It excludes product costs, fulfillment, agency fees, and other expenses unless explicitly included in a separate calculation. A campaign can produce substantial attributed revenue while leaving little contribution after those costs.

Why do advertising and sales reports disagree?

They can use different dates, conversion windows, attribution rules, currencies, or refund treatments. Advertising reports may include assigned values for leads rather than recorded revenue. Identify those differences and unmatched transactions before treating the gap as missing sales.

Does PPC analytics prove advertising caused a sale?

A comparison of exported spending and credited sales establishes results under the chosen attribution rule. It does not establish what would have happened without advertising. Incremental impact requires an appropriate experiment or another justified causal measurement design.