Measurement
How to Tell Which Channel Brings Customers, Not Just Leads
By JCUpdated 8 min read
Spanish title: title: "Cómo saber qué canal te trae clientes y no solo leads" Spanish CTA: cta: "Si cada plataforma dice que ella trajo a tus clientes, agenda 30 minutos y revisamos de dónde vienen de verdad."
Para saber qué canal te trae clientes, save the origin of every lead in your CRM from the first minute, and count sales by channel there, not in the ad platforms. Then compare three sources: what each platform says, what GA4 says, and what your CRM says. When numbers do not match, the sale recorded in your CRM wins, and the difference gets reported.
It seems obvious, but in most businesses I review, the “source” field is empty in half the records. With that, any conclusion about channels is just an opinion.
Why does each platform say it brought the customer?
Because each one uses its own rules and only sees its part of the path.
| Source | What it counts | How it assigns credit | What it does not see |
|---|---|---|---|
| Meta Ads | Conversions after a click and, depending on your setup, also the person who saw the ad without clicking | Its own attribution windows | What happens in your CRM, unless you send it |
| Google Ads | Conversions you set up in Google Ads | Its own attribution model | What happens after the form, unless you send it |
| GA4 | Visits and events on your site | Based on data or last click; it excludes direct visits unless the whole path is direct | People who rejected cookies, people who messaged you on WhatsApp without going to your site, and what happened after |
| Your CRM | Leads, opportunities, and sales | Based on the source saved in the record | Anything not captured when you created the record |
If you add up the conversions each platform reports, it almost always is more than your real sales. Two platforms can both take credit for the same customer, because both touched them.
One useful detail: in GA4, the lookback window for key events like the lead is 90 days, and you can lower it to 60 or 30 (verified October 17, 2026). If someone saw your ad four months ago and writes you today, GA4 will no longer credit that ad.
What do I need to know which channel brings customers?
Five pieces, in this order:
- UTM tags on every link you control. Ads, LinkedIn posts, emails, the link in your bio, the directories where you show up. Without UTMs, a lot of traffic falls into “direct” or “referral.”
- A form that saves those tags. Hidden fields that capture
utm_source,utm_medium,utm_campaign, and click IDs (gclid,fbclid) from the landing URL and send them to your CRM along with the lead. - A required “source” field in the CRM, using a fixed list of options. Free text does not work: in a month you will have “Facebook,” “FB,” “face,” and “networks” as four different channels.
- A question for anything that does not go through your website. In WhatsApp and calls, your salesperson asks “How did you find us?” and records it. If you use different WhatsApp links by channel, and each one has a different default message, you will know where the conversation came from even if it never used the form.
- Dates in every stage. When the lead came in, when it became an opportunity, and when they bought. Without dates, you cannot measure how long each channel takes to convert.
If you use HubSpot, you already have part of the work done: the property Original traffic source categorizes each contact into values like organic search, paid search, paid social media, AI referrals, or offline sources, and the Last traffic source saves the most recent one. Still, double-check that WhatsApp leads and call leads do not all end up as “offline sources.”
How do I name UTMs so GA4 classifies them correctly?
GA4 assigns each visit to a channel using rules. For a paid campaign to land in the right channel, the utm_medium has to match what GA4 expects for paid channels: values like cpc, ppc, retargeting, or things that start with paid.
| Where the link goes | utm_source | utm_medium | utm_campaign |
|---|---|---|---|
| Ad on Meta | facebook or instagram | paid_social | service-month, for example crm-oct26 |
| Ad on LinkedIn | paid_social | service-month | |
| Organic LinkedIn post | social | topic of the post | |
| Email newsletter | newsletter | issue | |
| Partner directory | directory name | referral | profile |
| Link a salesperson sends | sales | topic |
Write the naming rules in a document and have everyone use it. About half of the attribution problems I see come from UTMs being written differently by different people.
How do you build the customer report by channel?
In the CRM, not in GA4. Take leads from a time period, group them by source channel, and follow each group until the sale. This example uses made-up numbers:
| Channel | Spend | Leads | Opportunities | Sales | Cost per sale | Conversions the platform reports |
|---|---|---|---|---|---|---|
| Google Ads | $30,000 | 40 | 10 | 3 | $10,000 | 46 |
| Meta Ads | $30,000 | 120 | 6 | 1 | $30,000 | 131 |
| SEO and content | — | 15 | 6 | 2 | — | — |
| Referrals | — | 8 | 6 | 3 | — | — |
| Organic LinkedIn | — | 5 | 3 | 1 | — | — |
If you look only at leads, Meta wins by a lot. If you look at sales, Google Ads costs about one-third per customer. And referrals, which no platform shows, convert the best.
Two rules to keep the report fair:
- Group by the month the lead entered, not by the month of the sale. That way you compare groups with the same time to close.
- Wait at least one sales cycle before judging a channel. If your customers take 60 days to sign, the September report should be read in November.
What do I do when the platform and the CRM do not match?
Report both numbers and the difference. Never choose the one that looks better. Then look for the cause:
| What you see | Likely cause | What to check |
|---|---|---|
| The platform reports more conversions than leads in the CRM | It counts WhatsApp or phone clicks that did not turn into a conversation, or counts the same conversion twice | What action is marked as a conversion and how it is counted |
| Leads from ads show up as “direct” in the CRM | UTMs get lost during a redirect, or the form does not save them | Test by loading the site with a link that includes UTMs, then check the CRM record |
| Meta reports sales that no one recorded | It counts people who saw the ad without clicking | Your campaign attribution settings |
| Many WhatsApp leads with no source | Nobody asks how they found you | That the question is in the script and the CRM field is required |
| The CRM shows fewer sales than finance | Stages that nobody updates | That closing a sale in the CRM is part of your billing process |
Once you know the cause, you fix it or you document it. What is not okay is to present the platform number as if they were your sales.
First contact or last contact?
Both, in separate columns. First contact tells you which channel introduced the customer. Last contact tells you which channel pushed the decision. In B2B services they are often different: someone finds you from an article and then months later comes back through a search ad with your name.
If you look only at last contact, you will cut the channel that brings in new customers. If you look only at first contact, you will underestimate the ads that close. To see the full path, GA4 has the Conversion Paths report under Advertising.
Send sales back to your ads
Once the CRM knows which leads bought, that data also helps Google Ads and Meta Ads. If you send which leads became opportunities or sales, they optimize toward people who buy, not cheap forms. The step-by-step for Google and Meta is in how to measure sales, not clicks, and the GA4 events for that (qualify_lead and close_convert_lead), in what to measure in GA4 and Tag Manager.
What I would do this week
- Open the last 50 leads in the CRM and count how many have a source. If it is fewer than 45, that is the first fix.
- Write the UTM naming rules and confirm the form saves them.
- Build the channel table for the last 90 days up to the sale, with the column next to it showing what each platform reports.
I set up the CRM and connect ads, your website, and sales into one report. If every platform says it brought you customers, schedule 30 minutes. If your question is where to put ad budget, also review how I work Google Ads and Meta Ads and what marketing KPIs I use to decide.