Hey Funnelish fam ![]()
Sometimes customers don’t notice that “S” (Small) is selected by default in your product variants — and they end up ordering the wrong size
.
This can lead to returns and refund requests… which nobody likes!
So in this tutorial, we’ll fix that by making sure:
- No variant is pre-selected (so nothing like “S” is checked by default).
- Customers must select a variant manually before they can click “Complete My Order.”
What this fix does
Removes all default selected sizes (or colors, etc.).
Stops checkout until a variant is chosen.
Works perfectly inside your Funnelish checkout step.
Example
Let’s say your product list looks like this:
1x Foot Sleeve – Size S, M, L, XL, 2XL, 3XL
Normally, “S” might already be selected when the page loads.
After adding this code ![]()
all sizes will be unselected by default,
and your buyer must click their size before completing checkout.
How to Add This to Your Funnelish Checkout Step
- Go to your Funnelish Editor
- Click on your Checkout Step
- From the left panel, scroll down to:
Custom Code → Custom CSS/JS → Body HTML - Paste the code below

- Click Save & Publish
The Full Code
<script>
document.addEventListener("DOMContentLoaded", function() {
// 1️⃣ Remove all default selected variants properly
document.querySelectorAll(".pl-variant-option.selected").forEach(opt => {
opt.classList.remove("selected"); // remove visual highlight
const input = opt.querySelector("input[type='radio']");
if (input) {
input.checked = false; // uncheck the radio
// dispatch change event so Funnelish updates the order summary
input.dispatchEvent(new Event("change", { bubbles: true }));
}
});
// 2️⃣ Intercept the "COMPLETE MY ORDER" button
const orderBtn = document.querySelector('a.btn[href="#submit-step"]');
if (orderBtn) {
orderBtn.addEventListener("click", function(e) {
const selectedProduct = document.querySelector(".pl-item.selected");
if (selectedProduct) {
const variantGroups = selectedProduct.querySelectorAll(".pl-variant-options");
let allPicked = true;
variantGroups.forEach(group => {
if (!group.querySelector("input[type='radio']:checked")) {
allPicked = false;
}
});
if (!allPicked) {
e.preventDefault(); // stop navigation
alert("Please select your size before completing your order.");
}
}
});
}
});
</script>
Bonus Tip:
You can change the alert text to match your product.
For example:
alert("Please select your color and size before checkout!");
Tested On
Funnelish v2 Product List (.pl-item)
Works for single product checkouts
Compatible with size, color, and style variants
Final Words
That’s it! ![]()
Now your customers can’t skip variant selection — saving you from unnecessary returns and making your checkout process more professional.