Why doesn't Shopify have a wishlist feature built in?

Shopify has no built-in wishlist feature, so save-for-later has to be built from customer metafields, guest storage, or a dedicated app. Here's how each option actually behaves.

wishlistcustomer accountsmetafieldssave for later

What's going on

A merchant on Reddit put it plainly: they want an Amazon-like wishlist, a heart or save button on product pages that lets shoppers build a list of items to come back to later, the way most major retail sites work. It sounds like it should be a basic Shopify feature. It isn't.

Out of the box, Shopify's product and theme objects don't include any concept of a saved-for-later list, a heart icon, or a wishlist page, and there's no admin setting to turn one on. Everything you see on live Shopify stores, from heart icons on product cards to a My Wishlist link in the account menu to shareable list links, is either custom-built by a developer or added through a third-party app.

That gap creates two real decisions merchants have to make before building or buying anything: should the wishlist work for anonymous, not-signed-in visitors, who make up most store traffic, and if a wishlist is tied to an account, how private is it, shareable by link or strictly personal. Getting these wrong is a common reason merchants end up redoing their wishlist setup after launch.

Why it happens

Shopify's core data model is built around products, variants, carts, and orders. It deliberately leaves customer-preference data like wishlists, saved searches, or favorites to be layered on top through metafields or apps rather than baking in one opinionated feature every store may not want.

The guest-versus-account split makes this harder than it looks: a wishlist that only works after sign-in loses most casual browsers, but a wishlist that lives only in the browser disappears the moment someone clears cookies or switches devices. A real implementation has to handle both states and reconcile them at login, which is more engineering than a single button suggests.

4 ways to fix it

1

Use customer metafields for a logged-in wishlist, not a tags hack

If you or a developer are building this yourselves, don't store wishlist items as customer tags or order notes — it doesn't scale and it pollutes segmentation and reporting. Instead, go to Settings, Custom data, Customers in the admin and create a metafield definition (a list of product references works well), then have your theme or app read and write to it while the shopper is signed in. Because the data lives on the customer record, it survives browser changes, device changes, and cache clears, which is the most common complaint in every wishlist-disappeared thread.

2

Let guests wishlist too, using local storage, then merge on login

Most shoppers browsing on mobile or arriving from ads aren't logged in, and forcing an account just to save one item defeats the purpose of the feature. Store guest picks client-side in local storage or a cookie, show them in the same wishlist UI, and prompt shoppers to sign in to save the list permanently when they try to check out or leave. The part merchants get burned on: a guest's saved items are usually tracked under some temporary, anonymous identifier, and if your app or theme code doesn't explicitly reconcile that identifier with the customer's account at login, the guest's picks just vanish instead of merging in. Confirm with your developer or app vendor that this merge step is handled before you launch.

3

Install a dedicated wishlist app rather than hand-rolling one

Shopify has no native wishlist object or button, so this is entirely third-party territory via the Shopify App Store. A number of apps, some free and some paid, already handle the guest-versus-account split, cross-device sync, price-drop or back-in-stock alerts, and a shareable wishlist page, which is a meaningful amount of surface area to build and maintain yourself. Before installing one, check that it supports your theme and, if you use Shopify's newer customer account experience, that the app is compatible with it rather than only the older account system.

4

Decide your privacy and sharing stance up front

Amazon-style wishlists are often shareable by link or visible to other people by default, so decide deliberately whether yours should be strictly private, shareable via a unique link, or gated behind explicit opt-in before anything is shown to anyone else. Wishlist data tied to a signed-in customer counts as personal data under most privacy laws, so if you export it or sync it into email or marketing tools, make sure that use is covered in your privacy policy and consent flow rather than added as an afterthought.

Bottom line

Shopify doesn't ship a wishlist feature or object, so this always comes down to a build-or-buy decision: a developer can wire up guest local storage plus customer metafields for a lean, fully custom result, or you can install one of the many dedicated wishlist apps on the App Store to get guest-and-account persistence, sharing, and back-in-stock alerts out of the box. If you want consistent behavior across guest and signed-in states without piecing it together yourself, a purpose-built wishlist app, including BesPoP's own one-time-fee wishlist app, is the route most merchants end up taking.

Still Stuck?

Browse the rest of the problem library, run a free storefront scan to catch issues like this automatically, or email us and we'll work out a custom solution for it.