The gift stack is invisible to everyone who didn't play
The block sits on your product page permanently and shows nothing to normal shoppers. It appears only for someone arriving from a completed game.
This is the part most merchants expect to be a problem and it isn’t, so it is worth stating plainly.
You place the gift-stack block on your product page once, and leave it there forever. A shopper who arrives from Google, from your email list, from a link a friend sent, or by typing your domain, sees your product page exactly as it is today. No gift panel, no empty box, no leftover heading, no gap in the layout. Nothing.
The panel appears only for a shopper who reached that page by playing the game and collecting their gifts.
Why it works that way
The block does not check the referrer, the URL, or a query string. It renders from the cart.
When a shopper completes the board, their gifts are written into their cart as attributes. The block reads those attributes and draws a card for each gift. If those attributes are not there, the block renders nothing at all: the panel and everything inside it is inside a single condition, so with no game session there is no markup, no heading and no spacing.
That is one product page serving two audiences from the same template.
What this means in practice
- No duplicate product pages. You do not need a second copy of the product page for your ad traffic, and you do not need a landing page separate from the product that actually sells.
- No conditional templates and no theme code. There is nothing to wrap in an
ifstatement. Placement is the whole configuration. - Your organic and email traffic is untouched. They cannot tell the app is installed.
- Leave it in place between campaigns. Pause a campaign for three months and the block just sits dormant. Nothing to remove, nothing to re-add when you start again.
- Safe to place in more than one spot. Product page, cart page, cart drawer. Each one stays invisible until there is a session to show.
What the shopper does see
Once they have played, the panel follows the cart rather than the page. It stays visible while they browse other products, if they close the tab and come back, and on the cart page. It is state, not a one-time banner.
Two things make it go away again:
- The cart is emptied. The attributes go with it.
- The offer expires. The panel stays visible and switches to your expired message, with the gift list dimmed, so a shopper is never left wondering where their gifts went. See Gift expiry.
The one exception: the theme editor
Inside the theme editor there is no cart and therefore no session, so a truly invisible block would be impossible to style. The editor deliberately fills it with three sample gifts labelled “Preview: shoppers see their real prizes here after playing”.
That label is your reminder that it is a mock-up. Those sample gifts exist only in the editor. They are not in your theme’s live output, and no shopper will ever see them.
The same rule covers the express-checkout replacement: while a session is live the block replaces Buy-it-now and wallet buttons with a “gifts included” button so those gifts cannot be skipped, and it never does this in the theme editor, so your Buy-it-now button does not vanish while you are editing.
How to check it yourself
Two browser windows, two minutes:
- Open your product page directly in a private window. You should see your normal page, with no gift panel.
- In a second private window, open your game URL, flip every card, and let it send you to the product page. The panel should be there with your gifts.
If step 1 shows a panel, you are still carrying a cart from an earlier play. Empty the cart or use a fresh private window. If step 2 shows nothing, work through Gifts are missing from the cart.
Related: Add the gift stack to your product page · The gift stack is not showing on the product page
Did this answer it?