CRM marketing: from lead source to closed deal
CRM marketing works when lead source, lifecycle stage and deal value travel in one chain. Here is how we build it, from form to ad platform.
By Roozbeh Nazari · CEO
CRM marketing is often described as email automation and segmentation. In lead generation businesses we see a more basic problem first: the CRM knows who became a customer, the ad platforms know who clicked, and nothing connects the two. Marketing then optimises towards form fills, while sales judges the same campaigns by deals that nobody can trace back to a source.
This article walks through the data chain we set up for B2B and other lead-driven companies, from the source of every lead to revenue by source. It is one part of our analytics and data work, and it assumes sales and marketing already share one lead definition.
Why a CRM for marketing starts with a data chain
A CRM for marketing is useful only if each record answers three questions: where did this lead come from, what happened to it, and what was it worth. Each question belongs to a different system. The website and the ad click know the source. The sales team knows the outcome. Finance or the deal record knows the value. The chain is the set of fields and integrations that carries one identifier through all three.
Capture the lead source at the form
Source capture has two layers: campaign parameters and click identifiers.
- Campaign parameters. Google's Analytics help recommends always using utm_source, utm_medium and utm_campaign when you add parameters to a URL, and keeping a strict, case-sensitive naming convention. We store these values in hidden form fields and write them to dedicated CRM properties at the moment the lead is created.
- Click identifiers. Google Ads assigns a unique ID, the Google Click ID (GCLID), to every click that reaches your site from an ad. Saving that ID with the lead record is what later allows a signed contract to be matched to the click that started it.
- First touch and latest touch. We keep two sets of fields, so that a returning visitor who converts through a brand search does not overwrite the campaign that first introduced them.
Every entry point needs the same treatment: forms, chat widgets, call tracking and meeting schedulers. The values also have to survive navigation, so we persist them in first-party storage, in line with the site's consent setup. Forms are where conversion rate and UX work meets measurement: a shorter form is good, but not if it drops the hidden fields.
Lifecycle stages that mean something
Source data is only half of the record. The other half is a small set of lifecycle stages with written entry criteria, for example lead, marketing qualified, sales qualified, opportunity, won and lost. The exact labels matter less than three rules.
- Each stage change is time-stamped, so that speed between stages can be measured.
- Lost deals carry a reason, chosen from a short list.
- Won deals carry a value and a close date in fixed fields, not in free-text notes.
Send closed-deal outcomes back to Google Ads
Google Ads describes two related mechanisms for this. With offline conversion imports, you save the GCLID with the lead and, when that person later converts offline, for instance by signing a contract, you send the GCLID back to Google Ads together with the conversion details. The conversion is then recorded alongside your other conversion data.
Enhanced conversions for leads work from user-provided data instead. First-party data from your website lead forms, such as an email address or phone number, is normalised and hashed with SHA256 before it is sent. When you import the offline lead conversion, the hashed information is used to attribute it back to the Google Ads campaign. Google's help page for offline conversion imports recommends upgrading to this method.
One operational note for 2026: the same help page states that, starting June 15, 2026, offline conversion imports and enhanced conversions for leads uploads are migrated to the Data Manager API and blocked in the Google Ads API. If your CRM integration or middleware was built before that date, check which API it uses.
In our practice we import both a qualified-lead stage and the won deal as separate conversion actions: the first gives bidding an early signal, the second carries the real value.
Close the loop in Google Analytics
Ad platforms only see their own clicks. To compare organic search, referrals, email and paid channels in one place, the outcome also has to reach Google Analytics. The Measurement Protocol exists for this: it allows events to be sent directly to Google Analytics servers through HTTP requests, to record server-to-server and offline interactions.
Google is explicit about the limits. The protocol is meant to augment automatic collection through gtag, Tag Manager or Firebase, not to replace it, and tagging has to be in place to use it. In practice this means the website still collects the session and the form submission, and the CRM later sends a stage-change event that refers to the same user. For that to work, the form has to store the Analytics client identifier with the lead, just as it stores the GCLID.
Report by source to revenue
With the chain in place, the report we build has one row per source and campaign and a short list of columns: leads, qualified leads, opportunities, won deals, revenue and cost. From those columns come the ratios that matter, such as cost per qualified lead, win rate by source and revenue per lead.
A few cautions apply.
- Sales cycles differ. Compare cohorts by the month the lead was created, not by the month the deal closed.
- Unknown is a source too. Track the share of leads without a source and treat a rising share as a tracking defect.
- Matching is never complete. Some deals will not be matched to a click, so platform figures and CRM figures will differ; the CRM remains the reference for revenue.
Where to start
Begin with an audit of ten recent won deals and try to answer the three questions for each: source, path and value. The fields you cannot fill show which link is broken. Fix capture first, then stages, then the feedback to ad platforms, and only then the dashboard. No setup can promise more deals, but it does show which spend produces them. Our services page explains how we work.