What is HPOS, and do I need to migrate my orders to it?
Updated for WooCommerce 10.8, May 2026
HPOS stands for High-Performance Order Storage. It’s WooCommerce’s system for storing order data in its own dedicated database tables instead of the general WordPress posts and postmeta tables. It’s been the default for new stores since WooCommerce 8.2, released in October 2023. If your store predates that, you’re probably still on legacy storage, and switching is a manual choice, not something forced on you.
Quick answer
HPOS is WooCommerce’s dedicated order storage system, replacing the older setup where orders lived as custom post types mixed in with pages and products. New stores get it automatically. Existing stores switch it on under WooCommerce > Settings > Advanced > Features. Migration isn’t mandatory today; WooCommerce hasn’t announced a removal date for legacy storage. But new WooCommerce development is being built on HPOS, so stores with real order volume should treat migrating as a matter of when, not if.
HPOS vs legacy order storage
| Legacy storage (posts/postmeta) | HPOS |
|---|---|
| Orders stored as custom post types | Orders stored in dedicated wc_orders tables |
| Order metadata can make up to 97% of wp_postmeta rows on large stores | Metadata in a compact, order-specific table |
| Metadata searches scan the full wp_postmeta table | Metadata searches run roughly 10x faster |
| Typical order overview page: ~511 queries (benchmark example) | Same page: ~438 queries, per the same benchmark |
| Default for stores created before Oct 2023 | Default for stores created from WooCommerce 8.2 onward |
Is migrating to HPOS mandatory?
No, not yet. WooCommerce has not announced a removal date for legacy order storage. Migration remains fully opt-in for existing stores.
That said, every recent release leans further into HPOS as the foundation, including performance work like cache priming for HPOS order queries in WooCommerce 10.8 (May 2026). Staying on legacy storage isn’t risk-free forever, it’s a decision you’re deferring, not avoiding.
What happens if I don’t migrate?
Nothing breaks immediately. Your store keeps working exactly as it does now. What you lose out on is the performance gain (faster queries, faster checkout on high-volume stores) and, over time, tighter compatibility with new WooCommerce features being built HPOS-first.
What to check before you migrate
- Check plugin compatibility first. Incompatible plugins can block the migration outright, or quietly break things like metaboxes and custom columns on the orders screen.
- Keep extensions that use custom post types, subscriptions and bookings plugins are the common ones, active during the transition. Deactivating them mid-migration causes data mismatches.
- Turn on compatibility mode before anything else (same settings page). It syncs orders between old and new tables while you test.
- Clear any sync backlog first. WooCommerce won’t finalize a switch to or from HPOS while unsynced orders are pending.
- Back up your database before making HPOS authoritative.
Bottom line
Small stores with light order volume can migrate whenever it’s convenient, there’s no urgency. Stores running real volume should migrate deliberately now, on staging first, rather than waiting until WooCommerce’s roadmap forces the decision with less runway to test. If you’d rather have someone who handles this regularly run the migration, Stagebit’s WooCommerce development team can take it from plugin audit through to a tested production switch.
Related Answers
Still need help?
Talk to our WooCommerce experts
We rebuild and support WooCommerce stores that have slowed down under plugin bloat, with a focus on Core Web Vitals and checkout reliability.