WC Order Search Pro replaces the search on WooCommerce’s Orders screen with one that also looks inside SKUs, order notes, addresses, coupon codes and any custom field you choose. It works with HPOS and with legacy order storage.
Requirements
- WordPress 6.0 or newer and PHP 8.0 or newer.
- WooCommerce 7.0 or newer, installed and active.
After you activate it
The plugin starts indexing your existing orders straight away, in the background and in batches. New and updated orders are indexed as they’re saved, so you don’t need to do anything else. Settings live under WooCommerce → Order Search Pro, in three tabs: Searchable Fields, General and License.
Choose which custom fields are searchable
Order number, customer details, addresses, products, SKUs, coupons and notes are always searched. Custom fields are opt-in.
- Open WooCommerce → Order Search Pro → Searchable Fields.
- Tick the meta keys you want searched. The list comes from your recent orders, for example
_gift_recipient_name. - If a key hasn’t appeared on a recent order yet (a new checkout field, say), type it under Add custom meta key(s), one per line.
- Click Save searchable fields.

New orders pick up the change straight away. To apply it to older orders, run Rebuild search index on the General tab.
Searching
Type into the search box on WooCommerce → Orders. One search checks the order number, customer name, email and phone, billing and shipping addresses, product names, SKUs, coupon codes, order notes (customer-facing and private) and your searchable fields.

The Matched in column tells you what matched, so you’re not left guessing why an order is in the list.

Filters
Filters stack on top of the search and on top of each other:
- status
- payment method and shipping method
- billing country
- customer group (including guests)
- order total, minimum and maximum
- coupon code
- tag
- order date, from and to

Saved searches
Any search plus filters can be saved:
- Set up the search and filters.
- Click Save this search and give it a name.
- Tick Shared with the team if everyone should see it.
Saved searches appear as chips above the orders list. One click reruns it; you can delete your own.

Acting on results
Select orders and use the bulk actions menu:
- Add order note: the same note on every selected order.
- Add tag: tag orders, for example “VIP” or “Fraud review”. Tags are searchable and have their own filter.
- Export to CSV: the columns come from the General tab. The download link expires after a short while; if it does, select the orders and export again.
- Print packing slips.
Search analytics
WooCommerce → Order Search Analytics shows the most-searched terms, how often each was searched and the average number of results, plus the searches that returned nothing.
A search that keeps coming back empty usually means staff are looking for a field that isn’t marked searchable yet.
General settings

| Setting | What it does |
|---|---|
| Reindex batch size | How many orders are indexed per background batch. Lower it on slow or shared hosting if reindexing times out. |
| Search log retention (days) | Analytics older than this are deleted. 0 keeps them forever. |
| CSV export columns | The columns included when you export orders. |
| Rebuild search index | Reindexes every order in the background, with progress shown. |
When to rebuild the index
- After you mark a new field as searchable and want older orders included.
- After importing orders with a tool that bypasses WooCommerce’s normal save hooks.
- If search results look out of date.
Troubleshooting
| Problem | What to check |
|---|---|
| An order you know exists doesn’t come back | Is the field you’re searching marked searchable? If it was added recently, rebuild the index. |
| Rebuild seems stuck | Lower the reindex batch size on the General tab and start again. WP-Cron has to be running. |
| “This export link has expired” | Select the orders again and re-run the export. |
| A notice says WooCommerce is missing or too old | Activate or update WooCommerce to 7.0 or newer. |