Last-touch attribution
Last-touch attribution credits a customer’s revenue to the channel of the final visit before they paid. It shows which channels close sales, which matters for retargeting, email and sales follow-up, but it hides the channels that brought people in the first place.
Formula
channel(payment) = channel(last visit before paid_at)For each payment, find the paying visitor’s last session that started before the payment time, and credit the whole payment to that session’s channel.
Worked example
| First visit | Organic search, 1 May |
|---|---|
| Last visit | Email, 12 May |
| Payment | $19 on 12 May |
- The last session before the payment came from utm_medium=email.
- The full $19 goes to Email.
Email is credited with $19; organic search gets nothing.
How ProductLense shows it
ProductLense v1 reports on first touch only. Last touch and linear attribution are planned for v1.1 as a toggle on the Sources and Revenue pages, computed by a re-resolve job over the same payment rows, so you can compare models side by side.
Last touch needs every session’s channel, not just the first, plus an identify call so sessions on different days join to one person. ProductLense already keeps sessions for 90 days of raw events, which is what the v1.1 re-resolve will read.
Last-touch attribution: questions
- What is last-touch attribution?
- Last-touch attribution credits a customer’s revenue to the channel of the final visit before they paid. It shows which channels close sales, which matters for retargeting, email and sales follow-up, but it hides the channels that brought people in the first place.
- How do you calculate last-touch attribution?
- For each payment, find the paying visitor’s last session that started before the payment time, and credit the whole payment to that session’s channel. For example, a customer who found you through search and paid after clicking an email credits the full $19 to email.
- Where does ProductLense show last-touch attribution?
- ProductLense v1 reports on first touch only. Last touch and linear attribution are planned for v1.1 as a toggle on the Sources and Revenue pages, computed by a re-resolve job over the same payment rows, so you can compare models side by side.
- What does ProductLense need to calculate last-touch attribution?
- Last touch needs every session’s channel, not just the first, plus an identify call so sessions on different days join to one person. ProductLense already keeps sessions for 90 days of raw events, which is what the v1.1 re-resolve will read.
- How is last-touch attribution different from first-touch attribution?
- Last touch rewards the channel that closed the sale, first touch the channel that opened it. Neither is true on its own. For founders deciding where to spend, first touch is usually the more useful default because closing channels like email only work on people another channel already brought.
Free up to 10k events a month. No card.
Add the script, connect Stripe or any of 14 other billing providers, and see revenue by channel the same day.