Shopify's attribution models, explained
By the HonestTag team · Published October 31, 2026 · Updated November 11, 2026
Same orders, same week, a different model setting, and the credit moves.
An attribution model in Shopify is the rule that decides which channel gets credit for an order. Shopify offers five: last non-direct click, last click, first click, any click and linear. On the Attribution page (Growth > Attribution in your Shopify admin), Shopify says: "By default, the view uses the Last non-direct click model. The attribution model changes how sales are credited to your channels and campaigns" (Shopify Help Center). Switching models does not change a single order. It changes where the credit goes: all of it to one channel, split across the visits, or in full to every channel the customer clicked.
The five models, in Shopify's words
| Model | Who gets the credit (Shopify's rule) |
|---|---|
| Last non-direct click (the default) | "Gives 100% of attribution credit to the last channel that the customer interacts with before making a purchase, excluding direct visits." |
| Last click | "Gives 100% of attribution credit to the last channel that the customer interacts with, including direct visits." |
| First click | "Gives 100% of attribution credit to the first channel that the customer interacts with, including direct visits." |
| Any click | "Gives 100% of attribution credit to each channel that the customers clicked, recognizing all interactions that contributed to a conversion." |
| Linear | "Gives equal attribution credit to each click in the customer's journey that contributed to a sale, including direct visits." |
Source: Shopify Help Center. Two details in that table catch merchants out. Under the default, "If a customer's journey contains only direct traffic, then their order is attributed as direct, as there's no non-direct source to attribute to." And any click "allocates more credit than orders you've received," which is why Shopify says it is "best used to analyze a single marketing channel."
One order, five answers
A worked example, with made-up numbers. A customer clicks your Meta ad on Monday, clicks a Google ad on Thursday, and on Saturday types your store's address into the browser and buys a $120 order. That is three touches: Meta, Google and a direct visit.
| Model | Where the $120 goes |
|---|---|
| Last non-direct click | Google, $120. The Saturday visit is direct, so it is skipped. |
| Last click | Direct, $120. The visit nearest the purchase wins, direct or not. |
| First click | Meta, $120. |
| Linear | $40 each to Meta, Google and direct. |
| Any click | Meta and Google each show the full $120, so the channels together claim more than the one $120 order. |
Now scale it up. Say 100 orders in a month follow that same path. Under the default, Google shows 100 orders and Meta shows none. Switch to first click and Meta shows 100 and Google none. Nothing about the ads, the spend or the orders changed. Only the rule did.
Why "sales attributed to marketing" is smaller than your sales
The sales attributed to marketing figure on the Growth page has its model fixed. Shopify says sales attributed to marketing "are attributed by using the Last non-direct click attribution model, so direct traffic isn't included" (Shopify Help Center). An order from a customer who only ever arrived direct stays out of it, so the number is expected to be lower than your total store sales. Since October 18, 2026, visits referred by your own store are listed as direct as well, as why Shopify lists your own store as the referrer explains.
Shopify also notes that "Traffic that comes to your store with utm_campaign parameters in the URL is attributed to marketing." On the Attribution page, marketing traffic is the default view, and Shopify says it "includes paid, organic, and unknown traffic."
Why Shopify and your ad platforms disagree
Shopify says its results "might not match the reports in the platforms where you run your marketing, such as Meta Ads Manager or Google Ads" and gives the reason: "Each platform credits sales by using its own rules. For example, if a customer clicks both your email and your Google ad before they buy, then each platform can count the same sale." It also notes that ad spend "can take up to 24 hours to sync to Shopify, so recent ad spend in Shopify can be lower than in the ad platform" (Shopify Help Center).
In the example above, Meta and Google can each report the $120 sale as theirs, while Shopify's default puts it under Google alone. Neither number is broken. They answer different questions with different rules. Ad platform purchases vs Shopify orders walks through the other reasons the counts drift apart. Email works the same way: why Klaviyo's attributed revenue doesn't match Shopify covers opens, windows and send dates.
See which ad first found each new customer. HonestTag credits every new customer to their first recorded ad click with one fixed model, and shows what your ad platforms claim beside that count from your own orders, free for Google Ads and Meta.
What a model cannot fix
- Visits that were never recorded with their source. A model only reshuffles credit among the touches the store saw. If a visit was never recorded, or arrived without anything that named its source, every model reads the same gap, so the five can agree with each other and still all miss the same channel.
- New or returning. Credit for an order is not the same as credit for finding a customer. A loyal customer who clicks a retargeting ad before a repeat order gives that ad the sale under the last-touch models. If your question is which ads bring in new buyers, see new vs returning purchase signals.
- Whether the ad caused the sale. Every model hands out credit for orders that happened. None of them tells you whether the order would have happened without the ad.
If all you need is a channel view inside your admin, Shopify's report is already there and costs nothing. Use it with one model you have chosen and written down.
What this means
Shopify says a fair comparison of two reports uses "the same date range, attribution model, and traffic type in both." If those match and the numbers still differ, the gap is real. A channel that holds up under both first click and the default is doing more than one job; one that only shines under last click and last non-direct click is mostly closing sales something else started. Totals above your sales under any click are one order counted on every channel the customer clicked. Shopify's paths reach back up to 30 days before an order, or only as far as the customer's previous order if that was more recent, so a product people weigh for six weeks reads shorter than it is.
Switching models between reports makes a budget call read a change in the rule as a change in performance. Under last click and last non-direct click, a repeat buyer's order goes to the ad that closed it.
HonestTag holds one rule for new customers fixed, counted from your store's own orders with no model switch, so this month and last month are graded the same way.
How HonestTag helps
- One model, stated and fixed. HonestTag credits each new customer to their first recorded ad click or ad-tagged link, counted from your store's own orders. There is no model switch, so this month's numbers are graded by the same rule as last month's.
- On the free Mirror plan, The Gap shows what Google Ads and Meta claim beside the new customers whose first recorded ad click was theirs, over the last 14 days. The Mirror plan sends no purchases to any ad platform. On paid plans, The Gap adds each channel's spend and cost per first-click new customer.
- On higher plans, a read-only table shows what last-click and any-click would have said, per platform, beside first click. You see how each platform's count moves under another rule, without a dial that changes the answer. Those columns are counted forward from the first full day the comparison can count, never rebuilt backward.
- On paid plans, each order HonestTag classifies carries proof: the first recorded ad click and how the order was matched to it, so a number you doubt can be opened and checked.
Why one model and not five is on attribution models, and the rule itself is on first-click attribution.
Install HonestTag free from the Shopify App Store and see, on the Mirror plan, what Google Ads and Meta claim beside the new customers each first brought in.
Frequently asked questions
What attribution model does Shopify use by default?
Last non-direct click. Shopify gives 100% of the credit to the last channel the customer interacted with before buying, leaving out direct visits. The Attribution page starts on it, and the sales attributed to marketing figure on the Growth page always uses it.
Why do my sales attributed to marketing not add up to my total sales?
Because that figure uses last non-direct click, and Shopify says direct traffic is not included. An order whose journey held only direct visits is attributed as direct, so it stays out of the marketing figure.
Why does any click show more sales than I made?
Any click gives the full credit for an order to each channel the customer clicked. An order that followed a Meta click and a Google click counts once under each. Shopify says this model "allocates more credit than orders you've received" and is "best used to analyze a single marketing channel."
Why does Shopify not match Meta Ads Manager or Google Ads?
Each platform credits sales by its own rules, so a customer who clicked two platforms' ads can be counted as a sale by both, while Shopify credits the order by the one model you select. Recent ad spend can also take up to 24 hours to sync to Shopify.
Can I switch attribution models in HonestTag?
No. HonestTag uses one model, first click on new customers, on every plan. On higher plans, a read-only table shows what last-click and any-click would have said, so you can see the difference without changing the numbers you act on.
Sources
- Shopify Help Center: Measuring marketing performance, read October 31, 2026
- HonestTag pricing and plan limits
- HonestTag: attribution models, compared
See which ad first found each new customer
HonestTag credits every new customer to their first recorded ad click with one fixed model, and shows what your ad platforms claim beside that count from your own orders, free for Google Ads and Meta.
- Feed your ads a clean signal. On paid plans, the platforms you send to get each verified purchase, new customers marked as new once confirmed.
- Catch the sales your pixels miss. On paid plans, purchases are sent from your Shopify orders, server to server.
- Know what to scale. From the Truth plan, a weekly scale, hold or cut call when the data supports one, and on every paid plan, proof behind every attributed order.
- Start free. The free Mirror plan puts Google Ads and Meta claims beside your orders. Keep your current tracking while you look.
Related reading: attribution models, compared, first-click attribution, ad platform purchases vs Shopify orders, and click-to-order lag.