Do you want your WooCommerce product page button to say “Buy Now”, “Order Now”, or “Grab It” instead of the default “Add to Cart”?
Good news — you can do this easily with just one line of code. No plugins, no bloat, just pure WooCommerce magic. 🚀
💻 The Code Snippet
Here’s the one-liner that does it all:
add_filter( 'woocommerce_product_single_add_to_cart_text', function() {
return __( 'Buy Now', 'your-text-domain' );
});
That’s it! Once you add this snippet, the button text on your single product page will instantly change from “Add to Cart” to “Buy Now.”
🧩 Where to Add This Code
You can safely place this snippet in one of the following:
- Child Theme →
functions.php - Code Snippets Plugin → Best choice for non-developers
- Custom Plugin → If you already maintain your own plugin for tweaks
⚠️ Avoid editing the main theme’s functions.php file directly.
Your changes could be lost when the theme updates.
🔍 How It Works
WooCommerce uses filters to dynamically display button text.
The filter name woocommerce_product_single_add_to_cart_text specifically targets single product pages.
When you hook into this filter and return your own text (like 'Buy Now'), WooCommerce automatically replaces the default label.
This approach is clean, fast, and upgrade-safe.
🛍️ Bonus: Change the Button Text on Shop Page Too
If you want the same button text on your shop/archive pages, add this extra line:
add_filter( 'woocommerce_product_add_to_cart_text', function() {
return __( 'Buy Now', 'your-text-domain' );
});
Now both the product page and the shop grid will show “Buy Now” — keeping your branding consistent.
💡 Pro Tip: Conditional Button Text
Want different text for different product types or categories?
You can easily customize it using WordPress conditionals:
add_filter( 'woocommerce_product_single_add_to_cart_text', function() {
if ( has_term( 'membership', 'product_cat' ) ) {
return __( 'Join Now', 'your-text-domain' );
}
return __( 'Buy Now', 'your-text-domain' );
});
👉 This lets you display “Join Now” for subscription products, and “Buy Now” for everything else.
🧠 Why Customize Your Button Text?
Your call-to-action (CTA) plays a big role in conversion optimization.
Changing “Add to Cart” to “Buy Now” often improves:
- 💰 Conversion rates — clearer buyer intent
- 🧭 User experience — more intuitive action
- 🔥 Brand voice — personalized to your store’s tone
Small tweak, big difference.
✅ Conclusion
With just one line of PHP code, you can fully customize your WooCommerce “Add to Cart” button text.
It’s simple, lightweight, and completely safe — no plugins needed.
Whether you prefer “Buy Now,” “Order Now,” or something unique, this method gives you full control.version rate and user experience.