Skip to content
All posts
Work

3 min read

How to audit a conversion column you do not trust

My account reported 288 conversions. I checked every one by hand; 188 were worthless. Here is the process, and what I would do differently.

Xuân Nguyễn

In short

  • A conversion is whatever you told the platform to count. Mine counted form fills, not buyers.
  • A hand audit of 288 recorded conversions found 188 junk. The real cost per lead was about three times the reported one.
  • Agree what a qualified lead is with the client before launch, not after the third weekly report.

The campaign looked fine. A wholesale client, a Google Ads budget of 100 million VND, and a conversion column that kept going up. My weekly report had a number in it that went in the right direction, and for about three weeks I believed that number.

Then the client asked how many of those leads had actually placed an order. I did not know. That is the moment this post is about.

A conversion is whatever you told the platform to count

This sounds obvious written down. It did not feel obvious at the time. I had set up the tracking in GTM and GA4 to fire on form submission, and Google Ads was dutifully optimising toward more form submissions. It had no way of knowing that a wholesale business does not want form submissions. It wants buyers who can place a bulk order.

What I actually did

I exported every conversion the account had recorded and put them in a sheet, one row each, 288 rows. Then I added four columns and went down the list.

  1. 1.Is this a real, reachable contact? Wrong numbers, test entries and blank fields came out first.
  2. 2.Is it a duplicate? Same phone or email within the period counted once.
  3. 3.Is this buyer wholesale or retail? Judged from what they asked for, and confirmed with the sales team where I was unsure.
  4. 4.Which campaign and search term brought them in? This is the column that made the audit useful rather than just depressing.

It took most of two days. By the end, 188 of 288 rows were marked out: 65% of what the account was reporting as success. 100 were genuine wholesale leads.

188 of 288 recorded conversions were junk

Each dot is one recorded conversion.

188 retail enquiries, wrong numbers or duplicates100 real wholesale leads
Source: hand audit, one row per conversion.

The part that mattered was column four

Knowing that 65% of the leads were junk tells you the cost per lead was roughly three times what the report claimed. Useful, but it does not tell you what to do next.

The real cost per lead was about 3× the reported one

Cost per lead in VND, from about 100M VND of spend. Higher is worse.

  • Reported (spend ÷ 288 recorded)≈ 347k VND
  • Real (spend ÷ 100 qualified)1M VND
Source: account spend, recorded conversions and the hand audit above.
ColumnQuestionWhat it caught
1Real, reachable contact?Wrong numbers, test entries, blanks
2Duplicate?Same phone or email twice
3Wholesale or retail?Retail enquiries
4Campaign and search term?Where the junk came from
SELECT campaign, search_term, COUNT(*) AS junk
FROM audit
WHERE status = 'junk'
GROUP BY campaign, search_term
ORDER BY junk DESC;
audit.sql

Tip

Start the audit from the search-term column: junk clusters by query long before it shows up in cost.

What I would do differently

Two things. First, I would define what counts as a qualified lead with the client before launching, not after the third weekly report.

Second, I would not do it by hand twice. By month two I should have built a scoring sheet instead of repeating the work.

If you are reporting on a conversion column you have never opened up, open it. It is uncomfortable and it is usually the most valuable two days you will spend on the account.

Written by

Xuân Nguyễn

Performance marketer, moving into Marketing Executive. Open to full-time roles in Ho Chi Minh City.

Newsletter

New posts by email: notes from live accounts and from learning analytics in public.

About one email a month. Unsubscribe anytime.