Know where every lead came from, on the record the moment it lands.
Lead source tracking records the channel behind each lead at the moment the form is submitted, in the same row as the name and phone number. A tracking tag that stops loading cannot erase it.
What is lead source tracking?
Lead source tracking records, for every lead, which channel brought the person to your site before they filled in the form. The record is per lead, not per visit, and it sits in the same row as the name, the phone number and what they asked for. Open the list on any day and read, lead by lead, whether it was a paid click, a search result, another website, a social network, or someone who typed your address.
It answers a narrower question than attribution. Attribution is a model that shares credit across every touch a customer had. Lead source tracking records one fact at one moment: where this visit began when this form was submitted.

How does each lead get its source?
The same handler that records the lead records its source. When someone submits a form on a site we run, the form handler writes a row to a lead sheet server-side and emails your team. The row carries what the person typed and, where the site captures it, where the visit began: the first page they landed on, the address that sent them there, any campaign parameters on that first link, and whether a Google click identifier was present. A few lines of the site's own script note those facts on the first page of the visit, and they travel with the form, so they are there when the handler writes the row.
The Leads view reads that sheet, newest first. The source column was written at the same moment as the name and the phone number, by the same process.
What will the source column say?
Each lead carries a plain name, not a code. A Google click identifier on the landing link, or campaign parameters naming Google with a paid medium, label the lead a paid click. A referrer of Google, Bing, DuckDuckGo or Yahoo labels it organic search, with the engine named. Facebook or Instagram names the network. Any other site is a referral, named by its host; Yelp and Nextdoor carry their own name. No referrer, or a page on your own site, is direct: the person typed the address or used a bookmark.
Tag a link yourself, in an email or on a printed piece, and the lead carries the source, medium and campaign exactly as you wrote them. The labels above are those of one site we run; exact names vary by site.
What if the source cannot be known?
The row says unknown, and the lead still counts. On the site whose labels are shown above, if nothing about the start of the visit was captured, the label reads 'Unknown (not captured)' and the lead is still counted, still emailed, still on the list. It is not folded into direct and it is not handed to the channel spending the most that week. A guessed source is worse than a blank one: a blank is visible and a guess is not.
The same rule holds for time. The daily check that reads one site's lead sheet keeps a row whose timestamp will not parse, because a lead that cannot be dated is still a lead, and dropping it would quiet the count in exactly the way the check exists to prevent. A phone call counts only if your CRM records it. We run no call-tracking system, so a caller who never filled in a form has no row here and no invented source.

Why not rely on a tracking tag?
Tags break, and a broken tag reports zero rather than an error. On one account we manage, a change to the site's Google tag silently stopped every conversion for six weeks. Twenty-one real leads landed in the lead sheet while Google Ads reported zero. The owner read the zero, paused the campaign that carried every counted lead and cut its budget by ninety percent. Nothing on the site was broken except the measurement.
So the source lives in the row the form handler writes, not in an analytics event. On the day every tag on the site is dead, the row still lands, and it still carries whatever the site captured at the start of the visit. Google Ads conversions and GA4 key events are read into the Command Center, and they are useful, but they are the measurement layer on top of the ledger, not the ledger. On one site we run, a daily check at 7:20am Eastern compares the two and raises it the day they disagree, including the day paid leads are landing while the ads view reports none.

How is this different from GA4 or Google Ads?
GA4 reports sessions and key events by source, hours behind, and only for visitors its tag saw. Google Ads reports the conversions its own pixel counted, also hours behind. Both are aggregates, and both depend on a script loading in the visitor's browser. Lead source tracking is one record per lead, written when the form arrives, independent of either. The three should agree, and the useful moment is when they do not. It is also the plainest case of a record you hold yourself: a sheet your team can open and read, not a platform's report.

How one site we run decides each source.
| Label | How it is decided | What it is read from |
|---|---|---|
| Paid click | A Google click identifier on the landing link, or campaign parameters naming Google with a paid medium | The first link of the visit |
| Tagged campaign | Source, medium and campaign parameters present on the link | The first link of the visit, as you wrote it |
| Organic search | The referrer is Google, Bing, DuckDuckGo or Yahoo | The referring address |
| Social | The referrer is Facebook or Instagram | The referring address |
| Referral | Any other site, named by host; Yelp and Nextdoor by name | The referring address |
| Direct | No referrer, or a page on your own site, with the landing page captured | The referring address and the landing page |
| Unknown | Nothing about the start of the visit was captured | Left as unknown on purpose |
The form handler writes the lead and its source in one row the moment a submission lands, and emails your team at the same time.
Questions, answered.
Is lead source tracking the same as marketing attribution?
No. Attribution shares credit across every touch a customer had. Lead source tracking records one fact per lead: where the visit began when the form was submitted. Attribution can be built on that record; it does not replace it.
What does the source say for a Google Ads click?
Google Ads (paid click). The label comes from the Google click identifier on the landing link, or from campaign parameters naming Google with a paid medium.
What if the visitor blocked storage or the tracking tag?
The lead still lands. The form handler writes the row, not the tag. If nothing about the start of the visit could be captured, the source says Unknown (not captured) rather than guessing.
Does it track phone calls?
No. A phone lead counts only if your CRM records it. There is no call-tracking system.
Why not just use the source report in GA4?
Because GA4 only sees visitors its tag saw, and it reports hours behind. It is useful, and it is read into the Command Center. A lead row written at submission does not depend on the tag, so it keeps counting when the tag does not.
What can I record against a lead afterwards?
An outcome: contacted, quoted, won or lost, set from the Leads view and written to the lead record. The outcome is a separate field and does not rewrite the source.
See it running
before you decide.
The demo is the real product on a fictional company, with no form in front of it. Pricing is three published tiers. Setup on your own accounts takes two to four weeks.
Open the live demo See pricing
New here? See what the Command Center is. Prefer to write? Send us the one thing you want to know.
- Refreshed when you open itLive data on page load, never a monthly PDF
- Counted from your own formsLeads recorded server-side, compared daily with Ads and GA4
- Four answer engines, measuredChatGPT, Gemini, Claude and Grok, with a published denominator
- A review-first queue on every sendEvery draft waits in a review-first queue and every send is logged.