First-Touch vs Last-Touch Attribution for SaaS
First touch credits the channel that found a customer, last touch the one that closed them. A worked SaaS example shows how far apart they land.
First-touch attribution gives 100% of a conversion's credit to the channel that brought the customer to your site the very first time; last-touch attribution gives 100% to the channel of the visit right before they converted. For SaaS, first touch is the better default for deciding where to spend acquisition effort, because last touch is dominated by direct visits from people who had already decided to buy. Use both, side by side, and the gap between them tells you which channels create demand and which ones collect it.
Key takeaways
- First touch answers “what created this customer?”; last touch answers “what did they do right before paying?”.
- In a typical SaaS journey of two to four visits, direct traffic captures most last-touch credit and almost no first-touch credit.
- Channels that look worthless under last touch — podcasts, social, comparison content — often lead under first touch.
- Linear and position-based models are useful tie-breakers, but they don't make the data more accurate; they only spread the same money differently.
- Since 2023, Google Analytics 4 only offers data-driven and last-click attribution, so comparing models usually needs another tool or a spreadsheet.
What is first-touch attribution?
First-touch attribution assigns the entire value of a conversion — a signup, a trial, a $49 payment — to the first recorded interaction a person had with you. If someone first lands on your blog from a Google search, comes back two weeks later from your newsletter, and pays after typing your URL, Google search gets all of it. The model rewards discovery: the channels that put you in front of people who did not know you existed.
Its weakness is that it ignores everything that happened afterwards. A great onboarding email sequence, a retargeting ad or a sales call that actually closed the deal get zero credit. And it is only as good as your memory of the first touch: if a visitor cleared storage, switched devices, or first arrived before you installed analytics, the “first” touch you see is really the first one you recorded.
What is last-touch attribution?
Last-touch attribution assigns the full value to the source of the session in which the conversion happened. In the same journey, “direct” gets all of it. Last touch is the default in most ad platforms and was the default in Universal Analytics (strictly, last non-direct click). It rewards closing: the final nudge before a purchase.
Its weakness, for SaaS especially, is that the last visit before paying is usually the least informative one. People who have already decided type your URL, click a bookmark, search your brand name or open your app's upgrade screen. That makes direct traffic and branded search look like your best channels, which tells you nothing about how to get more customers. Many tools patch this with “last non-direct touch”, which skips direct visits and credits the most recent identifiable source instead.
How do first touch and last touch compare on the same customers?
Abstract definitions hide how big the difference is. Here are ten real-shaped customer journeys for a small SaaS selling a $49 plan, five channels, ten paying customers, $490 in revenue.
| Customer | Journey (oldest → newest) | Paid on visit |
|---|---|---|
| 1 | Google search → Direct → Direct | 3 |
| 2 | Google search → Newsletter | 2 |
| 3 | X → Google search → Direct | 3 |
| 4 | Podcast sponsorship → Direct | 2 |
| 5 | Google search | 1 |
| 6 | X → Newsletter → Direct | 3 |
| 7 | Google search → X → Newsletter | 3 |
| 8 | Podcast sponsorship → Google search → Direct | 3 |
| 9 | Direct | 1 |
| 10 | X → Direct | 2 |
Now divide the same $490 four ways. Linear splits each payment equally across its touches; position based gives 40% to the first touch, 40% to the last and splits 20% across the middle (50/50 when there are only two touches).
| Channel | First touch | Last touch | Linear | Position based |
|---|---|---|---|---|
| Google search | 4 customers · $196 | 1 · $49 | 2.83 · $138.83 | 2.7 · $132.30 |
| X | 3 · $147 | 0 · $0 | 1.5 · $73.50 | 1.5 · $73.50 |
| Podcast sponsorship | 2 · $98 | 0 · $0 | 0.83 · $40.83 | 0.9 · $44.10 |
| Newsletter | 0 · $0 | 2 · $98 | 1.17 · $57.17 | 1.1 · $53.90 |
| Direct | 1 · $49 | 7 · $343 | 3.67 · $179.67 | 3.8 · $186.20 |
| Total | 10 · $490 | 10 · $490 | 10 · $490 | 10 · $490 |
Look at what last touch would tell you to do: double down on “direct”, which is not a channel you can spend on, and cut X and the podcast, which together introduced half of your customers. First touch tells a very different story — search found 40% of customers, X 30%, the podcast 20%. The newsletter is the mirror image: it never finds anyone (people subscribe after they already know you), but it closes two sales. Both views are true. They answer different questions.
Which attribution model should a SaaS company use?
There is no correct model, only models that fit a question. This is the mapping we use.
| Question you're asking | Model to look at | Why |
|---|---|---|
| Where should I spend more acquisition time or money? | First touch | It isolates channels that create customers who wouldn't exist otherwise |
| What makes people finally buy? | Last touch (or last non-direct) | It shows the closing step: emails, pricing page, comparison pages |
| Is a channel pulling its weight across the whole journey? | Linear or position based | It credits channels that assist without starting or finishing |
| Are short campaigns working? | Time decay | Recent touches weigh more; good for promotions with a deadline |
| Should I cut this channel? | All of them, side by side | Only cut a channel that is weak under every model |
If you are pre–product-market fit with fewer than 100 customers, keep it simple: first touch for investment decisions, last touch as a cross-check, and a “How did you hear about us?” field on signup as a third, human signal. Self-reported attribution catches what no tracker sees — a podcast someone listened to in the car, a friend's recommendation in a group chat — and it often disagrees with both models in useful ways.
How do you set up first-touch and last-touch attribution, step by step?
- 1.Decide what a conversion is. For SaaS that is usually two events: signup (or trial start) and first payment. Attribute both, because the channel that drives signups is not always the one that drives payments.
- 2.Store the first touch per visitor: first referrer, first utm_source/utm_medium/utm_campaign and first landing page, with a timestamp. Never overwrite it on later visits.
- 3.Store every session's source too, in order. That gives you last touch and every multi-touch model for free.
- 4.Tag the links you control with consistent UTMs so sources are more specific than domains — see the UTM parameters guide for a naming convention.
- 5.Connect payments to visitors with an anonymous id passed through checkout. The revenue-by-source walkthrough shows the Stripe version.
- 6.Pick a lookback window. 30 days covers most self-serve SaaS; 90 days or more for sales-led products. Touches older than the window drop out of multi-touch models.
- 7.Review monthly with all models side by side and write down the decision you made from it. The point is to change what you do, not to produce a prettier chart.
VisitTrack does steps 2, 3 and 5 for you: each payment from Stripe, Polar, Lemon Squeezy, Paddle or Razorpay is stored with the visitor's first touch and the number of days and visits it took, and the Revenue view computes first touch, last touch, linear, time decay (credit halves every seven days before the purchase) and position based from the same sessions, with a toggle to switch between them. The revenue attribution docs explain exactly what is recorded.
Why did Google Analytics remove first-click attribution?
Google announced in 2023 that first click, linear, time decay and position-based models would be removed from GA4 and Google Ads, and they were gone by the end of that year. GA4 now offers data-driven attribution (the default) and last click. Google's stated reason was that rules-based models don't reflect complex journeys and that data-driven attribution, which uses machine learning on your conversion paths, does it better.
Data-driven attribution can be good, but it has two practical problems for small SaaS. It needs volume to train on, and with a few dozen conversions a month it has little signal to work from. And it is a black box: you can't reproduce its numbers or explain to a co-founder why the podcast got 0.37 of a customer. Rules-based models are crude, but everyone at the table understands them. If you are on GA4 and want first touch, the usual workaround is the “first user source” dimension in explorations, which is first touch for user acquisition reports. Our Google Analytics comparison covers the other trade-offs.
What breaks first-touch attribution in practice?
- Lost identity. If the visitor id disappears — cleared storage, a different device, a strict privacy browser — the next visit becomes a new “first touch”. Cross-device journeys are common in B2B: read on a phone at lunch, sign up on a laptop.
- Cookieless tracking without a first-touch handoff. A daily-rotating, fully cookieless id only links visits from the same day. Fix it by having your app keep the first touch at signup and send it back on conversion; the cookieless docs show the pattern.
- Dark social. Links shared in Slack, WhatsApp or Discord usually arrive with no referrer, so the first touch is “direct” even though a person sent it. UTMs on the links you share help; nothing fixes links others share.
- Bots. Scrapers that run JavaScript create fake first touches and dilute every rate. Make sure your analytics filters them before they reach the numbers; see bot traffic in analytics.
- Installing analytics late. Customers who first visited before tracking existed will show a later first touch. That bias fades after a few months.
Is multi-touch attribution worth it for a small SaaS?
Usually not as a source of truth, but yes as a tie-breaker. With 10 customers a month, the difference between linear and position based is noise. What is not noise is a channel that is strong under first touch and absent under last touch (a demand creator) or the reverse (a closer). Those patterns are visible from the first month and change what you do: demand creators get more investment, closers get optimized (better emails, a sharper pricing page).
Where multi-touch starts to pay off is once journeys get longer than three visits and you run several paid channels at the same time. Then the question “if I cut this channel, do the others still convert?” becomes real money, and models that credit assists are the cheapest way to approximate an answer. Even then, the most reliable answer comes from turning a channel off for a few weeks and watching total conversions — a holdout test beats any model.
A rule that prevents most bad decisions
Never cut a channel because it looks weak under one model. Cut it only if it is weak under first touch, last touch and linear at once, after at least two full conversion cycles. Everything else is the model talking, not the channel.
If you want to go further, the next steps are turning the attribution table into channel decisions — covered in which marketing channel brings paying customers — and comparing channels on revenue per visitor rather than raw revenue. For the cost side, run each channel's spend through a CAC calculator using first-touch customer counts.
What is the difference between first-touch and last-touch attribution?
First-touch attribution gives all credit for a conversion to the channel of the customer's first visit, while last-touch gives all credit to the channel of the visit where they converted. First touch shows which channels create customers; last touch shows which ones close them.
Is first-touch or last-touch better for SaaS?
First touch is the better default for deciding where to invest, because SaaS customers usually return directly before paying, which makes last touch over-credit direct traffic. Use last touch as a secondary view to understand what closes the sale.
What is last non-direct click attribution?
It is a variant of last-touch attribution that skips direct visits and gives credit to the most recent visit with an identifiable source. It reduces the over-crediting of direct traffic but still ignores the channel that first introduced the customer.
Does GA4 support first-touch attribution?
Not as a conversion attribution model. Since 2023 GA4 only offers data-driven and last-click models. The “first user source/medium” dimension in GA4 reports shows the channel that first acquired a user, which works as a first-touch view for acquisition reporting.
What is position-based attribution?
Position-based (or U-shaped) attribution gives 40% of the credit to the first touch, 40% to the last touch and divides the remaining 20% across all touches in between. With exactly two touches, each gets 50%.
How long should an attribution lookback window be?
30 days covers most self-serve SaaS products with short trials. Sales-led products or annual contracts often need 90 days or more. Choose a window at least twice your median days-to-convert so slower buyers aren't cut off.
Can I do first-touch attribution without cookies?
Yes, if your app keeps the first touch itself. A cookieless tracker can report where the current visit came from; your app stores that at signup like any other form field and sends it back when the customer converts, so the original source is preserved across days.