A single free-text field labeled source often becomes a mixture of Google, referral, website, repeat customer and staff guesses. Those values describe different things. A useful CRM design separates acquisition evidence, customer-reported context and sales progress so reports remain understandable when records are updated or merged.
View full-size graphic ↗Define the fields and their purposes before adding them
Scroll the table horizontally to compare all columns.
| Field | Purpose | Update rule |
|---|---|---|
| Original acquisition source | Preserve known initial source for the opportunity | Do not overwrite with routine follow-up |
| Source detail or campaign | Store supported campaign/referrer detail | Retain provenance and mapping |
| Latest relevant interaction | Describe a later observed touch | Update without erasing original source |
| Customer-reported source | Record what the customer says | Keep separate from technical attribution |
| Source confidence or method | Explain how the value was obtained | Controlled values and audit trail |
| Correction reason | Explain an intentional change | Require owner and timestamp |
This is a proposed schema, not a claim that every CRM uses these exact fields. Adapt names to the product while preserving the meanings. Avoid creating fields the team cannot maintain or use in a decision.
Document whether the source belongs to the person, opportunity or job. A repeat customer can begin a new moving opportunity through a different path; one permanent contact-level source may not answer the question you intend.
Separate source scope from sales status
Google Analytics distinguishes user-, session- and event-scoped acquisition dimensions. Those scopes answer different questions. Copying a session source into a field described as the customer's first-ever source can create a misleading report. [1]
A qualified, booked or lost label describes progress, not acquisition origin. HubSpot's documentation distinguishes lifecycle stages and Lead Status, reinforcing the need to keep state fields separate from source fields. [2]
Keep customer-reported context intact
A customer may say a neighbor recommended the company after previously seeing an ad. That answer is useful without proving that the technical attribution is wrong. Store the statement in an appropriate controlled field or note rather than forcing one account to replace the other.
Unknown is a legitimate value. Do not turn missing evidence into direct, organic or referral merely to eliminate blanks from a report.
Use controlled values with a documented mapping
Scroll the table horizontally to compare all columns.
| Incoming evidence | Normalized category | Preserve separately |
|---|---|---|
| Recognized paid search parameters | Paid search | Original campaign/source values |
| Verified partner introduction | Partner referral | Partner identity where appropriate |
| Customer states prior relationship | Customer-reported repeat relationship | Statement and recording method |
| No reliable acquisition evidence | Unknown | Any available context without guessing |
The categories should fit the company's actual channels. Keep the list short enough for staff to use consistently and detailed enough for decisions. Use a separate detail field instead of adding a new top-level category for every campaign.
Maintain the original incoming value when it is appropriate to retain it. Normalization rules can change; preserving provenance helps the team explain a historical classification without rewriting the past silently.
Capture evidence at the right handoff
Test forms, call records and manual entries separately. Determine which fields each path can reliably populate and which require a staff question. A manually entered phone inquiry should not inherit a random website session's campaign.
Validate allowed values and handle absent fields explicitly. Prevent a connector from overwriting a known source with an empty value during a later update. Record exceptions for review rather than inventing a fallback that looks authoritative.
Review URLs, page titles and free-text form handling for accidental personal information before enabling new source capture. [3]
Use the integration acceptance guide to verify each intake path through to the CRM.
Control corrections, merges and agency changes
Allow authorized corrections with a reason, editor and timestamp. A mistaken source should be fixable, but routine sales updates should not rewrite acquisition history. Decide how merged records retain original evidence and which opportunity survives.
Test repeat customers and duplicate inquiries. The same person may legitimately have two jobs, while two form submissions may represent one job. Source rules need the opportunity identity, not only an email match.
Export the dictionary and mapping rules with the records when systems or agencies change. Data without definitions can be difficult to interpret even when every row transfers successfully.
Audit a sample before trusting channel totals
Select representative records from each intake path and compare the displayed source with the supporting evidence. Include unknown values, corrections and merged records. Review whether the same rule produces consistent results across staff and connectors.
Track missing-source rates and mapping errors as data-quality measures. Improving those measures is useful, but it should not become an excuse to fill uncertainty with guesses. Preserve an honest unknown category.
A lead-tracking review can connect this dictionary with reliable reporting. The agency-report questions help verify how the resulting fields are interpreted.
Common questions
Should customer-reported source replace tracked source?
Keep them separate when they describe different evidence. A recommendation and a later paid click can both be relevant without one invalidating the other.
Is unknown an acceptable CRM source?
Yes. It is more accurate than assigning a channel without evidence. Use it to identify capture gaps and improve the process.
Your next step
Define source meaning, scope and ownership before building the report. Preserve provenance, separate sales status and keep uncertainty visible instead of filling it with convenient labels.
Sources & editorial notes
Platform claims cite the documents below. Operating frameworks and labeled examples are MoverFuel editorial analysis, not client results or industry benchmarks.
- Google Analytics: scopes of traffic-source dimensionsGoogle Analytics acquisition dimensions have distinct user, session and event scopes. Reviewed .
- HubSpot: contact and company lifecycle stagesCRM lifecycle and status fields describe progression rather than acquisition source. Reviewed .
- Google Analytics: avoid personally identifiable informationGoogle Analytics policies prohibit personally identifiable information in ordinary analytics collection, including risky URLs and free-text paths. Reviewed .



