WooCommerce wishlist: how saving turns into buying
Saving instead of buying — and what that means
Not every visitor who lands on a product page is ready to buy. They like the product, the price is right, but the timing isn't. Maybe the monthly budget is spent, maybe they're waiting for payday, maybe it's a gift and they need the right occasion first. Without a wishlist, what happens? They leave. And in most cases, they don't come back.
This isn't a classic conversion failure — no abandoned cart, no dropped checkout. It's silent saving-for-later that shows up nowhere in your analytics. But the intent was there. Capturing that intent, rather than letting it walk out the door, is a meaningful advantage: the visitor has already signalled purchase interest, and when they return, conversion probability is substantially higher than on a first visit.
How wishlists generate return visits
A wishlist gives shoppers a reason to come back. They took an active step — they saved a product. That's not passive scrolling; it's a decision. Decisions create commitment. The wishlist becomes their personal starting point on the next visit: they don't land on the homepage, they land on their list. The path to purchase is shorter, the mental effort lower.
Then there's the gift factor. Wishlists have always been closely linked to gift registries in e-commerce. When a shopper can share their list via a link — without requiring the recipient to have an account — another channel opens up: the gift-buyer lands in the shop, sees the products, picks one. That's organic reach no ad budget can replicate.
Don't lock out guests
One of the most common mistakes in wishlist implementation: making the list available only to logged-in users. It sounds technically clean, but it excludes the majority of visitors. Most WooCommerce shops have far more guest visitors than logged-in customers — especially among first-time visitors.
The right approach is hybrid persistence: for guests, the wishlist is stored in a browser cookie. For logged-in customers, it's stored in their account profile. If a guest later signs in, both lists are merged. No friction, no forced login wall before saving — and the wishlist serves its actual purpose.
Placement: where the heart button works
For a wishlist to be used, the entry point needs to be visible and contextual. Two locations matter most:
On the product page: Right next to the add-to-cart button. The visitor is weighing whether to buy — this is exactly where you offer them a third option: save for later. Put the button too far away or too subtle, and it simply won't be seen.
On the shop page (product grid): On hover over a product tile, or as a small icon in the corner. This is browsing mode: the visitor is scanning the catalogue, not looking to buy anything specific, but wanting to flag a few items. One click directly from the grid — without opening the product page — significantly lowers the threshold.
Both locations together give you maximum coverage of user behaviour: the focused shopper on the detail page, the browser on the shop page.
Never force a login
Some shops show a login prompt when the wishlist button is clicked. This is counterproductive. The visitor was about to take a simple, effortless action — and instead gets a form to fill in. The result: they abandon. The wishlist goes unused.
The clean approach: always allow saving without login. Guests get their list stored in a cookie. Only at checkout — where an account is genuinely useful anyway — can you gently suggest creating one and import the guest wishlist into the profile. No wall, but a clear incentive.
Wishlist + price alerts + back-in-stock: the full picture
A wishlist is most powerful when combined with complementary features. Two combinations are particularly effective:
Price alerts: When the price of a saved product drops, the shopper gets a notification. This converts stored intent into a concrete purchase trigger — especially useful for price-sensitive shoppers or products with seasonal price variation.
Back-in-stock notifications: If a saved product is out of stock, the shopper can sign up to be notified when it's available again. Someone who already has the product on their wishlist is closer to buying than a first-time visitor — conversion rates on these notifications are correspondingly strong.
This combination isn't overhead. It's a consistent extension of purchase intent beyond the moment of first contact.
What makes a wishlist plugin worth using
There are many solutions on the market, but the best-known one (YITH Wishlist) has 400,000 installations — and a rating of 78 out of 100. For a plugin with that level of adoption, that's a warning sign. The most common complaints: speed, unnecessary complexity, a bloated Pro tier full of features almost nobody needs.
What actually matters in a wishlist plugin:
- Guest persistence via cookie: Without this, you exclude the majority of your visitors.
- AJAX interaction: No page reload when adding or removing products. The click must feel instant.
- Clean, customisable markup: The wishlist page and button must integrate into the shop's design without stacking CSS overrides.
- No bloat: A wishlist plugin has one job. Save and display products. Everything beyond that belongs in separate, optional modules.
- Shortcode for the list page: Flexible placement, embeddable in any WordPress page.
The Wunschliste plugin takes exactly this approach: a heart button on shop and product pages, guest persistence via cookie, a [wishlist] page with a direct add-to-cart button — lean, fast, no external overhead. You can try it directly in the browser via a live WooCommerce demo, with no installation required.
Conclusion
A wishlist isn't an advanced feature for mature shops — it's a foundation for any shop where visitors browse before they buy. That's nearly every catalogue: fashion, home goods, electronics, toys, gifts. The implementation is technically straightforward; the impact on return visits and conversions is measurable. What it requires is a plugin that solves the problem cleanly — without adding to page load and without stopping visitors with a login wall.