Skip To Main Content

What you need to know about HPOS – WooCommerce’s new High Performance Order Storage

WooCommerce, the longstanding, popular and affordable solution for online stores, is introducing a new feature called High Performance Order Storage (HPOS) in August 2023. This change aims to improve the performance of online stores. We explore the benefits and implications of this update.

The Need for Speed

WooCommerce is widely used for building online stores due to its seamless integration with WordPress. However, there have been scalability issues with larger, established stores.

As the number of orders increases, crucial customer actions such as adding to cart or checking out can take longer, causing delays and frustration. Inexpensive fixes include adding indexes to the core WordPress tables. More expensive ones involve improving the specification of the hosting server.

To address these challenges WooCommerce has developed the High Performance Order Storage (HPOS) project, redesigning how order data is organised within the database.

The main change involves moving away from the overused wp_posts and wp_postmeta tables and adopting a more efficient table schema. WooCommerce plans to make this new design scheme the default for new online shops created with WooCommerce v8.0. This is due for release in August 2023.

What does HPOS mean for existing WooCommerce stores?

Existing stores will not be impacted immediately upon upgrading to WooCommerce v8.0.

The transition to HPOS is optional. Administrators can choose whether to synchronise existing customer orders to the new scheme or continue using the old arrangement. If they migrate to HPOS, the existing order data is duplicated to the new tables, with scheduled updates to ensure data consistency.

This duplication serves as a safety net, enabling compatibility with third-party legacy code or plugins that still rely on the old tables. It also allows for a rollback if any issues arise. Although the database size will increase, this approach ensures a smooth transition.

However, if the decision is made to retain the old scheme without synchronisation, WooCommerce will function as it did before.

It’s important to note that while WooCommerce provides seamless migration for its own PHP classes, compatibility issues may arise with third-party plugins or custom code that aren’t updated for the new environment.

We recommend performing a technical audit prior to disabling synchronisation or migrating to HPOS. This will identify any potential issues and ensure a smooth transition.

Out with the old, in with the new?

During the transition phase there may be a slight performance impact and increased database size. However, the benefits of the new HPOS tables and the ability to rollback outweigh these concerns.

At some point, administrators may decide to disable synchronisation and only use the new tables.

There are two potential concerns with this:

  • Legacy code not functioning with the new WooCommerce plugin
  • Redundant, duplicated data in wp_postmeta.

The first is more of a headache.

WooCommerce plugins will be updated to work with v8.0. Third party plugins may take a while to be updated – or might never be.

If the theme (or other custom code) is a reputable, current, commercial one, it will hopefully use WooCommerce classes only. These will work for either old or new (HPOS) environments. However, older examples may not be using WooCommerce methods.

Before deciding to disable synchronisation it is vital to verify compatibility with third-party plugins and address redundant data in wp_postmeta. While removing the redundant data can improve performance, it may not be such a significant issue if the table is properly indexed.

Database partitioning or sharding can retain data, while treating it as if it doesn’t really exist. Alternatively, data can be dumped to another table, or simply stored as a backup offline.

These issues should be addressed in a technical audit in preparation for migrating to HPOS.

To run a technical audit on your WooCommerce site, or discuss migrating to HPOS, call us on 01284 830888.

Or email [email protected]

let’s work together