How to let customers name their price in WooCommerce
WooCommerce does not include a customer-entered price field in its standard product settings. You can build one with custom development, but a name-your-price extension is the practical route because it handles the product field, validation, cart price and checkout flow together.
- 01Choose your pricing model
- 02Prepare the WooCommerce product
- 03Understand the manual route
- 04Install a name-your-price extension
- 05Set pricing limits and labels
- 06Take the fast route
What you need
- A WooCommerce store with products already configured
- Administrator access to WordPress
- A staging site or recent backup
- A clear minimum, suggested or maximum price policy
Choose your pricing model
Decide whether customers may enter any positive amount, must meet a minimum, or must stay between minimum and maximum limits. A suggested amount is useful when you want to guide buyers without forcing them to pay it.
Do not use this for ordinary quantity-based discounts. A customer-entered price is a different workflow: the amount must travel from the product page into the cart, order and payment gateway.
Prepare the WooCommerce product
Create or edit the product that customers will price themselves. Use a simple product for the simplest setup. For a variable product, the price option normally needs to be configured on each eligible variation rather than assumed to apply to every variation.
Keep the product description clear about what the entered amount covers. If the product is a donation, invoice payment or service, explain whether the amount is a one-off payment and whether tax or shipping applies.
Understand the manual route
You can build this without a dedicated extension, but it is a custom development job rather than a WooCommerce setting. The developer must add a price input to the product form, validate the submitted amount on the server, carry it into the cart and session, apply it to the cart item, and preserve it in the order.
Client-side JavaScript alone is not safe because customers can alter browser-submitted values. The code must also handle failed validation, decimal separators, nonces, quantity changes, reloads and payment-gateway checks. This route is reasonable when you need unusual pricing logic and have a developer to maintain it; otherwise, it creates more places for the Friday problem where the product page shows one amount but the cart or checkout shows another.
Install a name-your-price extension
Install and activate a WooCommerce-compatible name-your-price extension through Plugins in the WordPress dashboard. After activation, edit the target product and enable its customer-entered pricing option.
The extension should add the amount field above or near the Add to cart button and connect the entered amount to the cart. The documented WooCommerce Name Your Price workflow uses a product-level checkbox followed by suggested, minimum and maximum price fields.
Set pricing limits and labels
Enter a suggested price if you want a starting point. Enter a minimum to prevent underpayment, and enter a maximum if you need to cap the amount. Leave a limit blank only when you genuinely want no limit; the documented extension supports leaving suggested or minimum fields blank.
Check that the suggested amount is not below the minimum and that the maximum is not below the minimum. Do not set the minimum to zero for a product that must be paid for: zero-value products can hide purchase controls or fail with some payment gateways.
Take the fast route
For most stores, use WooCommerce Name Your Price. Install it, edit the product, tick the name-your-price option, then set the suggested, minimum and maximum amounts. The extension supplies the customer input and applies the accepted amount through the WooCommerce purchase flow instead of requiring you to maintain custom pricing code.
Test the complete path with a normal amount, an amount below the minimum, an amount above the maximum, a decimal amount and a failed payment. Also test on mobile and with your theme, tax, product add-ons and payment gateway enabled. Support threads repeatedly report cart totals changing to zero or fields disappearing when another extension, theme or variation workflow manipulates the cart item or product price.
Let WooCommerce Name Your Price do it
Pay-what-you-want pricing with suggested, minimum, and maximum amounts for products customers can price themselves.
Sources
- woocommerce.com /document/name-your-price/?utm_source=openai
- woocommerce.com /document/name-your-price/name-your-price-rest-store-api-ref…
- wordpress.org /support/topic/price-goes-to-0-after-add-to-cart/?utm_source…
Questions
- Can WooCommerce let customers enter any price without a plugin?
- Not through WooCommerce’s normal product settings. You can commission custom code to create the field, validate the value, carry it through the cart and set the order amount, but that code needs ongoing maintenance and compatibility checks. A dedicated name-your-price extension is the quicker option for standard pay-what-you-want, donation or invoice-payment products.
- Should I set a minimum price for customer-entered products?
- Set a minimum price when you need to protect your costs or ensure the order is worth processing. The minimum should cover the amount you are willing to accept, while the suggested price gives customers a sensible reference point. Test the error message and confirm that an amount below the minimum cannot reach the cart or payment page.
- Why does the name-your-price field not appear?
- The field may be disabled for that product, hidden by a theme or page builder, unavailable until a variation is selected, or affected by JavaScript or another plugin. Check that the product option is enabled, save the product, clear page and browser caches, then test with a default theme and other extensions temporarily disabled. Variable products commonly show the field only after the customer chooses a variation.
- Why does the customer’s price change in the cart?
- The amount usually changes because another extension or customisation reloads the product from the database instead of using the customised cart item, or because validation rejects the submitted value. Check product add-ons, gift cards, variation tools, currency switches and payment integrations first. Update the involved extensions, then test the cart, checkout and order total together rather than relying on the product-page display.