Klaviyo is a unified customer platform that gives your online brand direct ownership of your consumer data and interactions, empowering you to turn transactions with customers into productive long-term relationships—at scale. Because the Klaviyo database integrates seamlessly with your tech stack, you can get the full story on every customer that visits, and then—from the same platform—use those insights to automate personalized email and SMS communications that make people feel seen. With Klaviyo, it’s easy to talk to every customer like you know them, and grow your business—on your own terms.
Talk to customers like you know them. Because you do.
Sync all your store data with a single click
Our seamless one-click ecommerce integration allows you to sync all your historical and real-time data, so you can stay on top of every single interaction people have with your brand.
Automations help you make money while you sleep
Dozens of built-in automations are fully customizable, like welcome emails, happy birthday, or abandon cart. Each can have any mix of emails and texts. So while you’re dreaming up your next big idea, customers are automatically getting timely, actionable info.
Smarter targeting. Deeper personalization. Bigger payoff.
Drive more sales with powerful personalization. Whether you’re sending a drip campaign, a transactional email, or a special holiday campaign, ultra-relevant content can help you boost engagement—and earn more revenue.
Get more answers out of your data
Data is powerful—but only if you can find it, understand it, and act on it. With Klaviyo, performance is clear. Pre-built reports answer the marketing questions that matter most. Go beyond vanity metrics and understand what’s driving sales. (Really.)
See how your performance stacks up against peers. With Klaviyo, you get relevant, real-life benchmarks based on real-time data from 90,000+ brands. See how you compare to businesses of your size and scope, and to your overall industry. You always know what to do to improve.
This plugin provides 1 block.
- Klaviyo Klaviyo's marketing consent checkbox.
Integrating Klaviyo and your WooCommerce store is a simple process:
- Install/activate Klaviyo’s plugin.
- Click on Klaviyo in your left-menu, then click Connect Account.
- Click through two screens to approve access and finish setting up your integration.
For detailed instructions on integrating Klaviyo and WooCommerce please visit our Help Center.
Contributors & Developers
“Klaviyo” is open source software. The following people have contributed to this plugin.Contributors
- Changed – Klaviyo settings link nested under Marketing tab if WooCommerce is installed.
- Deprecated – Deprecate getVersion method in favor of get_version to meet WP convention.
- Removed – Role creation and removal during install/uninstall.
- Fixed – Only include WooCommerce Checkout Block compatibility if StoreApi is supported.
- Fixed – Add
paginatearg to order query to access total order count.
- Added – Checkout block integration to support consent at checkout for email and sms.
- Changed – Update Klaviyo API orders routes to use HPOS compatible query methods.
- Changed – Added utm parameters to Create Account url on plugin settings page.
- Added –
kl_added_to_carthook which enables developers to edit the
- Added –
kl_started_checkouthook which enables developers to edit the
- Added –
kl_cart_rebuildhook which enables developers to add/remove products from the cart before it is rebuild
- Added –
kl_cart_rebuild_completehook which allows developers to easily trigger a callback on successful cart rebuild
- Added –
kl_checkout_itemhook which allows you to add additional properties to the line items that make up Started Checkout Event
- Changed – Bump WP tested up to 6.2
- Fixed – Rename function to avoid conflicts
- Changed – Replaced deprecated FILTER_SANITIZE_STRING functionality
- Added – Added
Stable tagreadme.txt management to changelogger.
- Changed – Add filter
wck_should_add_started_checkoutfor adding started checkout logic on pages.
- Security – Modified the
get_klaviyo_optionmethod to prevent script injection on the admin page.
- Changed – Updated “Tested up to” from 6.0.1 => 6.1.1
- Fixed – Undefined categories in cart rebuild.
- Fixed – Added ProductID to viewed product events for better integration with product recommenders.
- Fixed – Prevent automatic integration removal.
- Removed – Sending webhook on plugin deactivation.
- Update Removed product description from the kl_build_add_to_cart_data method to reduce the size of the payload.
- Update Started Checkout events not working with TT2 theme
- Update Use POST instead of GET when sending through Added to Cart Event.
- Update – Query only for product post_type at klaviyo/v1/products resource.
- Update – Use get_home_url() for url query param in auth kickoff request.
- Update – Assets for brand refresh.
- Fix – Undefined index warnings in cart build.
- Fix – Remove redirect after update/install.
- Add – Options endpoint supporting GET/POST requests.
- Add – Improved validation function for custom endpoints.
- Add –
is_most_recent_versionkey to the response from the /klaviyo/v1/version endpoint detailing whether plugin update is available.
- Add – Webhook service for outgoing requests to Klaviyo’s webhook endpoint.
- Add – Redirect to Klaviyo settings page after activation.
- Add – Deactivation logic removing options, webhooks and sending request to Klaviyo to keep integration state aligned.
- Add – WCK_Options class to handle deprecated options and adjusting via filter.
- Add –
disableendpoint to handle plugin data cleanup and deactivation when removed in Klaviyo.
- Update – Updated plugin settings page allowing for management of settings in Klaviyo. Maintain original for non-WooCommerce sites.
- Update – Use DIR to define KLAVIYO_PATH constant for test compatibility.
- Fix – PHP Notices on admin page when initial options are not set.
- Deprecate – Removed ‘klaviyo_popup’ and ‘admin_settings_message’ from
- Update – Support for Synching Product Variations.
- Update – Default SMS consent disclosure text
- Fixed – Over representation of cart value in Added to Cart events.
- Add – Support for Chained Products
- Deprecation – Displaying Email checkbox on checkout pages based on ListId set in Plugin settings.
This will be displayed using the Email checkbox setting on the Plugin settings page, as done for SMS checkout checkbox
- Update – Adjusted priority of kl_added_to_cart_event hook to allow for line item calculations.
- Add – Added to Cart event.
- Add – Use exchange_id for “Started Checkout” if available
- Update – Lowered priority of consent checkboxes to address conflicts with some checkout plugins
- Fix – Address console error faced while displaying deprecation notice on plugin settings page.
- Add – Class to handle Plugins screen update messages.
- Add – Collecting SMS consent at checkout.
- Update – Refactor adding checkout checkbox to allow for re-ordering in form.
- Update – Plugin settings form redesigned to be more intuitive.
- Update – Enqueue Identify script before Viewed Product script.
- Update – Moving to webhooks to collect Email and SMS consent.
- Fix – Remove unnecessary wp_reset_query call in Klaviyo analytics.
- Fix – Assign commenter email value for localization.
- Fix – Remove escaping backslashes from Started Checkout title property
- Fix – Remove escaping backslashes from Viewed Product title property
- Fix – Remove unused import.
- Fix – Cart state issue with rebuild when composite products are present
- Fix – Encode non-ascii started checkout event data
- Fix – Handle checkout without Klaviyo cookie
- Fix – Update to fix fatal error for websites not using WooCommerce plugin
- Fix – Update to add permission callback for all custom endpoints (WordPress 5.5)
- Fix – Rename undefined variable
- Tweak – Update to be more defensive around global server variables
- Fix – Identify call in checkout billing fields
- Fix – Check for checkout variable
- Fix – Resolve register_rest_route_warning
- Dev – Increase max WP version to 5.4.2
- Dev – Increase max WC version to 4.2.0
- Tweak – Small update to legacy signup form widget
- Fix – Custom order and product count method
- Fix – Security fix
- Dev – Refactor API code for unit tests
- Add new authentication for api
- Fix – Revert authentication patch
- Fix – Making sure characters are encoded correctly on signup success
- Fix – Improve authentication for custom api endpoints
- Fix – Check index is set for subscribe checkbox during checkout
- Fix – Move klaviyo.js script to highest priority in footer and add missing single quotes around src
- Fix – Deactivate old Klaviyo plugins if active
- Fix – Check if Klaviyo Settings index exists
- Fix – Pluck product categories only if array
- Add support for latest api version (v3)
- Check for existing Klaviyo plugins avoiding incompatibility
- Compatible with just WP
- Add widget for Klaviyo’s built-in signup forms
- Be able to customize CSS for forms
- Fix issue with button text display
- Remove signupform js as it’s included in klaviyo.js
- Add klaviyo.js
- Escape quotes in product titles
- Use new endpoint for checkout subscriptions
- Compatibility for PHP 7.2 and remove PHP warnings
- Add persistent cart URL for rebuilding abandoned carts
- Add support for composite product cart rebuild
- Bundles the WordPress and Woocommerce plugin together as one.
- An option to Add a checkbox at the end of the billing form that can be configured to sync with a specified Klaviyo list. The text can be configured in the settings. Currently set to off by default.
- Install the Klaviyo pop-up code by clicking a checkbox in the admin UI
- Automatically adds the viewed product snippet to product pages.
- Adds product categories which can be segmented to the started checkout metric.
- Removes the old unused code and functions.
- Updates all deprecated WC and WordPress functions/methods.
- Removes the description tag from the checkout started event.
- Captures first and last names to the started check out metric.
- Updating docs.
- Tested for support for WordPress 4.8.
- Added HTTPS support for embedded form.
- Updated logo branding.
- Updated links.
- Updated previously deprecated functions.
- Updating to allow embedding an email sign up form.
- Updating docs.
- Fixing documentation a bit and one bug fix.
- Adding in automatic tracking of users if they log in or post a comment.
- Initial version