WooCommerce
Capture pre-orders and restock demand for your WordPress store
Purpose-built for WooCommerce store owners. Manage product waitlists, capture lost sales from stockouts, and validate demand before ordering inventory. Works with any WordPress theme and all WooCommerce extensions.
Trusted by 2,000+
businesses & entrepreneurs
.png?alt=media&token=939637fa-d391-4d15-85ea-7005e07d08eb)







.png?alt=media&token=264537c9-b2e0-44e7-9d78-3b558d4e10c2)






.png?alt=media&token=939637fa-d391-4d15-85ea-7005e07d08eb)







.png?alt=media&token=264537c9-b2e0-44e7-9d78-3b558d4e10c2)






“Waitlister has been amazing; honestly, I don't plan on changing to another provider. Being able to create beautiful landing pages for my waitlist has been amazing. Customer support's response time is amazing, which has helped me deploy quickly.”
What you can build
Popular ways WooCommerce users implement waitlists
Back-in-Stock Notifications
Automatically capture customer interest when products sell out. Notify them instantly when inventory is restocked.
Product Pre-Launch Campaigns
Build waitlists before products go live. Launch with guaranteed sales instead of hoping customers find you.
Demand Validation
Test product ideas before ordering inventory. Only manufacture what customers actually want to buy.
Seasonal Collection Teasers
Build anticipation for seasonal drops, limited editions, or holiday collections before release.
Pre-Order Management
Accept pre-orders with waitlist tracking. Manage production quantities based on real demand data.
VIP Early Access
Give loyal customers first access to new products. Build exclusive waitlists for repeat buyers.
Why Waitlister for WooCommerce?
Built to work seamlessly with WooCommerce's capabilities
No WooCommerce Plugin Required
Zero plugin bloat. No conflicts, no updates to manage, no compatibility issues. Works alongside WooCommerce without adding database overhead or slowing down your store.
Recover Lost Sales
Turn "out of stock" into opportunity. Capture every customer who wants to buy. Notify them instantly when products restock and convert interest into sales.
Data-Driven Inventory
Know exactly how many customers want each product. Make informed inventory decisions. Reduce overstock and eliminate stockouts with real demand data.
Works With Any Theme
Compatible with every WordPress/WooCommerce theme - free or premium. Storefront, Astra, Divi, Flatsome, all themes work. No theme restrictions.
No Database Bloat
All waitlist data stored externally. No WordPress database overhead. Your site stays fast. Export customer data anytime for email marketing.
Email Marketing Ready
Export waitlists to CSV. Import into Klaviyo, Mailchimp, WooCommerce email tools. Turn interest into sales with targeted notification campaigns.
Which integration is
right for you?
Compare both methods to find the best fit for your WooCommerce project
Feature | Form Action | Embeddable Widget |
---|---|---|
Setup Time | ~15 minutes | ~5 minutes |
WordPress Database | Zero impact | Zero impact |
Theme Compatibility | 100% all themes | 100% all themes |
Monthly Plugin Fees | None | None |
Design Control | Full WooCommerce styling | Waitlister dashboard |
Product Page Integration | Automatic when out of stock | Manual shortcode |
Best For | Automatic store-wide | Quick setup |
Choose Form Action if...
- You want automatic "out of stock" waitlist forms
- You need store-wide waitlist functionality
- You're comfortable editing WooCommerce templates
- You want forms styled exactly like your theme
- You need conditional logic based on inventory
- You want professional store-wide implementation
Choose Embeddable Widget if...
- You want the fastest setup possible
- You're adding waitlist to specific products only
- You prefer dashboard design control
- You're testing product demand quickly
- You don't want to edit theme files
How to integrate
Follow these WooCommerce-specific instructions
Get your Waitlister endpoint
Login to Waitlister → Overview → copy your waitlist key. Your form action URL is:https://waitlister.me/s/YOUR_WAITLIST_KEY
Edit WooCommerce single product template
Copy wp-content/plugins/woocommerce/templates/single-product/add-to-cart/simple.php
to wp-content/themes/your-theme/woocommerce/single-product/add-to-cart/simple.php
Add conditional waitlist form
In your overridden template file, add this code after the add-to-cart button:
<?php
// Show waitlist form when product is out of stock
if ( ! $product->is_in_stock() ) : ?>
<div class="woocommerce-waitlist-form">
<h3>Get notified when back in stock</h3>
<form action="https://waitlister.me/s/YOUR_WAITLIST_KEY" method="POST">
<input type="email" name="email" placeholder="Your email" required>
<input type="hidden" name="product_name" value="<?php echo esc_attr( $product->get_name() ); ?>">
<input type="hidden" name="product_id" value="<?php echo esc_attr( $product->get_id() ); ?>">
<input type="hidden" name="product_url" value="<?php echo esc_url( get_permalink() ); ?>">
<button type="submit" class="button">Notify Me</button>
</form>
</div>
<?php endif; ?>
Style the waitlist form
Add CSS to match your WooCommerce theme. Add to Appearance → Customize → Additional CSS:
.woocommerce-waitlist-form {
margin: 30px 0;
padding: 25px;
background: #f8f8f8;
border-radius: 5px;
}
.woocommerce-waitlist-form h3 {
margin-bottom: 15px;
font-size: 18px;
}
.woocommerce-waitlist-form input[type="email"] {
width: 100%;
padding: 12px;
margin-bottom: 12px;
border: 1px solid #ddd;
border-radius: 3px;
}
.woocommerce-waitlist-form .button {
width: 100%;
/* Button will inherit your theme's button styles */
}
Add to variable products (if needed)
For variable products, copy and modify variable.php
template with similar conditional logic checking variant stock status.
Create functions.php helper (optional)
Add reusable function to functions.php for easier maintenance:
function show_waitlist_form($product_id = null) {
if (!$product_id) {
global $product;
$product_id = $product->get_id();
} else {
$product = wc_get_product($product_id);
}
if (!$product->is_in_stock()) {
echo '<div class="woocommerce-waitlist-form">';
echo '<h3>Get notified when back in stock</h3>';
echo '<form action="https://waitlister.me/s/YOUR_KEY" method="POST">';
echo '<input type="email" name="email" placeholder="Your email" required>';
echo '<input type="hidden" name="product_name" value="' . esc_attr($product->get_name()) . '>';
echo '<input type="hidden" name="product_id" value="' . esc_attr($product_id) . '>';
echo '<button type="submit" class="button">Notify Me</button>';
echo '</form>';
echo '</div>';
}
}
// Use in templates:
// show_waitlist_form();
Whitelist your store domain
In Waitlister → Settings → Configure → Whitelisted domains, add your WordPress/WooCommerce store URL.
Test with out-of-stock products
Set a product to out of stock in WooCommerce. Visit the product page, verify the waitlist form appears, submit a test signup, and check Waitlister dashboard.
Need more details?
Check out our complete form action endpoint documentation.
View full documentationCommon issues & solutions
Quick fixes for WooCommerce-specific problems
Verify the Waitlister script is in footer.php before </body> tag. For template method, ensure you're editing the correct template file and the product is actually out of stock. Check that template overrides are in the right directory.
Check your conditional logic uses ! $product->is_in_stock() correctly. Verify WooCommerce stock management is enabled for the product. Clear all caches (WordPress, WooCommerce, page cache plugins).
Your theme CSS may be interfering. Add more specific CSS selectors or use !important flags. Inspect with browser DevTools to see which styles are being applied or overridden.
Ensure template files are in correct directory: wp-content/themes/your-theme/woocommerce/ (not in plugin directory). Clear WooCommerce template cache. Check file permissions.
Verify hidden input fields have correct PHP template tags. Check that $product object is available in template scope. View page source to confirm values are populated.
Variable products require separate template (variable.php). Check stock status at variant level, not parent product level. Consider using embed method for variable products - it's simpler.
Whitelist your WooCommerce store domain in Waitlister settings. Check form action URL has correct waitlist key. Test from actual domain, not localhost (unless whitelisted).
Use child theme for all customizations. Never edit parent theme files directly. WooCommerce template overrides in child theme won't be affected by theme updates.
Ensure shortcode function is in functions.php of active theme (or child theme). Check function name doesn't conflict with other plugins. Verify shortcode is registered with add_shortcode().
Deactivate other waitlist plugins - they may conflict. Clear all caches. Test with default WordPress theme (Storefront) to isolate theme issues.
Common questions
About WooCommerce integration
Yes, for most stores. No monthly plugin fees (waitlist plugins charge $49-99/year), no database bloat, no plugin conflicts, and no WooCommerce updates breaking functionality. You own your data with CSV export anytime.
Yes! Perfect for subscription products, membership boxes, or recurring products. Collect interest before launching subscription tiers or when subscription slots are full.
Waitlister captures the interest. When you restock, export the waitlist CSV and send notification emails via WooCommerce Email, Klaviyo, or Mailchimp with product links and purchase CTAs.
Yes! Works with all WooCommerce themes - Flatsome, Astra, Divi, Storefront, OceanWP, Avada, and all custom themes. Both integration methods are theme-agnostic.
Yes, but requires more complex template customization to handle variant-level stock. We recommend using the embed method (shortcode) for variable products - much simpler to implement.
Absolutely! Create separate waitlists in Waitlister (each with unique key) for different products or product categories. Or use one waitlist and track products via hidden form fields.
Export waitlist from Waitlister to CSV, then import into WooCommerce Email Marketing, Klaviyo, Mailchimp, or any email tool. Send targeted restock notifications with coupon codes for conversion.
No! Zero database impact means your store stays fast. The Waitlister script is under 2KB and loads asynchronously. Much lighter than typical WooCommerce plugins.
Yes! Use waitlists when booking slots are full. Collect interest for fully-booked services, then notify customers when new slots open up. Great for service-based WooCommerce stores.
Absolutely! Perfect for pre-orders. Gauge interest before manufacturing, validate demand, and collect customer emails. Launch pre-orders with guaranteed sales data.
Waitlister is GDPR compliant. Add a consent checkbox to your form if needed. You can delete customer data anytime. Export and delete functions available in dashboard.
Yes! Each site in your multisite network can have its own waitlist (separate keys), or share one waitlist across multiple stores. Your choice based on business needs.
Get started for free
Start collecting sign ups for your
product launch in minutes — no coding required.