When you see “WordPress database error: Table ‘wp_wc_orders’ doesn’t exist”, WooCommerce isn’t saying your orders are gone. It’s saying:
“High-Performance Order Storage (HPOS) is trying to use its order table, but that table isn’t in this database.”
This usually happens right after you enable HPOS, clone/migrate a site, or when a plugin assumes HPOS tables exist before WooCommerce has created them. Below, we’ll walk through how to confirm HPOS status, create the missing tables safely, and fix common edge cases—without nuking your existing orders.
WooCommerce HPOS is throwing “WordPress database error: Table 'wp_wc_orders' doesn’t exist” in my logs. How do I fix this without breaking existing orders?
This isn’t a generic database crash. It’s HPOS (High-Performance Order Storage) trying to query its main order table wp_wc_orders and MySQL replying:
“That table doesn’t exist in this database.”
In HPOS, WooCommerce stores orders in dedicated tables like wp_wc_orders, wp_wc_order_addresses, wp_wc_order_operational_data, and wp_wc_orders_meta instead of wp_posts and wp_postmeta. If those HPOS tables aren’t there—or a plugin is querying the wrong database/prefix—you get this exact error.
Most of the time, one of these is true:
wp_wc_orders directly.Let’s go through those in a safe order.
First, make sure HPOS is actually involved.
If HPOS is enabled: the error is almost certainly coming from HPOS itself or HPOS-aware extensions trying to use wp_wc_orders. Keep reading.
If HPOS is disabled: some plugin or custom code is querying wp_wc_orders directly even though HPOS is off. You’ll fix that in the plugin conflict section.
If you recently toggled HPOS and immediately started seeing the error, start here:
Early HPOS builds (around the 7.x era) had bugs where enabling HPOS could trigger wp_wc_orders queries before the table was created. That’s been fixed in current releases, and updating often clears this class of error on its own.
Next, find out if wp_wc_orders and its friends are in your database at all.
wp_wc_orderswp_wc_order_addresseswp_wc_order_operational_datawp_wc_orders_metawp_wc_orderswp_wc_order_addresseswp_wc_order_operational_datawp_wc_orders_metaNow match what you see to one of these scenarios:
wp_wc_orders does not → treat it as a broken/partial HPOS install. Also start at Step 3.If wp_wc_orders (and possibly the other HPOS tables) simply isn’t there, WooCommerce has never successfully created them—or they were dropped during a migration.
WooCommerce can’t create HPOS tables if your database user doesn’t have the right permissions.
Next, ask WooCommerce to run its own schema installer again.
wp_wc_* tables now appear.If you’re comfortable with WP-CLI and your host allows it, you can also use the HPOS CLI tools to inspect and manage HPOS state from the command line. See WooCommerce’s HPOS CLI tools for details.
If HPOS tables still don’t get created and this is a staging/dev environment, you can sometimes nudge WooCommerce’s installer like this:
Important: always have a full database backup before doing this on production. Re-installing WooCommerce normally does not drop your order data, but you don’t want to discover an edge case the hard way.
After the update/reactivation, check again for the HPOS tables. If they now exist but you still see the error, move on to clone/prefix checks.
If all the HPOS tables exist, but WordPress still logs Table 'wp_wc_orders' doesn’t exist, look closely at the database name and prefix shown in the error.
Common gotchas:
wp_ to wp123_) but queries still point at the old one.wp-config.php is pointing to a different database than the one that actually has the HPOS tables.dbname.wp_wc_orders).wp-config.php (DB_NAME), andDB_PREFIX . 'wc_orders' (e.g. wp_wc_orders, wp123_wc_orders).wp_wc_orders but your real prefix is different (e.g. wp7x_):
$table_prefix in wp-config.php.wp_wc_orders instead of using $wpdb->prefix . 'wc_orders'._wc_orders, _wc_order_addresses, _wc_order_operational_data, _wc_orders_meta) were included in the export/import.wp_wc_ordersIt’s also possible that HPOS is disabled, but a plugin or custom code is querying HPOS tables directly anyway.
Table 'wp_wc_orders' doesn’t exist.Once you know who’s querying the table:
If the error only appears with one specific extension active, you’ve found the culprit—even if it still needs a vendor fix.
At this point, if you’ve:
…and you still see Table 'wp_wc_orders' doesn’t exist, I’ll need more context to help you safely.
Scroll down, click Continue Chat, and send me:
You’re in good shape when:
Table 'wp_wc_orders' doesn’t exist.wp_wc_orders directly.Hit Continue Chat below and I’ll help you interpret your logs, check HPOS status, and decide whether to repair, migrate, or temporarily roll HPOS back on your specific site.
Scroll down to the contact form below. Enter your name, email, and WordPress needs. Atiba will get back to you as soon as possible.
WP Assistant is a free tool created by Atiba Software, a WordPress design and development company located in Nashville, TN. If you need more personalized WordPress assistance let us know, and we’ll get back to you ASAP!