Most shoppers don’t buy on their first visit. They see an ad, come back through search, open an email and buy days later. Attribution is how you decide which of those steps gets credit for the sale.
Shopify already gives you more than a single last click. The difference with Analyzify is the detail you get for each order: every recorded session with its source, medium, campaign, click IDs and timestamp, and the same orders viewed through six attribution models.

Key Takeaways:
- Shopify’s marketing reports offer five attribution models, with Last non-direct click as the default. The order page shows a summary of the customer’s visits.
- Analyzify records each order’s journey session by session and lets you switch between six models: First Touch, Last Touch, Last Non-Direct (default), Linear, U-Shaped and Any Click.
- The models don’t change your sales. They change which channel gets the credit, so each one answers a different question.
- Any Click credits every channel in full, so its channel totals add up to more than your real orders.
- A recorded journey shows the sessions Analyzify could capture. It can’t show ads someone saw without clicking, visits on another device or visits that were blocked.
Understanding Shopify’s Default Attribution Data
Shopify’s marketing reports give credit to marketing channels using one of five attribution models: Last non-direct click (the default), Last click, First click, Any click and Linear. On each order, the conversion summary shows where the customer’s first visit came from and how many times they visited in the last 30 days. You can open the conversion details to see the visits in between.
That’s a useful starting point. But Shopify’s view is limited by what Shopify can record. The summary can be empty or limited when cookies are blocked, for draft orders, for headless storefronts and for some sales channels. It also doesn’t show the click IDs, the campaign of each visit or the product the shopper clicked in an ad.
What a single-touch view misses

Take a typical journey. A shopper:
Sees your product in a Meta ad and clicks
Visits your store but doesn’t buy
Comes back two days later through Google search
Signs up for your email list
Returns after receiving an email campaign
Buys
If you only look at the final step, the email gets all the credit, and the Meta ad that started the journey looks like it did nothing. Over time, this pushes budget towards bottom-of-funnel channels such as branded search and email, and away from the campaigns that bring new customers in.
Seeing the whole recorded journey, and comparing models side by side, helps you avoid that mistake.
How to See Advanced Attribution Data in Shopify
Analyzify’sPurchase Attribution reportanswers questions a single-touch view can’t:
Which channel first brought this customer to the store?
Which campaigns did they interact with before buying?
Which channels tend to start journeys, and which tend to close them?
When you turn the report on (or set up server-side tracking), Analyzify records each visit’s traffic source, UTM parameters, click IDs and cart details, and links them to the order. Journey data is stored in Analyzify. You can also choose to show it in Shopify order notes.
The Orders Table

The Orders table puts Analyzify’s attribution next to Shopify’s for each order:
Order and date:click the order number to open its journey.
Customer type:new or returning.
Order value.
First Touch (Analyzify):the first channel that brought the customer to your store, shown as source / medium (for example, google / cpc).
Last Non-Direct Touch (Analyzify):the last marketing channel before the purchase, ignoring direct visits.
First Touch (Shopify)andLast Touch (Shopify):Shopify’s own attribution, for comparison.
When the two disagree, that’s expected. They’re recorded differently.
Order Journey View

Click an order to open its journey: a timeline of the recorded sessions that led to the purchase. For each session you see:
Source and medium (for example, Source: google / Medium: cpc)
Campaign name
Referrer URL
Timestamp
Clicked product ID, when your Google Ads campaigns pass it
The clicked product ID is useful when a shopper clicks one product in a Google Shopping ad, comes back later and buys something else. You can see which product brought them in, not only what they bought. This needs a Google Ads configuration, which Analyzify support can help you set up.
You can also open a journey from Shopify: on the order page, clickMore actionsand chooseAnalyzify Order Details. Shopify only allows this for orders from the last two months. Older orders are still available in the Analyzify dashboard.
What a recorded journey can and can’t tell you
A journey contains the sessions Analyzify was able to record in the shopper’s browser. It isn’t a complete picture of everything that influenced the sale.
It can show:
Visits that reached your store with UTM parameters, a click ID or a referrer
The order of those visits and when they happened
Direct visits, such as a typed URL or a bookmark
It can’t show:
Ads someone saw but didn’t click.Views and impressions never reach your store.
Other devices.If someone clicks an ad on their phone and buys on their laptop, the two browsers aren’t connected, so the phone visit may be missing.
Blocked or declined tracking.Safari and Firefox tracking protection, ad blockers and declined cookie consent can remove some or all of the data.
Untagged links.A link without UTM parameters only shows the referrer.
Offline influence.Word of mouth, podcasts and in-store visits don’t appear.
Orders from before you turned the report on.Only orders created after you enabled it (or server-side tracking) have journey data.
For a returning customer, the journey covers the visits since their previous purchase in that browser, not their whole history with your store.
So read a journey as “what we observed”, not “everything that happened”. This is also why apost-purchase surveyis a useful second source (see below).
Analyzing Attribution by Campaign

The Campaigns table adds up attribution across orders, so you can compare campaigns and channels. For each campaign you see:
Total orders
First Touch revenue and Last Touch revenue
New customers and returning customers
Total revenue
Average order value
Click a campaign to see every order that included it, with the full journey for each.
A useful pattern to look for:
High First Touch revenue, low Last Touch revenue:the campaign is good at starting journeys. Cutting it may hurt sales later, even if it rarely closes them.
Low First Touch revenue, high Last Touch revenue:the campaign is good at closing. It often depends on other channels bringing people in first.
Campaign and channel attribution is part of the Plus plan. Order-level attribution (the Orders table and journeys) is available on every plan.
The six attribution models

| Model | How credit is given | Best for |
|---|---|---|
| First Touch | 100% to the first recorded touch | Finding the channels that bring new people in |
| Last Touch | 100% to the final touch before purchase, including direct visits | Seeing where shoppers came from right before buying |
| Last Non-Direct (default) | 100% to the last marketing touch before purchase, ignoring direct visits | Seeing which marketing touch closed the sale |
| Linear | Equal credit to every touch | A balanced view of all channels involved |
| U-Shaped | 40% to the first touch, 40% to the last touch, 20% shared by the touches in between | Valuing what started and what closed the journey without ignoring the middle |
| Any Click | 100% to every channel in the journey | Seeing every channel involved (totals can’t be added up) |
The right model depends on the question you’re asking.
Comparing the same campaign across First Click and Last Click often reveals something useful: if a campaign looks strong in First Click but weak in Last Click, it’s bringing customers in but not closing them, which is valuable information about where to focus your optimization.
One order, six models: a worked example
Here is one order, #1042, worth $120, from a new customer. Analyzify recorded three touches:
Day 1:a Meta ad (facebook / cpc)
Day 3:a Google search (google / organic)
Day 6:a Klaviyo email (klaviyo / email). The customer bought in this session.
This is how each model credits the $120:
| Model | Meta ad | Google search | Klaviyo email | Total credited |
|---|---|---|---|---|
| First Touch | $120 | $0 | $0 | $120 |
| Last Touch | $0 | $0 | $120 | $120 |
| Last Non-Direct (default) | $0 | $0 | $120 | $120 |
| Linear | $40 | $40 | $40 | $120 |
| U-Shaped | $48 | $24 | $48 | $120 |
| Any Click | $120 | $120 | $120 | $360 |
The order and its value never change. Only the credit moves. First Touch says the Meta ad found this customer. Last Non-Direct says the email closed the sale. Linear and U-Shaped say all three played a part, in different proportions.
Last Non-Direct vs. Last Touch
In the example above, Last Touch and Last Non-Direct give the same answer because the final touch was an email. They split when the last visit is direct.
Say the same shopper gets the email on day 6 but doesn’t buy. On day 7 they type your store’s URL and buy:
Last Touchgives the $120 to the direct visit.
Last Non-Directskips the direct visit and gives the $120 to the email, the last marketing touch.
Direct visits usually mean the shopper already knew where to go, and something earlier sent them there. That’s why Last Non-Direct is Analyzify’s default, and why Shopify uses it as its default too. Use Last Touch when you want to see how many purchases start from a direct visit.
Why Any Click totals can’t be added up
Any Click gives every channel in the journey full credit. In the example, the Meta ad, Google search and email each get 1 order and $120. Add the channels together and you get 3 orders and $360, but you only sold 1 order worth $120.
That’s by design. Any Click answers “which channels were involved in this order?”, not “how many sales did each channel drive?”. Use it to see reach and overlap, and use one of the other five models when you need totals that add up to your real sales.
Survey answers and recorded journeys
A post-purchase survey asks the customer directly, for example “How did you hear about us?”. Recorded journeys show which clicks and visits reached your store. They answer different questions, and neither one proves which channel caused the sale.
For example, a customer’s journey shows a Google search and a Klaviyo email, but in the survey they answer “A friend recommended you”. Both are true. The friend sent them to Google, which the journey can’t see.
With Analyzify Purchase Surveys (a separate app that shows a survey on your Thank You page), you can target all, new or returning customers, and compare answers with first-touch and last-touch attribution in your reports. See thePurchase Surveys guidefor setup. Surveys are part of the Plus plan.
Join 3,000+ Shopify merchants who send enriched data to 10+ marketing platformsView Full Customer Journey with Advanced Attribution
Get multi-touch attribution data to see the full customer journey for every order.Why Better Attribution Data Matters
Stop cutting campaigns that are working.Top-of-funnel campaigns often look weak under last-click views. First Touch and U-Shaped show the journeys they start.
Understand how channels work together.Journeys show common paths, such as a paid social ad followed by search and then email.
Make budget decisions with more context.The new vs. returning split shows which campaigns bring new customers and which mostly bring back existing ones.
Find what drives high-value orders.Average order value by campaign shows which campaigns bring larger baskets.
Conclusion
Shopify tells you where customers came from and offers several attribution models. Analyzify adds the order-by-order detail: each recorded session with its campaign, click IDs and clicked product, and six models applied to the same orders. Compare models instead of picking one forever. Read every journey as the part of the path that could be observed.
For setup steps and settings, see thePurchase Attribution help article.
Frequently Asked Questions
Attribution is how credit for a sale is given to the marketing channels a customer interacted with. Shopify's marketing reports use Last non-direct click by default and also offer Last click, First click, Any click and Linear.
Last-click attribution gives 100% of the credit to the final touch before the purchase. It's simple, but it ignores everything that happened earlier in the journey.
GA4 uses data-driven attribution by default, while Shopify's reports default to Last non-direct click. They also record sessions differently and use different time windows, so the numbers rarely match exactly.
Yes. Analyzify records UTM parameters and click IDs, including gclid for Google Ads and fbclid for Meta. It can also record the clicked product ID from Google Shopping ads when your campaigns are set up to pass it.
Last Touch includes direct visits, so a shopper who types your URL and buys is credited to direct. Last Non-Direct skips direct visits and credits the last marketing touch before them.
Any Click gives every channel in a journey full credit. An order with three channels is counted once for each channel, so the channel totals are higher than your real order count and revenue.
No. It shows the sessions Analyzify could record in the shopper's browser. Ad views without a click, visits on other devices, blocked tracking and offline influence don't appear.
Order-level attribution (the Orders table and order journeys) is available on every plan. Campaign and channel attribution, and Purchase Surveys, are part of Plus.




