Which campaign gets credit for the deal? Lead attribution for real estate investors
A seller gets six of your mailers, sees your ad on Google, calls the number on your website and tells your rep, "I got your letter." The deal closes. Which campaign earned it? If you can't answer that the same way every time, your cost per deal by channel is a guess, and so is your marketing budget. This page is for owners and marketing leads at home-buying and wholesaling companies who want a rule they can apply consistently, and the fields and reports that make it work.
Pick one rule and apply it to every deal: credit the campaign that produced the seller's first response, meaning their first inbound call, form, text reply or real cold-call conversation. Record it automatically from the tracking number, form or list, copy it to the deal and lock it. Keep two more fields for context, the latest source that brought them back and what the seller said, and judge channels on deals that actually closed, not contracts.
Why is attribution hard for investors?
- Sellers are touched many times before they respond. Several mailers, a few cold calls, a text, maybe a postcard from someone else entirely.
- Sellers don't remember. Someone who gets letters from ten investors often can't tell you whose letter they're holding.
- Channels overlap. Mail drives people to Google, Google sends them to your site, and your site has its own number.
- Deals take months. A lead from January can close in August, after three other campaigns have touched it.
- Records get edited. A rep changes the lead source on a deal "to fix it", and the original answer is gone.
None of this has a perfect answer. It has a consistent one, and consistency is what lets you compare channels month to month.
What are the options?
| Approach | Credits | Good at | Weak at |
|---|---|---|---|
| First response | The campaign behind the seller's first inbound call, form, text reply or real conversation | Showing which spend starts relationships | Gives no credit to whatever brought a cold seller back later |
| Latest source | The campaign behind the most recent response before the deal | Showing what makes sellers act now | Undervalues the mail that warmed them up |
| Seller says | Whatever the seller tells the rep | Color, and catching referrals and signs | Unreliable on its own; "your letter" is a common default answer |
| Split credit | Several campaigns share each deal | Teams with heavy multi-channel spend and someone to maintain it | Complex, and hard to explain in a Monday meeting |
Salesforce can do split credit through its campaign influence features. For most teams of 10 to 50, I'd skip it. A simple rule everyone understands beats a sophisticated one nobody trusts.
The rule I'd use
Credit goes to the campaign that produced the seller's first response. Then lock it.
- A seller who calls a direct mail tracking number: that mail campaign.
- A seller who fills in a form from a PPC ad: that PPC campaign.
- A seller a cold caller actually talked to and qualified: that cold-calling list.
- A seller on a list who was mailed and called but never answered, then called in from a bandit sign: the bandit sign. Being on a list isn't a response.
Two things make this work. The source is captured by the system at the moment of response, not typed in by a rep. And once the deal exists, the original source and campaign are copied to it and locked, so nobody can "fix" them later. That's the same rule behind the deal fields in my CRM field kit.
How do you capture the source automatically?
| Channel | How the source gets captured |
|---|---|
| Direct mail | A unique tracking number per campaign (or per list and market), mapped to the campaign in your CRM |
| PPC and social ads | Tagged landing page links, with the campaign passed into a hidden field on the form, plus a tracking number on the page |
| Cold calling | The list name on every imported record, and a lead created only when a caller has a real conversation |
| Texting campaigns | Replies tied to the list and campaign that sent the text |
| Bandit signs, TV, radio | A dedicated number for each |
| Referrals and repeat sellers | A required field when a rep creates a lead by hand: who referred them |
| Organic search and your website | A website tracking number and form source, separate from paid traffic |
The tracking number is the backbone. When every campaign has its own number and every number maps to a campaign, most attribution arguments go away. More on the setup in getting every lead source into Salesforce.
The fields to keep
| Field | Set by | Used for |
|---|---|---|
| Original source and campaign | The system, at first response; copied to the deal and locked | Cost per deal and ROI by channel and campaign |
| Latest source | The system, every time the seller responds again | Seeing what brings sellers back |
| Seller says | The rep, from the first conversation | Color, and spotting sources your tracking misses |
| Market | The system, from the number, form or zip code | Splitting all of the above by market |
| Re-engaged | The system, when a dead or quiet seller responds again | Counting comebacks separately |
If "seller says" disagrees with the original source a lot for one channel, look at that channel's tracking. A mail campaign that sellers keep mentioning but that never shows up as a source usually has a number that isn't mapped.
What about sellers who come back months later?
Keep the original source locked, set the latest source to whatever brought them back, and flag the record as re-engaged. Then decide how long "quiet" has to be before a comeback counts as re-engaged; six months is a reasonable place to start, but pick a number with your team and write it down.
This lets you answer two different questions without arguing: which campaigns start relationships, and which ones bring old sellers back. Follow-up and re-engagement campaigns often look like they produce nothing under a strict first-response rule. The re-engaged flag is how they get seen. If you run reactivation campaigns on purpose, the dead seller leads guide covers the campaign side.
Returning sellers also need to land with the right person. See duplicate sellers in Salesforce for how matching and routing handle that.
The reports that matter
- Cost per appointment and cost per contract by campaign, using the original source. This is the budget report.
- ROI on kept deals. Profit from deals that actually closed, plus the equity in any house you kept as a rental (after-repair value minus all-in cost), minus spend, divided by spend, by campaign. Contracts that fell apart don't count. This is the last of my Monday 5 numbers, and it's the one I'd look at before changing a budget.
- Deals by latest source, next to deals by original source, to see what brings sellers back.
- Re-engaged deals by campaign, so follow-up spend gets credit.
- Deals with no source, which should be an empty report. If it isn't, fix it before you trust anything above.
Spend has to be on the same campaigns, month by month, and checked against your books. If it isn't, the ROI numbers are wrong however good the attribution is. Why Salesforce numbers don't match covers that side.
Campaign ROI by market and source, checked against the books, is part of what I built for a two-market home-buying company in Ohio. Whatever rule you pick, it has to be applied the same way to every deal, or those numbers aren't worth reading.
Questions
What is lead attribution in real estate investing?
It's the rule for which marketing campaign gets credit for a seller lead and the deal it becomes. Without a consistent rule, cost per deal by channel and campaign ROI can't be compared month to month.
Should wholesalers use first-touch or last-touch attribution?
For most investor teams I'd use a first-response rule: credit the campaign behind the seller's first inbound call, form, text reply or real conversation, and lock it on the deal. Track the latest source separately, so campaigns that bring sellers back still show up.
Should I trust 'how did you hear about us'?
As color, not as the record. Sellers who get mail from many investors often can't say whose letter they're holding. Capture the source from tracking numbers and forms, and keep what the seller says in its own field.
How do I track direct mail ROI?
Give each mail campaign its own tracking number, map the number to the campaign in your CRM, record spend per campaign each month, and report cost per contract and profit on closed deals by campaign.
How do I attribute a seller who comes back a year later?
Keep the original source locked, set a latest source field to whatever brought them back, and flag the record as re-engaged. Report re-engaged deals separately so follow-up campaigns get credit.
What's the difference between lead source and campaign?
Lead source is the channel, like direct mail, PPC or cold calling. A campaign is a specific effort with its own spend, like a July absentee-owner mailer in one market. You need both: source for the big picture, campaign for ROI.
Should marketing ROI count contracts or closed deals?
Closed deals. Contracts that fall apart cost you marketing money and produce nothing. ROI that counts only kept deals shows which channels produce deals that actually close.
Related guides
Want to know which marketing actually pays?
Campaign ROI is the first thing the fixed-price CRM Revenue Audit (USD 1,500) checks: whether every deal carries its source, whether spend matches the books and what your kept-deal ROI really is. It's for teams already on Salesforce. On another CRM? A move to Salesforce can build this in from day one.
Book a free callSee the Revenue AuditOr just ask one question about your setup: email · WhatsApp · LinkedIn