A redirect test sends each group to a different URL. It is the right shape when you have two pages that already exist and genuinely differ — a long-form lander against a product page, a new collection against the old one, a rebuilt page against the one it replaces.
It is the wrong shape for small differences. If the two pages are nearly the same, you are paying for a navigation on every variant visit to measure something a content or template test would answer without one.
The origin is the setup
Give the control group the URL visitors actually arrive at. That single field does two jobs: it makes the control the group that stays put, and it defines where the test runs. Nothing else has to be configured.
Every other group gets a destination. Browse picks a real product, collection or page; a full URL or a path both work.
A redirect test with no origin is refused. Everywhere else in this app an empty URL rule means “every page”, which is a sensible default for a styles or content test. For a redirect it would mean every page of your store sending visitors to a variant URL — home, products, cart — and the store stops working. So the loader will not do it, and Start will not let you.
Your ad attribution survives
Query parameters are carried across the hop. A visitor arriving on ?utm_source=meta&utm_campaign=spring lands on the variant with both intact, so your analytics and your ad platform still see the campaign that brought them. This is not optional politeness — a redirect test that dropped them would silently break attribution for half your paid traffic for as long as it ran.
Once, or every time
A setting on the test rather than on a group, because it describes how the test behaves and cannot honestly differ between arms — one group redirecting once while another redirects every time would give the two different numbers of chances to convert.
- Always
- Re-applies whenever the visitor lands on the origin. Right for a campaign landing page people come back to.
- Once
- Sends them the first time and leaves them alone afterwards, so a shopper who deliberately navigates back to the origin is allowed to stay there.
Keep it on your own domain
Cross-origin destinations are allowed — sending half your traffic to another domain you own is a legitimate split test. But our cookie does not follow, so once a visitor leaves, their order cannot be attributed to the group that sent them. The test will report visitors and no revenue, which reads like a bug and is physics.
What to watch
- Paste the destination into a private window first. A URL that redirects again on Shopify’s side sends the visitor somewhere neither group was measuring. Check setup, on the Preview tab, does the same for every group and flags a loop or a 404.
- Every variant visit costs a navigation. The control does not pay it. That asymmetry is real but small, and it is why the page stays hidden across the hop rather than letting the origin paint first.
- Do not run two navigating tests on the same pages. Theme, template and redirect tests all move the visitor, and two of them on overlapping URLs cannot both act. The app refuses the combination rather than letting one silently win.
When it wins
Set the redirect up properly in Shopify — Online Store, Navigation, URL Redirects — and end the test. A real redirect is a server-side 301: faster for the shopper, understood by search engines, and not dependent on our script running.