Beta
WooCommerce 11.0 is coming soon
This release is now available for testing. Review the highlights below, test the beta, and share feedback before the final release.
Highlights
- Performance improvements targeting larger stores
- Customer account and email improvements
- Better reporting and analytics
- Beta available now
- Final release: Tuesday, July 28
- Feedback requested
WooCommerce 11.0 brings performance work for larger stores, more flexible customer and email flows, reporting improvements, and a focused set of compatibility changes for extension developers. Here is an early look at the changes taking shape before the release.
Performance improvements for larger stores
PRs: #65663, #65420, #65957, #65860, #65558, #65325
Performance is a clear theme in WooCommerce 11.0, with 28 PRs tagged for performance, caching, or scalability. Large stores will benefit from an HPOS Orders-screen query optimization for multi-status lists and empty-search counts. The Store API now limits and de-duplicates product collection-data count requests, with an extension filter for sites that need to adjust the new HTTP 400 limit. Product administration gains persistent status counters, while POS catalog generation moves to chunked processing with controls for chunk size and timeouts. That improves the handling of large catalogs for stores and integrations that depend on feed timing or atomicity.
Starting in WooCommerce 11.0, product object caching will be enabled by default for new stores. Variable products load roughly 9–12% faster on product pages, and bundle products process 6–12% faster during checkout. Stores can opt-in and test this experiment, and it will eventually be turned on for existing stores in a future release.
Email and customer-account updates
Email and account workflows become more flexible in 11.0. The new woocommerce_email_preview_show_shipping_details filter lets extensions hide dummy shipping details when they are not relevant to an email preview. WooCommerce also adds an email-verification path through which logged-in customers can confirm ownership of an email address and connect past guest orders to their account . A follow-up moves the experience to a login-gated confirmation link that aligns more closely with WordPress account patterns, replacing the OTP-specific endpoints, forms, and metadata from the first implementation.
Reporting and analytics improvements
Historical Analytics imports now surface failed jobs and offer a retry path in WooCommerce administration. Integrations can also use GET /wc-analytics/imports/status and POST /wc-analytics/imports/retry-failed to understand and recover failed imports.
For reporting clients, the v3 sales report gains a refunds value in each date bucket, making per-period net-sales calculations more accurate. The change applies to v3 only; existing v1 and v2 consumers are unchanged. Analytics events now require a stable visitor ID to avoid inflated sessions from transient or bot clients.
Experimental features continue to develop
Checkout Recovery beta
Checkout Recovery continues to develop as a beta feature in 11.0. Merchants can manually send a recovery email from an eligible order, with eligible statuses extensible through woocommerce_checkout_recovery_eligible_statuses. It adds a one-click unsubscribe path, a personalization tag for the unsubscribe URL, privacy handling, and updated behavior across email-trigger and manual-send paths.
Block email editor update
PR: #65502
The block email editor gains Vimeo, TikTok, and Dailymotion embeds. Videos render as clickable thumbnails with play buttons rather than plain text links.
Developer advisories and compatibility work
Product Editor beta retirement
WooCommerce 11.0 finishes the removal of the Product Editor beta, including the @woocommerce/product-editor package, its feature flag, editor-specific routes, and related extension points. The Product Editor retirement post covers the migration path: affected stores should return to the classic editor, while extension developers should audit their code for Product Editor packages, feature flags, blocks, slots, fills, routes, and experimental APIs.
Reminder: Products and product data remain in place. This change retires an experimental admin editing screen.
The Product Editor retirement is part of a broader cleanup of stale flags and unmaintained experimental packages. Unnecessary scaffolding code and multiple feature flags have been removed from WooCommerce. The result is a smaller set of active experimental paths in core.
Phone validation and formatting hooks
WooCommerce 11.0 adds two focused hooks for phone handling. woocommerce_validate_phone supports custom validation for local formats and non-English numerals , while woocommerce_format_phone_number lets extensions customize presentation without changing validation behavior.
The release also adds WC_Validation::is_phone_format() for a country-agnostic shape check. This gives extensions that support local phone formats a clearer separation between formatting and validation.
Other compatibility notes
- The default duration for
ReserveStock::reserve_stock_for_order()is now 60 minutes when callers omit it. Custom integrations can pass a duration explicitly when they need a store-specific hold value: #66048. @woocommerce/eslint-pluginreplaces@woocommerce/dependency-groupwithimport/order. Projects using shared WooCommerce tooling should update their plugin configuration and custom disables: #66086.- The Product Image block removes its Resolution attribute and standardizes on using responsive images. Extensions that customize product image output should account for that change: #66191.
- The queried object in the Shop page will match the
WP_Postobject of the Shop page instead of theWP_Post_Typefor products, this affects functions likeget_queried_object()orget_queried_object_id()when run on the Shop page. - Heads up: Product shipping class taxonomy will be private in WooCommerce 11.0
- Have you explored the new Settings UI for upgrading PHP-based settings to new React-based components? Read more in our Call for testing: Settings UI support for WooCommerce extensions and learn about how we’re Unifying extension settings in WooCommerce.
Test WooCommerce 11.0
Install the WooCommerce Beta Tester plugin, switch to the Beta channel, and update to 11.0.0-beta.1. Please read our Beta Testing documentation for more info.
Leave a Reply