You can hide or rename a My Account tab in WooCommerce by filtering the account menu items array, either unsetting the tab’s key entirely to remove it or reassigning its label to change the displayed text — both work for default tabs and custom tabs added by other plugins.
Why Customize the My Account Menu
- Hide tabs your store doesn’t use, like Downloads on a physical-goods-only store
- Rename generic labels (“Addresses”) to something more specific to your business (“Delivery Address”)
- Simplify the account dashboard for a cleaner customer experience
Step 1: Find the Tab’s Key
Every My Account tab has an internal key visible in its URL, such as edit-address, orders, or downloads. The default keys are:
$items = array(
'dashboard' => 'Dashboard',
'orders' => 'Orders',
'downloads' => 'Downloads',
'edit-address' => 'Addresses',
'payment-methods' => 'Payment methods',
'edit-account' => 'Account details',
'customer-logout' => 'Log out',
);Custom tabs added by other plugins (like a Subscriptions or Wishlist tab) will have their own keys, visible the same way in the account page URL.
Step 2: Hide a Tab
/** Remove the Downloads tab from My Account */
add_filter( 'woocommerce_account_menu_items', 'remove_downloads_account_tab', 9999 );
function remove_downloads_account_tab( $items ) {
unset( $items['downloads'] );
return $items;
}Step 3: Rename a Tab
/** Rename "Addresses" to "Delivery Address" in My Account */
add_filter( 'woocommerce_account_menu_items', 'rename_addresses_account_tab', 9999 );
function rename_addresses_account_tab( $items ) {
$items['edit-address'] = 'Delivery Address';
return $items;
}

Troubleshooting
Hiding a Tab Doesn’t Actually Restrict Access to Its Page
Removing a tab from the menu only hides it visually — the underlying endpoint URL is typically still reachable directly unless you also add logic to redirect away from it.
A Plugin-Added Tab’s Key Isn’t Obvious
Visit that tab while logged into your account and check the URL — the endpoint slug shown there is the exact key to use in the filter.
Renamed Tab Reverts After a Plugin Update
Confirm your snippet is running at a late enough priority (9999 in the examples above) so it applies after the tab is originally registered by WooCommerce or the relevant plugin.
Frequently Asked Questions
Can I reorder the tabs instead of just hiding or renaming them?
Yes — rebuild the array in your desired order inside the same filter function, since the array’s order determines the menu’s display order.
Does hiding a tab delete the associated data?
No — hiding a tab only affects its visibility in the menu; underlying data (orders, addresses, payment methods) remains fully intact.
Can I hide a tab for only certain user roles?
Yes — wrap the unset logic in a current_user_can() check so the tab only disappears for specific roles.
Conclusion
Hiding or renaming a My Account tab in WooCommerce is a single filter on the account menu items array. If you need the underlying page fully inaccessible rather than just hidden from the menu, pair this with an additional access-restriction check.
See also How to Add a New Tab to the WooCommerce My Account Page.
Prefer no code? All-in-One Utilities Woo Add-on handles this kind of change from a settings screen. Its My Account menu and tabs guide also shows how.