Data Stores is the engine that remembers per-visitor lists — wishlist, compare and favorites — whether or not the visitor is signed in. It’s the foundation the WooCommerce Conversion Suite builds on.
Where: a background engine — you interact with it through widgets like Wishlist and Compare, and via its AJAX add/remove actions.
How lists are stored
- Guests — the list is written to a first-party, Tiger-prefixed cookie (
tiger_store_{key}) with secure attributes, lasting 30 days, so it survives page loads without an account. - Logged-in users — the list is saved to user meta, so it persists across devices and browsers.
Each store holds a JSON array of item IDs, capped at a sensible maximum so a cookie or a user-meta row never grows without bound. The store keys are allow-listed (wishlist, compare, favorites), so a client can’t smuggle an arbitrary cookie or meta key through the AJAX store parameter.
What it powers
Data Stores backs the Wishlist and Compare experiences in the Conversion Suite. Add and remove happen over AJAX, so a shopper can save products without a page reload, and the counts stay live across the site.
Persisting across sign-in
When a guest who already built a list signs in, that list is merged into their account on login and the guest cookie is cleared, so the two never diverge afterward — nothing is dropped at login, which keeps the shopping journey intact.
Troubleshooting
A guest’s wishlist disappeared.
Guest lists live in a 30-day cookie. Clearing cookies, using a different browser, or private browsing starts a fresh, empty list. Signing in moves the list to the account, where it’s durable.
Counts don’t update when I add an item.
Add/remove runs over AJAX — a JavaScript error from another plugin can block it. Check the browser console, and make sure the Data Stores module (and the Conversion Suite) are enabled.
Why can’t I add a custom list name?
Store keys are deliberately allow-listed for security. The supported stores are wishlist, compare and favorites.