Checklist
Does Rebuy stop sending events after Reject All on Shopify?
Store J ran Shopify with a OneTrust banner. After Reject All, Rebuy kept posting analytics events with the same visitor ID, and TikTok kept sending too.
In brief
On Store J, a Shopify store with a OneTrust banner, we clicked Reject All in two separate runs and compared both with an Accept All run. After Reject, Meta, Google, Klaviyo and Clarity went from 177 requests (Accept) to 7 and 12. Rebuy kept posting analytics events in both Reject runs, 6 and 9 events, and every event carried the same uuid and rsid it had before the click. The TikTok app pixel also kept sending, and Shopify's own events still reported every consent field as true. We ran one Accept run and two Reject runs on October 15, 2026, from a US connection.
What we ran

- Store J: Shopify, OneTrust banner with Accept All, Reject All and Cookie Settings on the first layer. Store letters are labels for this page only; the same letter on another page can be a different store.
- Chrome Guest window, recorded with
chrome://net-exportin raw-bytes mode from before the first page load. The first page request in each run had no cookies. - Before any click, OneTrust stored
C0001:1, C0002:0, C0003:0, C0004:0. Accept All set all four to 1. Reject All kept C0002, C0003 and C0004 at 0. - Accept and Reject run 1 clicked on the home page, then opened one product page and one collection page.
- Reject run 2 clicked on the home page, reloaded it, opened the product page, went home again, then opened a different collection page.
Run 2 loaded more pages, so compare which hosts appear before comparing totals.
Rebuy after Reject All
Rebuy's recommendation and widget calls fill the "You may also like" carousel. Its analytics endpoint receives events about what the visitor saw.


| Rebuy endpoint, after the click | Accept | Reject run 1 | Reject run 2 |
|---|---|---|---|
rebuyengine.com/api/v2/analytics/event/bulk (POST) | 4 requests, 6 events | 6 requests, 6 events | 9 requests, 9 events |
Recommendations and widget config (/api/v1/products/recommended, /api/v1/custom/id/…, theme and static product calls) | 16 | 9 | 20 |
cached.rebuyengine.com widget settings | 8 | 7 | 14 |
The event types matched across all three runs: one viewed product, one viewed collection, and the rest viewed widget.
Every analytics event after Reject carried these fields (names only):
uuid, the same value as the visitor's events before the click, in both Reject runs.rsid, also unchanged across the click. It equals the value of the_rsessioncookie.shopify_cart_token, the Shopify cart token.- On the product view,
shopify_product_handleandshopify_product_id.
The recommendation calls also put uuid and the cart token in their query strings.
Gorgias only loaded config and static assets; chat was not opened; behavior after a chat starts was not tested.
The rest of the page after the same click
| Host, after the click | Accept | Reject run 1 | Reject run 2 |
|---|---|---|---|
analytics.tiktok.com (of which /api/v2/shopify_pixel POSTs) | 8 (4) | 8 (4) | 11 (5) |
trkapi.impact.com | 4 | 4 | 6 |
Meta (connect.facebook.net, www.facebook.com) | 9 | 0 | 0 |
| Google Tag Manager, GA4, Google Ads, DoubleClick, Merchant Center | 49 | 0 | 0 |
| Klaviyo | 88 | 4 (klaviyo.js only) | 8 (klaviyo.js only) |
| Microsoft Clarity | 31 | 3 (tag 2, /collect 1) | 4 (tag 3, /collect 1) |
The TikTok app pixel sent the same events after Reject that it sent after Accept: Pageview and ViewContent on the product page, Pageview and collection_viewed on the collection page. Run 2 also sent a Pageview from the reloaded home page. ViewContent carried the product ID, name, price and currency. In both Reject runs, context.user.anonymous_id equaled the _ttp cookie and did not change across the click, and external_id equaled Shopify's shopify_client_id cookie.
This differs from our TikTok Shopify app opt-out capture. On that page's Store B, Shopify's consent read "no" after the opt-out and TikTok requests stopped.
The Impact requests are broken down in impact.com after Reject All.
The Searchspring and Tolstoy requests are broken down in Searchspring after Reject All.
Cookies that stayed (names only)
| Group | Names |
|---|---|
| Set before the click, still sent with requests after Reject | _rsession, _ruid, _ttp, ttcsid, ttcsid_<pixel>, shopify_client_id, _shd_y, _shopify_analytics, _shopify_marketing, _sp_id.*, _sp_ses.*, yotpo_pixel |
| Seen only after Accept | _fbp, _ga, _ga_*, _gcl_au, __kla_id, _clck, _clsk |
| New after the click in every run | ssSessionId, ssUserId, ssViewedProducts |
We saw no request that deleted a cookie after Reject.
Why this can happen
Shopify's own analytics requests report a consent state. On Store J they post to /.well-known/shopify/monorail/unstable/produce_batch on the store's domain. The first one after Reject in each run had these raw fields in storefront_customer_tracking/4.30 and web_pixels_manager_load/3.3:
- "analytics_allowed": true,
- "marketing_allowed": true,
- "preferences_allowed": true,
- "sale_of_data_allowed": true,
- "gdpr_enforced": false,
- "ccpa_enforced": false
The Cookie header on that same request held OptanonConsent with groups=C0003:0,C0001:1,C0004:0,C0002:0 and interactionCount=1, plus OptanonAlertBoxClosed. No _tracking_consent cookie appeared in any run. In run 1 the request came after the browser had loaded the product page. In run 2 it came after a full reload of the home page. Neither run sent one of these payloads between the click and the next page load, so each value was read on a fresh page. Every Shopify payload after Reject that carried these fields read true: 8 in run 1, 11 in run 2. The Accept run showed the same values.
The log does not show the OneTrust choice reaching Shopify. We did not run Shopify.customerPrivacy.currentVisitorConsent() in the console, so this rests on the request bodies. How Shopify reads that state is covered in Shopify Customer Events vs the Customer Privacy API.
What the vendors' docs say to configure
Steps are from the vendors' official documentation; we have not verified each one.
- OneTrust's Shopify app has a Consent Mapping step that maps OneTrust category IDs to Shopify's categories, and OneTrust says it then updates Shopify's Privacy API values. Its headless example maps analytics to C0002, marketing to C0004, preferences to C0003 and sale_of_data to C0004. Its documented opted-out response from
currentVisitorConsent()isnofor all four. - Shopify's app pixel guide says a third-party consent tool must sync consent to Shopify through the Customer Privacy API. Settings > Customer events lists each app pixel, and View customer privacy shows its privacy settings.
- Rebuy's developer docs say its event tracking uses Shopify's consent tracking API and that Rebuy tracks events anonymously when a customer has declined. Its help center says Rebuy sends a logged-in shopper's Shopify customer ID only when analytics and marketing tracking are allowed. Our visitor was not logged in, so we did not test the customer ID.
- TikTok's data-sharing article lists three levels for its Shopify app. Standard uses the pixel. Enhanced and Maximum add Events API and Advanced Matching, which run server-side and do not show in DevTools.
Check your own store (5 minutes)
- Open a Guest or Incognito window. Open DevTools, tick Preserve log, then load the store.
- Click Reject All. Reload the page once.
- In the console, run
Shopify.customerPrivacy.currentVisitorConsent(). In Application > Cookies, read the groups inOptanonConsent. Write both down. - Filter Network for
analytics/event/bulk. Open a request, then Payload. Comparersidwith the_rsessioncookie, and note whetheruuidmatches the events sent before the click. - Filter for
shopify_pixel. Note the event names and comparecontext.user.anonymous_idwith the_ttpcookie.
The Reject All still tracking check shows the host and request rows an after-Reject record holds. Our cookie audit tool records one fresh load before any click. For results from other stores, see the Shopify Reject All guide.
FAQ
Does Rebuy stop after Reject All on Shopify?
On Store J it did not. Rebuy posted 6 analytics events in Reject run 1 and 9 in run 2, the same event types as after Accept.
Does Rebuy keep the same visitor ID?
Yes, in both Reject runs. uuid and rsid matched the values from before the click, and rsid matched the _rsession cookie.
Are Rebuy's recommendation calls tracking?
We count only the analytics events here. The recommendation calls fill the product carousel, though they also carry uuid and the cart token.
What did Shopify's consent fields say after Reject?
analytics_allowed, marketing_allowed, preferences_allowed and sale_of_data_allowed were all true in every payload that carried them, in both Reject runs.
Limits
One store on one day: one Accept run and two Reject runs, from a US connection where OneTrust started with C0002 to C0004 off. Page paths differ between runs. We did not log in, add to cart, open chat, or call the Shopify consent API in the console. We see what left the browser. We cannot see what Rebuy, TikTok or Shopify stored on their servers. Not legal advice.
Sources
These links cover the platform and regulatory context used in this guide. Applicability still depends on the organization and jurisdiction.
- Rebuy, Rebuy.js overview (accessed 2026-10-15)
- Rebuy Help Center, How to target specific customer segments using customer tag rules (accessed 2026-10-15)
- Shopify, Customer Privacy API (accessed 2026-10-15)
- Shopify Help Center, App pixels (accessed 2026-10-15)
- OneTrust, Cookie Consent Integration with Shopify (accessed 2026-10-15)
- TikTok For Business, About Data Sharing on TikTok App on Shopify (accessed 2026-10-15)
Save a US-baseline technical record
After a DIY check, run a free US-baseline audit: one browser visit outside California, with cookies, requests, and screenshots stored as evidence. That visit does not run EU reject/accept or California GPC. EU, California, and Global 2 audits can be purchased from Billing after sign-in.