WooCommerce 9.9: It’s fast, period.

WooCommerce 9.9 has been released on June 9, 2025. This post highlights what’s new in this version of WooCommerce.

See our update guide.
Download directly from WordPress.org.

Other important information:

  • 📀 This release includes database updates.
  • See more

Latest Release:

👉 WooCommerce 9.9.3

About:

  • ✅ Backwards compatible
  • Commits: 745
  • Contributors: 64

9.9 is fast, period.

This version includes big improvements to performance. We’ve measured up to 95% reductions in page load times across critical admin screens. We ran benchmarking using a store with:

  • >1.2 million orders
  • 15,000 products
  • 60,000 customers
  • HPOS enabled

We compared WooCommerce 9.7 as the baseline against 9.9 and saw improvements across every corner of the admin, from order count summaries and comment tallies to custom-field lookups and analytics widgets. Read more about how we achieved these big gains.


New block: Product filters

The new Product filters block is powered by the Interactivity API for faster filtering without page reloads.

Optimized for mobile, filters appear in a modal for a cleaner browsing experience. The block is also context-aware and works seamlessly inside Product Collection blocks, returning accurate results that don’t require reloading the page.


Selective product exports

You can now export specific products and their variations directly from the product list using product IDs. This makes bulk editing faster and more efficient, especially for high-volume stores. It removes the need for full exports when only a subset of products needs updating.

Developers can also hook into the export process to define custom product ID lists programmatically for even greater control.

Checkout the code
function my_filter_product_export_by_ids( $args ) {
    $my_product_ids_to_export = array( 10, 20, 30 ); // Define your list of product IDs
 
    // Set the 'include' argument to your specific list.
    // This tells wc_get_products to fetch only these products.
    $args['include'] = $my_product_ids_to_export;
    return $args;
}
 
add_filter( 'woocommerce_product_export_product_query_args', 'my_filter_product_export_by_ids' );

Automatic database updates

All stores as of 9.9 will now run database updates and migrations automatically in the background. This reduces friction in the update process, especially for multi-site or managed environments. Developers can still opt out using the filter: woocommerce_enable_auto_update_db.


Conditional checkout fields

This version introduces the ability to conditionally collect additional information during checkout using the Additional fields API. With support for JSON schema, you can define field visibility, required status, and validation rules directly in PHP. Validation runs on both the server and client sides, and hidden fields are neither shown to customers nor submitted, ensuring only relevant data is collected.

Field visibility can be based on dynamic conditions such as cart contents, order details, or customer information and preferences.

To learn how to implement this, see our documentation on conditional fields.


More new features and updates

Client side navigation for Product Collection

Product Collection block now handles client-side navigation. Instead of relying on a hardcoded list of incompatible blocks, the system now checks for declared support via supports.interactivity and supports.interactivity.clientNavigation.

This allows compatible third-party blocks to opt in, enabling smoother page transitions and better performance.

Email templates coming to more stores

After rolling out modernized email templates to new installations in 9.8, in 9.9, we continue the rollout to existing stores without any email customization. If your store was migrated to the new templates, you’ll receive an Inbox notification and will see a modal in WooCommerce > Home. You can revert to old templates with a single click.

Anyone can try new email templates directly in WooCommerce > Settings > Emails, without affecting your customers.


 Hide shipping rates option

WooCommerce now includes a built-in setting to hide all shipping rates when free shipping is available. Previously only possible via custom code or third-party plugins, this gives store managers a simpler, native way to manage shipping options.

New payments settings page has landed

In 9.9, we are finalizing the rollout of the new Payment Settings page by removing the feature flag. Previously optional, this experience is now standard for all stores. Additionally, expect to see a new look and feel in the WooPayments onboarding as well as offline payments screens.


First Looks

Blueprints

Try the new Blueprints in 9.9, a tool for importing and exporting store settings. It helps developers, agencies, and merchants save time by reusing and sharing configurations across stores.

Available under WooCommerce > Settings > Advanced > Blueprints, it currently supports core WooCommerce settings and works through the admin interface or WP-CLI.

COGS

This release brings more continues improvements to the COGS (Cost of Goods Sold) feature as a part of core. The feature integrates seamlessly with product management and reporting, making profit tracking easier without relying on external tools. COGS is planned for stable release in WooCommerce 10.0

Learn more about how you can use this feature as a developer here.

The Product Gallery block (Beta), has significant updates focused on better usability, performance, and mobile experience.

  • Enhanced mobile layout with thumbnails moved below the main image for a more intuitive browsing flow
  • Scrollable thumbnails for easier image navigation without paging through one by one
  • Updated navigation controls with cleaner styling, more customization options, and hidden arrows on mobile for a distraction-free experience
  • Streamlined block structure for improved styling flexibility and easier maintenance
  • Performance gains, with LCP improving from ~1.6s to ~0.7s and Lighthouse scores up significantly on both mobile and desktop

These updates lay the groundwork for a more polished gallery experience ahead of the planned stable release in WooCommerce 10.1.


Other important information

Database updates

• wc_update_990_remove_wc_count_comments_transient (PR #54984)
• wc_update_990_remove_email_notes (PR #55660)

Developer Advisories

Deprecation of wc_current_theme_is_fse_theme()WooCommerce 9.9 deprecates the wc_current_theme_is_fse_theme() function in favor of WordPress core’s wp_is_block_theme(). Developers using the deprecated function should update their code accordingly. Check out our developer advisory for more information on how to keep your code compatible.

🐛 Fixes

This release fixes an issue with the Tax Rate API submitted by a community member, where tax class names using non-Latin characters (such as Arabic) were not handled correctly Previously, these rates defaulted to the standard tax class.

With this fix, tax classes created via the REST API now fully support non-Latin characters, improving internationalization and ensuring accurate tax calculations across all languages.

⚠️ 9.9.X first stable version

The first stable version of the 9.9.X series is 9.9.3. To see what’s in each version, check out the dot release post.


Changelog

View the full changelog.


Get WooCommerce 9.9

👉 To upgrade: See our update guide or download the latest release from WordPress.org.

🐞 Found a Bug? Please submit a report it on GitHub.


Code Contributors

WooCommerce Core

ctrlaltdylan
martin-neumann-gurus
moon0326
malinajirka
Aljullu
jimjasson
alexflorisca
DAnn2012
csmcneill
luisherranz
migueldamota
emdashcodes
BusinessBloomer
CHEWX
mdperez86
WunderBart
jorgeatorres
lysyjan
straku
wavvves
adrianduffell
nerrad
szepeviktor
rjchow
KokkieH
rodelgc
thilinah
AhmarZaidi
Lenny4
Manussakis
shaybanshee
chihsuan
psealock
costasovo
wjrosa
mikachan
coreymckrill
rawdreeg
gigitux
danielmx-dev
tomalec
ilyasfoo
elazzabi
bacoords
tpaksu
PanosSynetos
mikkamp
ianlin
louwie17
adimoldovan
felipeelia
kkmuffme
yuliyan
senadir
masteradhoc
xristos3490
domSBM
dinhtungdu
RistoNiinemets
tjcafferkey
albarin
NeosinneR
anaspk
scruffian
imanish003
nielslange
aatanasovdev
mordeth
robinwittebol
BurakParsAydin
naman03malhotra
jaclync
brezocordero
brentmackinnon
danielwrobert
kalessil
SantosGuillamot
timur27
lbonomo
vladolaru
bor0
roykho
pavel-mailpoet
danielhuesken
amitraj2203
kallehauge
mirka
ismaeldcom
mcliwanow
daniyalahmadk
prettyboymp
message-dimke
cpapazoglou
mikejolley
Onstage2426
samueljseay
joshuatf
opr
oaratovskyi
helgatheviking
dmallory42
Konamiman
triple0t
Varan170
kmanijak
rsm0128
puntope
Kallyan01

ActionScheduler

crstauf
jorgeatorres
Konamiman
barryhughes
naman03malhotra
coreymckrill

7 responses to “WooCommerce 9.9: It’s fast, period.”

  1. Maxime Michaud Avatar
    Maxime Michaud

    Good, I was specifically looking for the performance improvements.

  2. nice (performant) release, v10 looks promising ;-)))
    New block: Product filters Collection
    don’t forget the category filter : it is missing !
    Product Gallery Beta : nice performance enhancement, there is some regression (main image cropping does not work anymore). There is no more EPIC issue, so it’s difficult to track down what will come in V10/V10.1..
    Blueprints : good, is there a plan to incorpore other plugin settings also (select what other product settings to add) ? the need is on dev site we make several tests, so the product post table has many entries (ex: 100.000 products). On pre-prod, we want to start clean….

    Improving product import speed is also a need… the table structure make it difficult to add massive data (we use wpallimport for that). Since there is no plan to add HPPS (high performance product storage)

    Email editor : nice

    keep it up

    1. Shani Banerjee Avatar
      Shani Banerjee

      Hey, this is great feedback. We hear you on HPPS – the more feedback we get in terms of impact and workarounds, the more we can file under “needed, let’s investigate the solution.”

      With the Product Filters, and Product Gallery Beta feedback, have you already created issues? We also have a blocks oriented Office Hours live chat in slack on June 18, and would be a great place to give the team feedback directly.

  3. HOSEIN Avatar

    An interesting update. Thanks to the WooCommerce team.

    Is there a plan to export blueprints of orders, users, and user reviews?

    1. Brian Coords Avatar
      Brian Coords

      We’ve just posted a call for feedback with more information all about Blueprints.

      https://developer.woocommerce.com/2025/06/09/call-for-feedback-introducing-settings-import-export-with-blueprints/

      Right now the goal of Blueprints is to focus on site settings and getting a new store up and running. For migrating data (like products, orders, and customers), I would refer to the traditional import/export tools inside WooCommerce.

  4. Great stuff! What tech will you be using for the new product gallery block? Can we say good-bye to flexslider? Best regards

    1. Shani Banerjee Avatar
      Shani Banerjee

      Hey Flo! This is a great question for our Office Hours on June 18 (https://developer.woocommerce.com/2025/06/03/june-office-hours-whats-the-latest-in-blocks-extensibility/) if you are able to make it. Our blocks team members will be there to talk a bit more about what is coming.

Leave a Reply

Your email address will not be published. Required fields are marked *