Works with your stack
Cookie consent for Klaviyo on WooCommerce
checkout talks to klaviyo too
The Klaviyo plugin loads Klaviyo’s script on every page once your key is set, with no setting to wait for consent. On the WooCommerce checkout, scripts served by your own site set a Klaviyo cookie and send the visitor’s details to Klaviyo as they are typed. Holding Klaviyo’s own script is not enough.
By Klaviyo · klaviyo.com · WordPress.org
Is this your product? Tell us if anything here is out of date. Write to us
Klaviyo
WordPress plugin
- Tested version
- 3.9.0
- How
- Tested automatically around each Cookie Rocks version
- Last test
- 7 November 2026
- Latest version
- 3.9.0 tested
- Active installs
- 100,000+
What Klaviyo adds to your visitors’ browser
No trackers In our test of Klaviyo 3.9.0 on 7 November 2026, the plugin itself added no tracker and no cookie. What you place in your pages with it, such as a video or a map, still counts.
What matters for consent with Klaviyo
The main script
Klaviyo’s script is marketing and should wait for the visitor’s choice. Cookie Rocks holds known trackers until consent. The small Klaviyo scripts for product views only queue events until that main script runs.
The checkout is separate
At checkout, files from your site write Klaviyo’s ID cookie with the visitor’s name and e-mail, and send them to Klaviyo when typed, or at once for a logged-in customer. They do not need the main script, so holding it does not stop them.
Add to cart from the server
When a product goes in the cart and Klaviyo’s cookie is there, your server tells Klaviyo. Without the cookie nothing is sent, so removing the cookie when consent is withdrawn stops it.
What our tests found on Klaviyo
Set before the choice · KlaviyoKlaviyo sends checkout details to Klaviyo even when its addresses are held
On the WooCommerce checkout, scripts served by the site set __kla_id (email and name, 2 years) and send profile data when the email or name is typed, or on load for logged-in customers.
Read in its code, 16 October 2026, Klaviyo 3.8.3.
Full detail
On the WooCommerce checkout, wck-started-checkout.js (classic) and includes/blocks/build/events.js (block checkout), both served by the site, set the __kla_id cookie (base64 of email, first and last name, 2 years) and POST profile and Started Checkout data to a.klaviyo.com/client/profiles/ and client/events/ without klaviyo.js: on load for a logged-in customer, otherwise when the email or name is typed. Holding Klaviyo's own addresses does not stop them.
Set before the choice · KlaviyoKlaviyo loads klaviyo.js on every page with no wait for consent
It loads on every public page except checkout, with no consent setting or WP Consent API code. Its other scripts only queue calls, so they need not be held.
Read in its code, 16 October 2026, Klaviyo 3.8.3.
Full detail
Once the public API key is set, the Klaviyo plugin prints static.klaviyo.com/onsite/js/<key>/klaviyo.js on every public page except checkout, rewritten as <script async src='...'> with single quotes and no id. There is no setting to wait for consent and no WP Consent API code. kl-identify-browser.js and wck-viewed-product.js only queue calls in window.klaviyo, sent when klaviyo.js loads, so they need not be held.
Sent from your server · KlaviyoKlaviyo's server sends Added to Cart events while __kla_id exists
Without the cookie nothing is sent, so removing __kla_id on withdrawal stops it.
Read in its code, 16 October 2026, Klaviyo 3.8.3.
Full detail
When a product is added to the cart and the __kla_id cookie is present, the Klaviyo plugin's server sends an Added to Cart event to a.klaviyo.com/client/events/ (wp_remote_post). Without the cookie nothing is sent, so removing __kla_id on withdrawal stops it.
How we test it
Around each version, with its latest release
Around each Cookie Rocks version, a fresh WordPress installs its latest version from WordPress.org next to Cookie Rocks and runs the same checks. A new version joins the next run on its own.
- Klaviyo 3.9.0, tested on 7 November 2026.
- The banner shows, the trackers of the test page wait for consent and load after it, and Cookie Rocks raises no PHP error.
- Settings of the test: Default settings after activation.
- Last run: Klaviyo 3.9.0 on 7 November 2026, with WordPress 7.1.3.
Newsletters and popups
Other plugins of the same kind.
Questions
What should I check?
Your checkout. Look at what reaches Klaviyo before the visitor has chosen, and ask whether started checkout tracking is worth that.
What happens after the 30-day trial?
The banner, your visitors’ choices and your proofs of consent keep working. Without a key, most settings lock, updates and support stop. Take a key at any time and everything opens again.
For Klaviyo users
Your emails, sent after a real yes.
the checkout too
Every feature of the complete plugin for 30 days, no card.
- During the trial: everything, including the full settings and the scans
- After 30 days without a key: the banner, your visitors’ choices and your proofs of consent keep working
- What waits for a key: most settings, updates and support

Get your trial key
Your e-mail and your site. Your key arrives as soon as you confirm your e-mail.