The gap: Running as an email tool. No attribution model switched on, no campaign contribution, and source written at capture then lost the moment a lead converted.
How we built it: Attribution turned on and scoped to the revenue model rather than the default. Original source preserved through conversion, campaign membership enforced at enrollment, and reporting rebuilt on the repaired field.