How to add en Enquiry Form to your WooCommerce Store: Step by Step Guide
Learn how to add a professional enquiry form to your WooCommerce product pages. Step-by-step plugin & code methods with GDPR compliance. Boost B2B leads today.
If you run a WooCommerce store that sells custom products, B2B items, or high-ticket goods, the standard Add to Cart button can actually turn customers away. Adding a dedicated enquiry form lets visitors ask questions, request quotes, or discuss specifications before they commit to a purchase. By following this guide, you will have a fully configured, GDPR-compliant enquiry form live on your product pages in under 30 minutes.
Why Your B2B or Custom Store Needs an Enquiry Form
Standard ecommerce flows assume buyers know exactly what they want and are ready to checkout immediately. That assumption breaks down when you sell configurable products, bulk quantities, or services with variable pricing. 61% of B2B buyers prefer an overall rep-free buying experience, but 73% actively avoid suppliers that send irrelevant outreach (Gartner, 2025). An enquiry form bridges that gap: it gives buyers a low-commitment way to start a conversation without handing over a phone number or sitting through a sales call. It also captures leads before they bounce. With an average cart abandonment rate of 70.22% (Baymard Institute)a form that catches hesitation can directly recover revenue.
What You'll Need
- Administrator access to your WordPress site
- WooCommerce installed and activated
- An SSL certificate (required for GDPR-compliant form submissions)
- Estimated completion time: 20 to 30 minutes
- Difficulty level: Beginner to intermediate
Full documentation: Official Documentation
By the way: if you are looking for ways to present complex product options clearly, our guide on Multistep Product Variations can help simplify the buying process even further.
The Quick Answer
You can add an enquiry form to WooCommerce by installing a dedicated plugin that adds an enquiry button to product pages. Configure the plugin to hide prices, remove the Add to Cart button, and show a popup form. Then add a GDPR consent checkbox to collect legally compliant enquiries. The entire process takes under 30 minutes.
How to Add a WooCommerce Enquiry Form?
Below are two methods. The first uses a purpose-built plugin and is the recommended approach for most store owners. The second covers a manual workaround using a contact form plugin.
Method 1: Product Enquiry Form
This plugin is designed specifically to replace or supplement the Add to Cart button with an enquiry button. It supports email, SMS, and WhatsApp communication channels, and includes settings to hide prices and the Add to Cart button entirely.
Step 1: Install and Activate the Plugin
Why: Installing the plugin is the fastest way to add enquiry functionality without writing code, and it keeps all configuration in one place.
Action:
- Go to WordPress Admin > Plugins > Add New.
- Click Upload Plugin and choose the .zip file you downloaded.
- Click Install Nowthen Activate.
Result: You should now see a new Product Enquiry Form menu item under WooCommerce in the admin sidebar.
Step 2: Set General Enquiry Settings
Why: These settings control who sees the enquiry button and on which products it appears, so you can target the right audience.
Action:
- Navigate to WooCommerce > Product Enquiry Form > General Settings.
- Check Enable/Disable to turn on the extension.
- Under Show Enquiry Button Toselect your target audience. For a B2B store, "All" or "Guest Users" is typical so anonymous visitors can enquire.
- Under Show Enquiry Button Onchoose All Products or Specific Products. If you select Specific Productsuse the Include/Exclude options to refine by product or category.
- For Enquiry Button On Out-of-Stock Productsselect Only Out of Stock if you want the form to appear only when inventory is empty.
Result: The enquiry button will now appear on the selected products for the chosen user roles.
Step 3: Hide Prices and the Add to Cart Button
Why: Many B2B stores operate without public prices. Hiding the Add to Cart button ensures customers only see the enquiry option.
Action:
- In the same General Settings tab, check Hide Price.
- Check Hide Add to Cart Button.
- Under Positionselect Inline with Add to Cart or Below Add to Cart. If you hide the Add to Cart button, this setting has less impact, but it determines where the enquiry button appears on pages where the cart button still shows.
Result: Product pages will now display only the enquiry button, with no price or Add to Cart option visible.
Step 4: Style the Enquiry Button and WhatsApp Button
Why: A styled button that matches your store's branding builds trust and improves click-through rates.
Action:
- Go to the Button Settings tab.
- For Enquiry Button Stylechoose Button for a full button appearance, or Text for a link style.
- Enter Enquiry Button Text (e.g., "Request a Quote").
- Under Background Color and Text Coloruse the color picker to match your theme.
Result: The enquiry button will now display with your custom colors and label.
Step 5: Configure the Popup Form
Why: The popup form is where customers submit their enquiry. Customizing the headings and tabs makes the experience clear and branded.
Action:
- Go to the Popup Settings tab.
- Enter Popup Heading Text (e.g., "Get a Quote").
- Enter Enquiry Tab TextWhatsApp Tab Textand SMS Tab Text to label each contact channel.
- Upload custom icons for each tab if you have them.
Result: When a visitor clicks the enquiry button, a branded popup appears with clearly labeled tabs for each communication method.
Step 6: Test the Full Flow
Why: Testing ensures everything works before real customers use the form. A broken form loses leads and damages trust.
Action:
- Open a product page in a private browser window.
- Click the enquiry button and fill out the form.
- Submit and check that you receive the email, SMS, or WhatsApp message.
- Confirm the redirect page (if set) loads correctly.
Result: You have a fully working WooCommerce enquiry form that captures leads across multiple channels.
Other Plugins That Can Also Do This
If you want to compare options or need a specific feature not covered by Product Enquiry Formconsider these alternatives:
- YITH WooCommerce Request a Quote: Focuses on the quote request workflow with hide price and add to cart options. Supports PDF quote generation. See vendor for up to date pricing.
- Product Enquiry Pro for WooCommerce: Offers multiproduct enquiry capability, allowing customers to enquire about several products at once. See vendor for pricing.
How to Add an Enquiry Form Manually Using a Hook and Contact Form 7
If you prefer full control over the markup or need to comply with an existing theme build, a manual approach using WordPress hooks and Contact Form 7 gives you that flexibility. This method is best suited for developers or store owners comfortable editing their theme's functions.php file.
The core idea is to replace the standard Add to Cart button with a custom enquiry form. You do this by removing the default add-to-cart action and inserting your own form shortcode in its place.
Before editing any theme file, always create a child theme and take a full database backup. Test the code on a staging site first.
Here is the step by step process.
- Install Contact Form 7. Go to Plugins > Add New, search for "Contact Form 7," install and activate it. Create a new form inside Contact Form 7 > Add New. Give it a title such as "Product Enquiry Form" and copy the generated shortcode. It will look something like [contact-form-7 id="123" title="Product Enquiry Form"].
- Add the custom code snippet. Open your child theme's functions.php file. Add the following PHP snippet. It removes the add to cart button for simple products and replaces it with your Contact Form 7 shortcode.
// Remove the Add to Cart button for simple products remove_action( 'woocommerce_single_product_summary', 'woocommerce_template_single_add_to_cart', 30 ); // Add a custom enquiry form in its place add_action( 'woocommerce_single_product_summary', 'custom_enquiry_form', 30 ); function custom_enquiry_form() { echo do_shortcode( '[contact-form-7 id="REPLACE_ME" title="Product Enquiry Form"]' ); }
Replace REPLACE_ME in the snippet with the actual ID from your Contact Form 7 shortcode. For variable products, you will need a more advanced snippet that passes the selected variation data into the form, which goes beyond the scope of this basic example.
Result: On the single product page, the standard Add to Cart button and price are no longer visible. Instead, visitors see your Contact Form 7 enquiry form. They can submit their name, email, and message directly.
This manual method gives you complete design freedom and avoids any third party dependency beyond Contact Form 7. However, it lacks built-in features like automatic product name injection, popup layouts, or SMS and WhatsApp channels. For those capabilities, a dedicated plugin like Product Enquiry Form offers those integrations out of the box with no custom coding required.
Step 4: Add a GDPR Consent Checkbox and reCAPTCHA to Your Form
If you collect personal data through an enquiry form, you must meet GDPR requirements. A consent checkbox gives visitors explicit control over how their data is used. Adding reCAPTCHA prevents bots from submitting fake enquiries, which wastes your time and can fill your database with invalid contacts.
Without both elements, you risk legal exposure and a polluted lead pipeline.
Start by enabling a consent checkbox in your form builder or plugin settings. For example, the Product Enquiry Form plugin lets you add a customizable checkbox that links to your privacy policy. Configure the checkbox label to state clearly what the user agrees to, such as "I consent to having this website store my submitted information." Two of the most popular tools that support this field natively are Contact Form 7 and WPForms.
Next, integrate reCAPTCHA. Most enquiry form plugins support Google reCAPTCHA v2 or v3 out of the box. Navigate to your plugin's settings panel, locate the reCAPTCHA section, and enter your Site Key and Secret Key from your Google reCAPTCHA admin console. If you use a manual code solution, add the reCAPTCHA fields directly into your form template.
After saving, test the form. Submit an incomplete entry to confirm the checkbox triggers a validation error. Submit several rapid entries to verify reCAPTCHA blocks automated spam. You should now see a working, compliant form that collects only consented data and rejects bot traffic.
Step 5: Test the Enquiry Flow Across Devices and Browsers
Pushing your changes live without testing is risky. In a B2B context, a broken form can make you look unprofessional and lose a high value lead. You need to confirm the entire flow works on the devices and browsers your actual customers use.
Run through this checklist after you finish configuring your WooCommerce enquiry form plugin or custom code.
- Desktop browser test. Open the form on Chrome, Firefox, and Safari. Fill in every field and submit. Confirm you receive the email notification, SMS, or WhatsApp message as configured. If you enabled a redirect page URL, verify you land on the correct page.
- Mobile and tablet test. Open the same product page on an iPhone and an Android phone. The popup form and the enquiry button should render at the right size. If your button position is "Below Add to Cart," make sure it is still visible on a small screen and not cut off.
- Form validation test. Try submitting the form with an empty required field, an invalid email address, and a missing GDPR consent checkbox. The form should display clear error messages and refuse to send. A buyer who misses a field should know exactly what to fix.
- User role test. If you set "Show Enquiry Button To" to specific user roles (e.g., Guest Users only), log in as a registered customer and confirm the button disappears. Then open the site in a private browser window as a guest and confirm the button appears.
- Edge case check. Test a product that is out of stock. If you chose "Only Out of Stock" under "Enquiry Button On Out-of-Stock Products," the button should appear only on that item. Test a variable product too, ensuring the form loads after a user selects a variation.
Troubleshooting: Common Issues When Adding an Enquiry Form
Even with a plugin and careful configuration, things can go wrong. Here are three of the most frequent problems WooCommerce store owners run into when setting up an enquiry form, along with the likely cause and the fix.
The Enquiry Button Does Not Appear on Product Pages
This is the most common complaint. If the button is missing after you have activated the plugin, the cause is usually a visibility setting or a theme conflict.
- Go to WooCommerce > Settings > Enquiry Form and check Show Enquiry Button To. If you set it to "Logged In Users" and you are browsing as a guest, the button hides. Change this to "All" for testing.
- Check the Show Enquiry Button On setting. If it is set to "Specific Products" but no products are selected in the Include/Exclude Products field, the button will not appear.
- Switch temporarily to a default WordPress theme like Storefront or Twenty Twenty-Four. If the button reappears, your theme is overriding the button position. You can fix this by adjusting the Position setting in the plugin.
The Enquiry Form Email Is Not Being Delivered
You see the success message, but the enquiry never reaches your inbox. This is almost always an email delivery issue, not a plugin problem. WordPress uses the wp_mail() function, which many shared hosting servers block or mark as spam.
The fix is to use an SMTP plugin. Configure a service like WP Mail SMTP or Post SMTP to send emails through a trusted provider such as SendGrid, Brevo, or Gmail SMTP. Once you have set up SMTP, send a test enquiry. You should now find the email in your inbox.
The Enquiry Form Conflicts with a Caching Plugin
A caching plugin like WP Rocket, W3 Total Cache, or LiteSpeed Cache can prevent the enquiry form popup or AJAX submission from loading correctly. The symptom is a button that does nothing when clicked, or a form that submits but never shows a confirmation message.
- Navigate to your caching plugin's settings and exclude the enquiry form pages from the cache. For WooCommerce, exclude the cart page and the product pages that have the enquiry button.
- If your caching plugin minifies JavaScript, exclude the enquiry plugin's JS file from the minification list. You can find the file name under Enquiry Form > Popup Settings in the plugin's documentation.
- Clear the entire cache after making these changes. The plugin's dynamic features like the popup and AJAX submission rely on JavaScript that caching can break.
Best Practices
To keep your enquiry form secure, compliant, and effective over the long term, follow these recommendations.
- Always use a GDPR consent checkbox. Even if you think your traffic is mostly non-EU, checkbox protection covers you if a EU visitor submits. Make the text clear and link to your privacy policy.
- Set a redirect page. After submission, send the customer to a thank you page or back to the product page. A blank popup after submission feels unfinished.
- Monitor your spam log. If you see a sudden spike in fake submissions, reCAPTCHA may need reconfiguring or upgrading from v2 to v3.
- Log enquiries to a CRM. If you use a CRM like HubSpot or Salesforce, connect your form via a webhook or Zapier so enquiries become contacts automatically.
Conclusion
Adding a WooCommerce enquiry form transforms your product pages from passive storefronts into active conversation starters. Instead of losing visitors who are not ready to click Add to Cart, you capture their interest and give them a direct way to ask about custom options, volume pricing, or availability.
The key is to choose a method that fits your technical skill and your store's requirements. For most store owners, a dedicated plugin like Product Enquiry Form delivers a complete solution with price hiding, popup forms, and multi channel communication in under 30 minutes. If you need total control over the markup, the manual approach with hooks and Contact Form 7 gives you that freedom, though it requires more maintenance.
Start with the Product Enquiry Form plugin to get your enquiry form live quickly and reliably. It includes everything you need to replace the Add to Cart button, hide prices, and start capturing qualified B2B leads today.
Frequently Asked Questions
What is a WooCommerce enquiry form?+–
How do I hide prices in WooCommerce with an enquiry form?+
Can I add an enquiry form to only specific products?+
Does a WooCommerce enquiry form support WhatsApp and SMS?+
Do I need a GDPR consent checkbox on my enquiry form?+
We test tools on real stores and publish hands-on, fact-checked guides for store owners.

