Quick Answer: Model lead source, source detail, and campaign attribution as separate but linked dimensions: a canonical acquisition source on the lead/contact record, a granular source-detail field for the specific touchpoint, and a normalized campaign attribution layer that can store first-touch, last-touch, and multi-touch credits. In practice, this means every inbound record should resolve to a controlled source taxonomy, preserve the original acquisition event, and connect to campaign objects through immutable event logs so reporting stays consistent across marketing, sales, and revops.
A robust CRM data architecture should distinguish between where a lead came from, how that lead was acquired, and which campaigns influenced conversion. The lead source is the highest-level channel classification, such as Organic Search, Paid Search, Referral, Partner, Event, or Outbound; source detail captures the specific mechanism or subchannel, such as a Google Ads campaign, a LinkedIn Lead Gen Form, a webinar registration, or a referral partner name; campaign attribution then links those acquisition events to one or more marketing campaigns using a governed model that can support first-touch, last-touch, and weighted multi-touch logic. The best practice is to store these values in normalized fields and event tables, preserve the original values at creation time for auditability, and prevent downstream overwrites so reporting remains accurate across lifecycle stages and attribution windows.