Who sees it is the section of a proactive trigger that narrows a signal down to a kind of person. Its own hint says it best: these are optional filters, and leaving everything on Anyone fires for every visitor.
There are three, and one of them does not currently mean what almost every merchant assumes.
The three filters
Filter | Choices | What it checks |
Visitor | Anyone, New, Returning | Whether this browser has loaded a page on your store before |
Cart | Any, Has items, Empty | Whether the shopper's storefront cart currently has anything in it |
Device | Any, Desktop, Mobile | Screen width, with the dividing line at 768 pixels |
They all have to be true at once
The filters combine as AND, never OR.
Set Visitor: Returning and Cart: Has items and the trigger fires only for a returning visitor who also has something in their cart. There is no way to say "returning visitors, or anyone with a cart" in one trigger. That is two triggers, and it is worth reading the article on collisions before you build the second one.
Visitor: the one to read carefully
Here is the honest description of what Returning does today, and it is not what the word suggests.
Arbyn writes a "last seen" timestamp into the visitor's browser on every full page load. The Visitor filter then asks a single question: is there a timestamp there at all? It does not check how long ago it was.
So a shopper who lands on your homepage and clicks through to a product page three seconds later already counts as Returning. By their second page view of their very first visit, they have stopped being New.
The practical effect is the opposite of what most people intend:
A trigger set to Visitor: Returning will fire for large numbers of first-time visitors, because almost everyone views more than one page.
A trigger set to Visitor: New fires only on the very first page of a very first visit, which is a far narrower audience than it sounds, and usually only your homepage or a landing page.
If what you actually want is "came back another day", do not use this filter. Use the Returning visitor signal under When it fires instead. That one takes an Hours since last visit setting, defaults to 24 hours, and genuinely enforces the gap. The two controls share a name and do quite different jobs.
We consider the current Visitor behaviour a defect rather than a design, and it is on our list to change. This article will be updated when it does. Until then, build with the description above rather than the label.
Consent can switch Visitor off entirely
The "last seen" timestamp is only written if the shopper has accepted marketing cookies. If your store runs a consent banner and a shopper declines, that timestamp is never recorded for them.
For that shopper, permanently:
Visitor: Returning never matches. The trigger never fires.
Visitor: New always matches, on every page, on every visit.
Nothing warns you about this, and the trigger simply appears to underperform. If you run a consent banner and a Returning-targeted trigger gets almost no fires, this is the first thing to check.
Cart: has items or empty
Straightforward, with one timing note.
The cart is read on a repeating check roughly every 15 seconds rather than the instant it changes. A shopper who adds something to their cart and immediately triggers a page-based signal may still read as Empty for a few seconds. In practice this only matters for very fast signals; anything measured in minutes is unaffected.
Cart: Has items is the most reliable of the three filters, because it reads a real storefront cart rather than anything stored in the browser for identity purposes. Consent settings do not affect it.
Device: desktop or mobile
The split is by screen width, at 768 pixels. Narrower counts as mobile, wider counts as desktop.
Two things make Device different from the other two filters:
It is enforced before the trigger ever reaches the browser. A visitor on a phone is not sent your desktop-only triggers at all, rather than being sent them and filtered afterwards. This is the only one of the three filters applied that early.
It cannot rescue exit intent. The Exit intent signal is switched off below 768 pixels regardless of what you set here, because a touch screen has no cursor to watch. Setting Device: Mobile on an exit-intent trigger produces a trigger that can never fire. Nothing on the page says so.
A note on tablets: they land on one side or the other purely by how wide the browser window is, and a tablet held in landscape frequently counts as desktop. If a distinction between the two genuinely matters to your campaign, test on the real device rather than assuming.
Putting the three together
Some combinations that work well, and one to avoid:
Cart abandoned, Cart: Has items, Device: Any. The classic recovery trigger. The cart filter is redundant here since the signal already requires items, but it costs nothing and makes the rule readable later.
Time on page, Device: Mobile. A good mobile helper, since exit intent is unavailable there.
High cart value, Cart: Has items. Reaching a big basket before checkout.
Avoid: Exit intent with Device: Mobile. It will never fire.
Avoid, for now: Visitor: New for a "first-time visitor" welcome. It fires only on the first page of the first visit and misses nearly everyone you meant. Until the Visitor filter is fixed, target the page instead, with Where it fires set to your homepage.
Good to know
Leaving a filter on Anyone or Any is a real setting, not an unfinished one. Most well-performing triggers use one filter, not three.
Everything in the browser is per browser and per device. The same person on a phone and a laptop is two visitors, and clearing browsing data makes someone new again.
Who sees it does not override Where it fires. A trigger still only fires on the pages your URL rule allows, and excludes always win.
None of these filters know who the customer is. They read the browser and the cart, not order history. To target by order history, use Customer type on a discount offer or a bundle, which is a different feature on a different page.
FAQ
Why is my Returning-visitor trigger firing for brand new shoppers? Because the Visitor filter counts any previous page load, with no minimum gap. Use the Returning visitor signal under When it fires if you want a real time gap.
Why does my New-visitor greeting reach so few people? Same cause, in reverse. After a shopper's first page view they are no longer New. Target the homepage under Where it fires instead.
My Returning trigger gets no fires at all. What is wrong? Check whether your consent banner is blocking marketing cookies. Without them, the last-seen timestamp is never written and Returning can never match.
Does Device let me run an exit-intent trigger on phones? No. Exit intent is off on mobile regardless of this setting. Use Inactivity instead.
Do the filters combine as AND or OR? Always AND. Every filter you set has to be true at the same moment.
