How to see your Google Ads cost per buyer

5 min read

Short answer

Cost per buyer is a campaign's spend divided by the people it brought who paid. MIRA FIVE imports your Google Ads spend per campaign and day, joins it to visits by utm_campaign or gclid, and shows cost per buyer beside ROAS for every campaign.

You pay Google every day, and Google tells you what each conversion cost. What you want to know is what each paying customer cost, and which campaign found them. That number is cost per buyer, and MIRA FIVE shows it for every Google Ads campaign, next to ROAS.

What is cost per buyer?

Cost per buyer is a campaign’s spend divided by the buyers it brought. A buyer is a person who bought in the period, counted once however many orders they placed.

In the sample shop, Acme Shop, Google Ads cost €312.40 over the last 30 days and brought 41 buyers: €7.62 per buyer. Those buyers spent €2,870, a return of 9.2 times the spend.

How does it differ from cost per conversion in Google Ads?

It counts people who paid instead of conversions Google recorded. Google Ads calculates cost per conversion by dividing total cost by its Conversions column. That column can include modeled conversions, a conversion action set to count “Every” counts each purchase, and a conversion is reported on the date of the ad click.

Cost per conversion (Google Ads) Cost per buyer (MIRA FIVE)
Divides spend by The conversions Google counts The people who bought
A customer with two orders Two conversions with “Every” counting One buyer
Where the purchase comes from Google’s conversion tracking, partly modeled Your own purchase event, such as a paid order your server sends
Which period it lands in The period of the ad click The period of the purchase

Neither number is wrong; they answer different questions. MIRA FIVE imports the conversions Google reports too, and each campaign’s details show them beside cost per visit and cost per buyer.

How does MIRA FIVE join spend to visits?

Connect Google Ads under Data → Sources, and spend, clicks, impressions and conversions arrive per campaign and day. MIRA FIVE matches each paid visit to its campaign in one of two ways:

  • by utm_campaign, when the link names the campaign’s name or ID;
  • by the gclid that Google’s auto-tagging adds to every ad click.

The visit then carries the campaign to everything the person does later, up to the purchase. Buyers and revenue go to the last outside visit before the purchase, and one switch credits the first visit instead. Here is the sample shop’s Google Ads screen for the last 30 days:

Campaign Spend Clicks Buyers Revenue ROAS Cost per buyer
Shopping · merino €151.60 588 19 €1,310 8.6× €7.98
Brand search €84.20 402 17 €1,240 14.7× €4.95
Performance Max €76.60 214 5 €320 4.2× €15.32
Google Ads €312.40 1,204 41 €2,870 9.2× €7.62

Brand search brings buyers cheapest, at €4.95 each. Performance Max costs €15.32 per buyer, twice the average, and is the campaign to question first.

How do ROAS and cost per buyer work together?

ROAS, return on ad spend, divides the revenue a campaign brought by its spend. MIRA FIVE only divides amounts in the same currency. Cost per buyer tells you what a customer costs; ROAS tells you whether their orders pay that back. Read them together: a campaign with a low cost per buyer and a low ROAS brings many small orders, one with a high cost per buyer and a high ROAS brings few large ones.

Both rest on the revenue your purchase goal reads from your events. Margin, refunds and tax stay with your shop or billing system.

What is the diagnosis for untagged campaigns for?

It finds the visits and the spend that did not meet. A paid visit that MIRA FIVE cannot match to a campaign takes its buyers with it, so that campaign’s cost per buyer looks higher than it is. The Campaign tracking panel shows the share of paid visits matched to a campaign and lists what is missing:

  • visits without a campaign parameter, with the line to paste into the final URL suffix in Google Ads, under Admin › Account settings › Tracking: utm_campaign={campaignid};
  • visits whose parameter names no known campaign; tagging with the campaign ID survives renames;
  • campaigns with spend but no visits.

Fix those, and the buyers land on the campaign that paid for them.

How to do it in MIRA FIVE

  1. Add the MIRA FIVE script, or the SDK for Next.js, Nuxt, Laravel, React or Astro.
  2. Send the paid order with a revenue property, from your server where you can, and create a purchase goal for it. The guide to setting up a purchase goal walks through it.
  3. Connect Google Ads under Data → Sources.
  4. Open Acquisition › Ads and read Buyers, ROAS and cost per buyer for each campaign.
  5. Check the Campaign tracking panel, and add the suggested parameter if it lists untagged visits.
  6. Switch between last touch and first touch to see which campaigns find buyers and which bring them back.
  7. Click a buyer count to open the people behind it, each with every visit before the purchase.

What this leaves out

  • Buyers come from visitors who consented, because only their visits join up with a later purchase. The dashboard shows that share, so you know how much of the picture cost per buyer covers.
  • Spend arrives from Google Ads. Meta Ads is next; clicks from other ad platforms are recognised by their click ids, without spend.
  • A buyer is credited to one campaign per view. First touch vs. last touch explains which view answers which question.

Questions and answers

Why does cost per buyer differ from cost per conversion in Google Ads?
Google Ads divides cost by the conversions it counts, which can include modeled ones and several per click. Cost per buyer divides by the people who paid, counted once, from your own purchase events.
Do my Google Ads links need UTM tags?
Auto-tagging's gclid already joins a click to its campaign. If the diagnosis lists paid visits without a campaign parameter, add utm_campaign={campaignid} to the final URL suffix in your Google Ads account settings.
Can I see Meta Ads spend too?
Meta Ads is next. Today the spend import covers Google Ads, and visits from Meta ads are already recognised by their fbclid.
Is cost per buyer on the free plan?
Yes. Every plan includes every feature, and Free costs €0 for 25,000 events a month. Connect Google Ads under Data → Sources.

Read next

Which channel brings the customers who pay?

Rank marketing channels by the buyers they bring instead of visits, with first or last touch, revenue per channel, campaigns and Google Ads cost per buyer.

How to set up a purchase goal

Set up conversion tracking with a purchase goal, revenue read from your events, one total per currency, and the time from first visit to paid plan.

First touch vs. last touch attribution

First touch credits the channel that found a customer, last touch the one that brought them back. When to use which, with one worked example.

All guides

See which channel brings buyers

Free for 25,000 events a month. No card needed.