www.cupshe.com
Open in
urlscan Pro
23.227.38.74
Public Scan
Submitted URL: http://shrsl.com/3goj9
Effective URL: https://www.cupshe.com/collections/all-sales?sscid=81k6_t8ygu&utm_campaign=2656568&utm_source=shareasale&utm_medium=aff...
Submission: On August 26 via manual from CH — Scanned from US
Effective URL: https://www.cupshe.com/collections/all-sales?sscid=81k6_t8ygu&utm_campaign=2656568&utm_source=shareasale&utm_medium=aff...
Submission: On August 26 via manual from CH — Scanned from US
Form analysis
13 forms found in the DOM<form class="popup_normal_sub" id="popupNewsletter" style="display: block;">
<input name="source" type="hidden" value="popup">
<input name="shopId" type="hidden" value="1">
<input type="email" id="sendEmail_order" name="email" class="Form__Input popupEmailBlur" required="required" aria-label="Enter your email" placeholder="Email address">
<p class="popup_error"></p>
<p class="fetch_popup_error" style="display: none;">Oops, subscription failed, please try again.</p>
</form>
POST //cupshe.us10.list-manage.com/subscribe/post-json?u=45662aafff5878a283c234bbd&id=5596c73491&c=?
<form method="post" action="//cupshe.us10.list-manage.com/subscribe/post-json?u=45662aafff5878a283c234bbd&id=5596c73491&c=?" id="newsletter-popup2" accept-charset="UTF-8" class="NewsletterPopup__Form" target="nm_iframe"><input type="hidden"
name="form_type" value="customer"><input type="hidden" name="utf8" value="✓"><input name="contact[tags]" type="hidden" value="newsletter-popup">
<input type="email" id="sendEmail_order2" name="EMAIL" class="Form__Input" required="required" aria-label="Enter your email" placeholder="Enter your email">
<a style="font-size: 12px;text-align: left; margin: 12px 0px;" href="">
</a>
<button class="Form__Submit Button Button--primary Button--full" type="submit">Subscribe</button>
</form>
Name: create_customer — POST /account
<form method="post" action="/account" id="create_customer" accept-charset="UTF-8" name="create_customer" class="Form Form--spacingTight signUpPart"><input type="hidden" name="form_type" value="create_customer"><input type="hidden" name="utf8"
value="✓">
<header class="Form__Header loginPcShow" style="margin-bottom:24px;">
<h1 class="Form__Title Heading r-h1 fwb fs30 pc mb32" id="title">SIGN UP</h1>
</header>
<!-- 邮箱 -->
<div class="Form__Item">
<input type="email" class="Form__Input" onclick="accountRegisterGaClick('input::Email');" name="customer[email]" aria-label="Email address" placeholder="Email address" required="required" onfocus="clearValid(event)" onblur="validInput(event)">
<p class="error-msg"></p>
<label class="Form__FloatingLabel">Email address</label>
</div>
<!-- 密码 -->
<div class="Form__Item">
<input type="password" class="Form__Input" onclick="accountRegisterGaClick('input::Password');" name="customer[password]" aria-label="Password" placeholder="Password" required="required" id="pwd1" onfocus="clearValid(event)"
onblur="validInput(event)">
<p class="error-msg"></p>
<label class="Form__FloatingLabel">Password</label>
</div>
<!-- 确认密码 -->
<div class="Form__Item ">
<input type="password" class="Form__Input" onclick="accountRegisterGaClick('input::Comfirm Password');" placeholder="Confirm Password" name="confirmPwd" id="pwd2" onfocus="clearValid(event)" onblur="validInput(event)">
<p class="error-msg"></p>
<label class="Form__FloatingLabel">Confirm Password</label>
</div>
<div style="display: none;">
<input type="hidden" name="customer[accepts_marketing]" value="">
<input id="checkboxForMarket" type="checkbox" checked="" name="customer[accepts_marketing]">
</div><input id="referrer" class="referrer" type="hidden" name="return_to" value="https://www.cupshe.com/collections/all-sales?sscid=81k6_t8ygu&utm_campaign=2656568&utm_source=shareasale&utm_medium=affiliate"><!-- 隐私 -->
<div class="Form__Item tal register_checkbox aifs mb8 " style="display: flex;align-items: flex-start ">
<input id="checkboxForCustomer" type="checkbox" checked="" name="customer[tags]" value="newsletter, newsletter-signup" onclick="accountRegisterGaClick('checkbox::I agree');">
<label for="checkboxForCustomer" class="checkLabel">I'd like to receive exclusive discounts and news from Cupshe.</label>
</div>
<div class="Form__Item tal register_checkbox aifs" style="display: flex;align-items: flex-start ">
<input id="checkPolicy" type="checkbox">
<label for="checkPolicy" class="checkLabel">I agree to Cupshe <a class="tdu" href="https://www.cupshe.com/pages/terms-and-conditions" onclick="accountRegisterGaClick('url::Terms & Conditions');">Terms & Conditions</a> and <a onclick="accountRegisterGaClick('url::Privacy Policy');" class="tdu" href="https://www.cupshe.com/pages/privacy-policy">Privacy
Policy</a></label>
</div>
<div id="registerSubmitCopy" onclick="accountRegisterGaClick('btn::BE A SUNCHASER');" class="Form__Submit Button Button--primary Button--full " style="margin-top:24px; text-transform: uppercase;cursor: pointer;">JOIN NOW </div>
<button id="registerSubmit" type="submit" class="Form__Submit Button Button--full" style="margin-top:30px;background: black;color: white; text-transform: uppercase;display:none">Create Account</button>
<p class=" bottom desc df aic jcc" style="color: #666;"> Already have an account? <a class="tdu ffsb" onclick="linkToSign();accountLoginGaView();accountRegisterGaClick('btn::SIGN IN');"> SIGN IN </a><i class="icon-right"></i>
</p>
<script>
function linkToSign() {
$(".popupBody #register").css("display", "none")
$(".popupBody #login").css("display", "flex")
}
var isPopup = 'true'
var activityName = ""
$(function() {
if (isPopup == 'true' || isPopup == true) {
$("#referrer").val(location.href)
$("#customerTags").val('register-popup,newsletter-registerpopup')
}
$("#checkboxForCustomer").change(function() {
$("#checkboxForMarket").attr("checked", $(this).prop('checked'))
if (isPopup == true) {
addTags()
}
});
$("#checkPolicy").change(function() {
var isCheck = $(this).prop('checked')
if (isCheck) {
$(this).parent().removeClass('error')
$("#registerSubmitCopy").removeClass('Button--disabled')
}
if (isPopup == true) {
policyGA($(this))
}
})
})
function registerSubmit() {
if ($("#pwd2").val() && $("#pwd2").val() != $("#pwd1").val()) {
alert("Your passwords do not match, please try again.")
$(".Alert__ErrorItem").css("display", "block")
} else {
$("#registerSubmit").click()
}
gtag('event', 'registered', {
'event_category': 'engagement',
'event_label': 'submit'
});
}
// 注册打tags
function addTags() {
var isChecked = $("#checkboxForCustomer").prop("checked")
if (isChecked) {
$("#customerTags").val('register-popup,newsletter-registerpopup')
} else {
$("#customerTags").val('register-popup')
}
gtag('event', 'click', {
'event_category': 'LoginRegisterPopup',
'event_action': `btn::${isChecked ? 'check':'cancel'}`,
'event_label': `${activityName}::SubscriptionCheckbox`
});
}
// 政策埋点
function policyGA(target) {
var isCheck = target.prop('checked')
var event_action = ''
if (isCheck) {
event_action = 'btn::check'
} else {
event_action = 'btn::cancel'
}
gtag('event', 'click', {
'event_category': 'LoginRegisterPopup',
'event_action': event_action,
'event_label': `${activityName}::PolicyCheckbox`
});
}
$("#registerSubmitCopy").click(function() {
var isCheck = $("#checkPolicy").prop('checked')
if (!isCheck) {
$("#checkPolicy").parent().addClass('error')
return false
}
$("#checkPolicy").parent().removeClass('error')
var v1 = validInput(null, 'create_customer', {
name: 'customer[email]',
value: $("#create_customer input[name='customer[email]']").val()
})
var v2 = validInput(null, 'create_customer', {
name: 'customer[password]',
value: $("#create_customer input[name='customer[password]']").val()
})
var v3 = validInput(null, 'create_customer', {
name: 'confirmPwd',
value: $("#create_customer input[name='confirmPwd']").val()
})
if ($("#pwd2").val() && $("#pwd2").val() != $("#pwd1").val()) {
alert("Your passwords do not match, please try again.")
$(".Alert__ErrorItem").css("display", "block")
} else if (v1 && v2 && v3) {
$("#registerSubmit").click()
}
})
</script>
</form>
Name: login — POST /account/login
<form method="post" action="/account/login" id="customer_login" accept-charset="UTF-8" name="login" class="Form Form--spacingTight
from_new signInPart customer_login_form"><input type="hidden" name="form_type" value="customer_login"><input type="hidden" name="utf8" value="✓">
<header class="Form__Header pc">
<h1 class="Form__Title Heading u-h1" id="login_title">SIGN IN</h1>
</header>
<!-- 邮箱 -->
<div class="Form__Item">
<input type="email" class="Form__Input" name="customer[email]" onclick="accountLoginGaClick('input::Email');" placeholder="Email address" aria-label="Email address" onfocus="clearValid(event)" onblur="validInput(event)">
<p class="error-msg"></p>
<label class="Form__FloatingLabel">Email address</label>
</div>
<!-- 密码 -->
<div class="Form__Item mb8">
<input type="password" class="Form__Input" name="customer[password]" onclick="accountLoginGaClick('input::Password');" placeholder="Password" aria-label="Password" onfocus="clearValid(event)" onblur="validInput(event)">
<p class="error-msg"></p>
<label class="Form__FloatingLabel">Password</label>
</div>
<div class="tar forget">
<a onclick="forGetPassword();accountResetGaView();accountLoginGaClick('url::Forgot password');" class="Link Link--primary tdu" href="/account/login#recover">
Forgot password?
</a>
</div>
<!-- 登录报错 --><input id="referrer" class="referrer" type="hidden" name="return_to" value="https://www.cupshe.com/collections/all-sales?sscid=81k6_t8ygu&utm_campaign=2656568&utm_source=shareasale&utm_medium=affiliate"><button
onclick="loginSubmit();accountLoginGaClick('btn::SIGN IN');" class="Form__Submit Button--primary Button Button--full mt40"> SIGN IN </button>
<!-- 触发提交 -->
<button id="loginBtn" type="submit" class="Form__Submit Button Button--primary Button--full" style="display:none">SIGN IN</button>
<p class=" bottom desc"> Don't have an account? <a class="tdu ffsb" onclick="linkToRegister();accountRegisterGaView();accountLoginGaClick('url::JOIN NOW');"> SIGN UP</a><i class="icon-right"></i>
</p>
<script>
function linkToRegister() {
$(".popupBody #register").css("display", "flex")
$(".popupBody #login").css("display", "none")
}
document.querySelector('#referrer').setAttribute('value', window.location.href)
function loginSubmit() {
var v1 = validInput(null, 'customer_login', {
name: 'customer[email]',
value: $("#customer_login input[name='customer[email]']").val()
})
var v2 = validInput(null, 'customer_login', {
name: 'customer[password]',
value: $("#customer_login input[name='customer[password]']").val()
})
if (v1 && v2) {
$("#loginBtn").click()
}
}
</script>
</form>
POST /account/recover
<form method="post" action="/account/recover" accept-charset="UTF-8"><input type="hidden" name="form_type" value="recover_customer_password"><input type="hidden" name="utf8" value="✓"></form>
Name: recover — POST /account/recover
<form method="post" action="/account/recover" id="recover_customer_password" accept-charset="UTF-8" name="recover" class="Form Form--spacingTight from_new"><input type="hidden" name="form_type" value="recover_customer_password"><input type="hidden"
name="utf8" value="✓">
<header class="Form__Header">
<h1 class="Form__Title Heading u-h1">RESET PASSWORD</h1>
<p class="Form__Legend">Please enter your email:</p>
</header>
<div class="Form__Item">
<input type="email" class="Form__Input" name="email" required="required" onclick="accountResetGaClick('input::Email');" placeholder="Email" aria-label="Email" autofocus="">
<label class="Form__FloatingLabel">Email</label>
</div>
<div class="Form__Item">
<button style="background: black; color: white;" type="submit" onclick="accountResetGaClick('btn::RESET');" class="Form__Submit Button Button--full">RESET</button>
</div>
<div class="Form__Hint Form__Hint--center">
<span class="Text--subdued">Remember your password?</span>
<button type="button" class="Link Link--secondary goToSignIn tdu" onclick="backLogin();accountResetGaClick('url::Back to login');accountLoginGaView();">Back to login</button>
</div>
</form>
Name: login — POST /account/login
<form method="post" action="/account/login" id="customer_login_new" accept-charset="UTF-8" name="login" class="Form Form--spacingTight
from_new signInPart customer_login_form"><input type="hidden" name="form_type" value="customer_login"><input type="hidden" name="utf8" value="✓">
<header class="Form__Header pc">
<h1 class="Form__Title Heading u-h1" id="login_title">SIGN IN</h1>
</header>
<!-- 邮箱 -->
<div class="Form__Item">
<input type="email" class="Form__Input" name="customer[email]" onclick="accountLoginGaClick('input::Email');" placeholder="Email address" aria-label="Email address" onfocus="clearValid(event)" onblur="validInput(event)">
<p class="error-msg"></p>
<label class="Form__FloatingLabel">Email address</label>
</div>
<!-- 密码 -->
<div class="Form__Item mb8">
<input type="password" class="Form__Input" name="customer[password]" onclick="accountLoginGaClick('input::Password');" placeholder="Password" aria-label="Password" onfocus="clearValid(event)" onblur="validInput(event)">
<p class="error-msg"></p>
<label class="Form__FloatingLabel">Password</label>
</div>
<div class="tar forget">
<a onclick="forGetPassword();accountResetGaView();accountLoginGaClick('url::Forgot password');" class="Link Link--primary tdu">
Forgot password?
</a>
</div>
<!-- 登录报错 --><input id="referrer" class="referrer" type="hidden" name="return_to" value="https://www.cupshe.com/collections/all-sales?sscid=81k6_t8ygu&utm_campaign=2656568&utm_source=shareasale&utm_medium=affiliate"><button
onclick="loginSubmitNew();accountLoginGaClick('btn::SIGN IN');" class="Form__Submit Button--primary Button Button--full mt40"> SIGN IN </button>
<!-- 触发提交 -->
<button id="loginBtn" type="submit" class="Form__Submit Button Button--primary Button--full" style="display:none">SIGN IN</button>
<p class="mobile bottom desc"> Don't have an account? <a class="tdu ffsb" onclick="back('register');accountRegisterGaView();accountLoginGaClick('url::JOIN NOW');"> SIGN UP</a><i class="icon-right"></i>
</p>
<script>
document.querySelector('#referrer').setAttribute('value', window.location.href)
function loginSubmitNew() {
var v1 = validInput(null, 'customer_login', {
name: 'customer[email]',
value: $("#customer_login_new input[name='customer[email]']").val()
})
var v2 = validInput(null, 'customer_login', {
name: 'customer[password]',
value: $("#customer_login_new input[name='customer[password]']").val()
})
console.log("v1", v1)
console.log("v2", v2)
if (v1 && v2) {
$("#loginBtn").click()
}
}
</script>
</form>
Name: create_customer — POST /account
<form method="post" action="/account" id="create_customer_new" accept-charset="UTF-8" name="create_customer" class="Form Form--spacingTight signUpPart"><input type="hidden" name="form_type" value="create_customer"><input type="hidden" name="utf8"
value="✓">
<header class="Form__Header loginPcShow" style="margin-bottom:24px;">
<h1 class="Form__Title Heading r-h1 fwb fs30 pc mb32" id="title">SIGN UP</h1>
<p class=" fwb mb8 lh15 ls0">BECOME A SUNCHASER</p>
<p class="fw300 mb6 lh15 ls0"> You'll enjoy exclusive deals, offers and rewards. </p>
<p class="fw300 lh15 mb8 ls0"> Join now to earn <b class="ls0" style="color:#B78126">300 points</b>! </p>
</header>
<!-- 邮箱 -->
<div class="Form__Item">
<input type="email" class="Form__Input" onclick="accountRegisterGaClick('input::Email');" name="customer[email]" aria-label="Email address" placeholder="Email address" required="required" onfocus="clearValid(event)" onblur="validInput(event)">
<p class="error-msg"></p>
<label class="Form__FloatingLabel">Email address</label>
</div>
<!-- 密码 -->
<div class="Form__Item">
<input type="password" class="Form__Input" onclick="accountRegisterGaClick('input::Password');" name="customer[password]" aria-label="Password" placeholder="Password" required="required" id="pwd1" onfocus="clearValid(event)"
onblur="validInput(event)">
<p class="error-msg"></p>
<label class="Form__FloatingLabel">Password</label>
</div>
<!-- 确认密码 -->
<div class="Form__Item ">
<input type="password" class="Form__Input" onclick="accountRegisterGaClick('input::Comfirm Password');" placeholder="Confirm Password" name="confirmPwd" id="pwd2" onfocus="clearValid(event)" onblur="validInput(event)">
<p class="error-msg"></p>
<label class="Form__FloatingLabel">Confirm Password</label>
</div>
<div style="display: none;">
<input type="hidden" name="customer[accepts_marketing]" value="">
<input id="checkboxForMarket" type="checkbox" checked="" name="customer[accepts_marketing]">
</div><input id="referrer" class="referrer" type="hidden" name="return_to" value="https://www.cupshe.com/collections/all-sales?sscid=81k6_t8ygu&utm_campaign=2656568&utm_source=shareasale&utm_medium=affiliate"><input type="hidden"
name="customer[tags]" id="customerTags" value="newsletter, newsletter-signup">
<!-- 隐私 -->
<div class="Form__Item tal register_checkbox aifs mb8 " style="display: flex;align-items: flex-start ">
<input id="checkboxForCustomer" type="checkbox" checked="" onclick="accountRegisterGaClick('checkbox::I agree');">
<label for="checkboxForCustomer" class="checkLabel">I'd like to receive exclusive discounts and news from Cupshe.</label>
</div>
<div class="Form__Item tal register_checkbox aifs" style="display: flex;align-items: flex-start ">
<input id="checkPolicy" type="checkbox">
<label for="checkPolicy" class="checkLabel">I agree to Cupshe <a class="tdu" href="https://www.cupshe.com/pages/terms-and-conditions" onclick="accountRegisterGaClick('url::Terms & Conditions');">Terms & Conditions</a> and <a onclick="accountRegisterGaClick('url::Privacy Policy');" class="tdu" href="https://www.cupshe.com/pages/privacy-policy">Privacy
Policy</a></label>
</div>
<div id="registerSubmitCopy" onclick="accountRegisterGaClick('btn::BE A SUNCHASER');" class="Form__Submit Button Button--primary Button--full " style="margin-top:24px; text-transform: uppercase;cursor: pointer;">Create Account </div>
<button id="registerSubmit" type="submit" class="Form__Submit Button Button--full" style="margin-top:30px;background: black;color: white; text-transform: uppercase;display:none">Create Account</button>
<p class="mobile bottom desc df aic jcc" style="color: #666;"> Already have an account? <a class="tdu ffsb" onclick="back('login');accountLoginGaView();accountRegisterGaClick('btn::SIGN IN');"> SIGN IN </a><i class="icon-right"></i>
</p>
<script>
var isPopup = ''
var activityName = ""
$(function() {
if (isPopup == 'true' || isPopup == true) {
$("#referrer").val(location.href)
$("#customerTags").val('register-popup,newsletter-registerpopup')
}
$("#checkboxForCustomer").change(function() {
$("#checkboxForMarket").attr("checked", $(this).prop('checked'))
if (isPopup == true) {
addTags()
}
});
$("#checkPolicy").change(function() {
var isCheck = $(this).prop('checked')
if (isCheck) {
$(this).parent().removeClass('error')
$("#registerSubmitCopy").removeClass('Button--disabled')
}
if (isPopup == true) {
policyGA($(this))
}
})
})
function registerSubmit() {
if ($("#pwd2").val() && $("#pwd2").val() != $("#pwd1").val()) {
alert("Your passwords do not match, please try again.")
$(".Alert__ErrorItem").css("display", "block")
} else {
$("#registerSubmit").click()
}
gtag('event', 'registered', {
'event_category': 'engagement',
'event_label': 'submit'
});
}
// 注册打tags
function addTags() {
var isChecked = $("#checkboxForCustomer").prop("checked")
if (isChecked) {
$("#customerTags").val('register-popup,newsletter-registerpopup')
} else {
$("#customerTags").val('register-popup')
}
gtag('event', 'click', {
'event_category': 'LoginRegisterPopup',
'event_action': `btn::${isChecked ? 'check':'cancel'}`,
'event_label': `${activityName}::SubscriptionCheckbox`
});
}
// 政策埋点
function policyGA(target) {
var isCheck = target.prop('checked')
var event_action = ''
if (isCheck) {
event_action = 'btn::check'
} else {
event_action = 'btn::cancel'
}
gtag('event', 'click', {
'event_category': 'LoginRegisterPopup',
'event_action': event_action,
'event_label': `${activityName}::PolicyCheckbox`
});
}
$(".login-container #registerSubmitCopy").click(function() {
var isCheck = $(".login-container #checkPolicy").prop('checked')
if (!isCheck) {
$(".login-container #checkPolicy").parent().addClass('error')
return false
}
$(".login-container #checkPolicy").parent().removeClass('error')
var v1 = validInput(null, 'create_customer', {
name: 'customer[email]',
value: $(".login-container #create_customer_new input[name='customer[email]']").val()
})
var v2 = validInput(null, 'create_customer', {
name: 'customer[password]',
value: $(".login-container #create_customer_new input[name='customer[password]']").val()
})
var v3 = validInput(null, 'create_customer', {
name: 'confirmPwd',
value: $(".login-container #create_customer_new input[name='confirmPwd']").val()
})
if ($(".login-container #pwd2").val() && $(".login-container #pwd2").val() != $(".login-container #pwd1").val()) {
alert("Your passwords do not match, please try again.")
$(".login-container .Alert__ErrorItem").css("display", "block")
} else if (v1 && v2 && v3) {
$(".login-container #registerSubmit").click()
}
})
</script>
</form>
POST /cart
<form class="Cart Drawer__Content" action="/cart" method="POST" novalidate="">
<div class="Drawer__Main" data-scrollable="">
<div class="Cart__ShippingNotice Text--subdued">
<div class="Drawer__Container">
<p>❤️Free Shipping 1st order! No minimum | code: FS29</p>
</div>
</div><!-- <p class="Cart__Empty Heading u-h5">Your bag is empty. Subscribe & Get Extra 12% Off</p> -->
<!-- 无数据更改 -->
<div style="position: absolute;width: 230px;top: 50%;left: 50%;transform: translate(-50%, -50%);text-align: center;">
<img src="//cdn.shopify.com/s/files/1/0784/0207/t/365/assets/nodata.png?v=86557587314082219771646104326" width="120" alt="">
<p style="font-size:14px;color:#828282;margin-top:31px">Your bag is empty. Subscribe & Get Extra 12% Off</p>
<a href="https://www.cupshe.com/collections/popular-style-gallery?icn=addbag&ici=emptybag" class="Form__Submit Button Button--primary Button--full" style="margin-top:85px;height:41px;padding: 12px 28px;">Discover Now</a>
</div>
<!-- 无数据更改 结束 -->
</div>
</form>
<form class="footerNewsletter2" id="footerNewsletter">
<input name="source" type="hidden" value="footer">
<input name="shopId" type="hidden" value="1">
<input id="sendEmail_order4" type="email" name="email" style="border: 1px solid #999;width: 63%;float: left;margin-right: 0px;background: white;" class="Form__Input footerEmailBlur" aria-label="Email address" placeholder="Email address"
required="">
<div>
<button class="Form__Submit Button Button--primary" onclick="sendFooter_order(); return false" style="width: 34%;margin: 0;padding: 13px 10px 14px;" type="submit">SUBSCRIBE</button>
</div>
</form>
<form class="footerNewsletter1" id="footerNewsletter">
<input name="source" type="hidden" value="footer">
<input name="shopId" type="hidden" value="1">
<input id="sendEmail_order4" name="email" style="width: 70%;float: left;margin-right: 0px;background: white;border: 1px solid #999;" class="Form__Input footerEmailBlur" aria-label="Email address" placeholder="Email address">
<div>
<button class="Form__Submit Button Button--primary" onclick="sendFooter_order(); return false" style="width: 30%;margin: 0;padding: 12px 10px;">SUBSCRIBE</button>
</div>
</form>
Name: GET — /search
<form action="/search" name="GET" role="search" class="Search__Form">
<input type="search" oninput="searchInput()" class="Search__Input Heading" name="q" autocomplete="off" autocorrect="off" autocapitalize="off" placeholder="Start Typing Here" autofocus="">
<input type="hidden" name="type" value="product">
</form>
<form class="needsclick klaviyo-form klaviyo-form-version-cid_1 kl-private-reset-css-Xuajs1" data-testid="klaviyo-form-HQNMZZ" novalidate="" tabindex="-1"
style="display: flex; flex-direction: row; box-sizing: border-box; width: 100%; overflow: visible; max-width: 450px; margin: 0px auto; border-radius: 2px; border-style: none; border-width: 0px; border-color: rgb(0, 0, 0); background-color: rgba(159, 157, 157, 0); background-image: url("https://d3k81ch9hvuctc.cloudfront.net/company/LjZex3/images/6c061fe9-4358-43f4-842d-371fa47d4654.jpeg"); background-repeat: no-repeat; background-size: cover; background-position: 50% 50%; padding: 10px 20px;">
<div class="needsclick kl-private-reset-css-Xuajs1" style="display: flex; flex-direction: column; width: 100%; margin: 0px; padding: 0px; justify-content: center;">
<div data-testid="form-row" class="needsclick kl-private-reset-css-Xuajs1" style="display: flex; flex-direction: row; align-items: stretch; position: relative;">
<div component="[object Object]" data-testid="form-component" class="needsclick kl-private-reset-css-Xuajs1"
style="display: flex; justify-content: flex-start; padding: 20px 6px 15px; position: relative; background-color: rgba(255, 255, 255, 0); flex: 1 0 0px;">
<div class="kl-private-reset-css-Xuajs1 go4004593989" style="width: 100%;">
<p style="text-align:center;font-size:14px;font-family:Arial, 'Helvetica Neue', Helvetica, sans-serif;font-weight:400;"><span class="ql-font-helvetica"
style="color:rgb(255, 255, 255);font-size:18px;font-family:Helvetica, Arial, sans-serif;font-weight:400;">SUBSCRIBE FOR AN EXTRA</span><span class="ql-font-helvetica"
style="font-size:20px;font-family:Helvetica, Arial, sans-serif;font-weight:400;"> </span><span class="ql-font-helvetica" style="font-size:20px;color:rgb(245, 165, 3);font-family:Helvetica, Arial, sans-serif;font-weight:bold;">15%
OFF</span><span class="ql-font-helvetica" style="font-size:18px;font-family:Helvetica, Arial, sans-serif;font-weight:400;"> </span><span class="ql-font-helvetica"
style="font-size:18px;color:rgb(255, 255, 255);font-family:Helvetica, Arial, sans-serif;font-weight:400;">$75+</span></p>
</div>
</div>
</div>
<div data-testid="form-row" class="needsclick kl-private-reset-css-Xuajs1" style="display: flex; flex-direction: row; align-items: stretch; position: relative;">
<div component="[object Object]" data-testid="form-component" class="needsclick kl-private-reset-css-Xuajs1" style="display: flex; justify-content: flex-start; padding: 5px 6px 15px; position: relative; flex: 1 0 0px;">
<div class="kl-private-reset-css-Xuajs1 go4004593989" style="width: 100%;">
<p style="text-align:center;font-size:14px;font-family:Arial, 'Helvetica Neue', Helvetica, sans-serif;font-weight:400;"><span class="ql-font-helvetica"
style="color:rgb(255, 255, 255);font-size:14px;font-family:Helvetica, Arial, sans-serif;font-weight:400;">Get an exclusive offer when you sign up, plus early access to even more deals, new arrivals, style tips and more.</span></p>
</div>
</div>
</div>
<div data-testid="form-row" class="needsclick kl-private-reset-css-Xuajs1" style="display: flex; flex-direction: row; align-items: stretch; position: relative;">
<div component="[object Object]" data-testid="form-component" class="needsclick kl-private-reset-css-Xuajs1" style="display: flex; justify-content: flex-start; padding: 15px 6px 10px; position: relative; flex: 1 0 0px;">
<div class="needsclick kl-private-reset-css-Xuajs1" style="display: flex; flex-grow: 1; flex-direction: column; align-self: flex-end;"><input class="needsclick go2024679571 kl-private-reset-css-Xuajs1" type="text" tabindex="0"
placeholder="FIRST NAME" aria-label="FIRST NAME" aria-invalid="false" options="[object Object]"
style="box-sizing: border-box; border-radius: 2px; padding: 0px 0px 0px 16px; height: 40px; text-align: left; color: rgb(0, 0, 0); font-family: "Century Gothic", CenturyGothic, AppleGothic, sans-serif; font-size: 16px; font-weight: 400; letter-spacing: 0px; background-color: rgb(255, 255, 255); border: 1px solid rgb(180, 187, 195);">
<div class="needsclick kl-private-reset-css-Xuajs1" style="width: 100%; position: relative;"></div>
</div>
</div>
</div>
<div data-testid="form-row" class="needsclick kl-private-reset-css-Xuajs1" style="display: flex; flex-direction: row; align-items: stretch; position: relative;">
<div component="[object Object]" data-testid="form-component" class="needsclick kl-private-reset-css-Xuajs1" style="display: flex; justify-content: flex-start; padding: 10px 6px 15px; position: relative; flex: 1 0 0px;">
<div class="needsclick kl-private-reset-css-Xuajs1" style="display: flex; flex-grow: 1; flex-direction: column; align-self: flex-end;">
<div class="needsclick go1082645369 kl-private-reset-css-Xuajs1"
style="display: flex; flex-direction: row; align-items: center; box-sizing: border-box; border-radius: 2px; padding: 0px; height: 40px; text-align: left; font-family: "Century Gothic", CenturyGothic, AppleGothic, sans-serif; font-size: 16px; font-weight: 400; letter-spacing: 0px; background-color: rgb(255, 255, 255); border: 1px solid rgb(180, 187, 195);">
<button aria-label="Search Countries" type="button" class="needsclick kl-private-reset-css-Xuajs1"
style="display: flex; flex-direction: row; align-items: center; justify-content: space-between; width: 52px; height: 40px; cursor: pointer; padding-left: 10px; padding-right: 5px;"><img aria-label="United States" title="United States"
src="https://cdnjs.cloudflare.com/ajax/libs/flag-icon-css/4.1.4/flags/4x3/us.svg" style="display: inline-block; width: 1em; height: 1em; vertical-align: middle; border-radius: 3px;"><svg height="20" width="20" viewBox="0 0 20 20"
aria-hidden="true" focusable="false" class="" transform="" style="fill: rgb(180, 187, 195);">
<path
d="M4.516 7.548c0.436-0.446 1.043-0.481 1.576 0l3.908 3.747 3.908-3.747c0.533-0.481 1.141-0.446 1.574 0 0.436 0.445 0.408 1.197 0 1.615-0.406 0.418-4.695 4.502-4.695 4.502-0.217 0.223-0.502 0.335-0.787 0.335s-0.57-0.112-0.789-0.335c0 0-4.287-4.084-4.695-4.502s-0.436-1.17 0-1.615z">
</path>
</svg></button><input type="tel" data-testid="phoneNumberInput" autocomplete="tel" name="phone-number" tabindex="0" placeholder="Phone Number" aria-label="Phone Number" aria-invalid="false"
class="needsclick undefined kl-private-reset-css-Xuajs1"
style="border: none; text-align: left; color: rgb(0, 0, 0); font-family: "Century Gothic", CenturyGothic, AppleGothic, sans-serif; font-size: 16px; font-weight: 400; letter-spacing: 0px; background-color: rgba(0, 0, 0, 0); flex-grow: 1;">
</div>
<div class="needsclick kl-private-reset-css-Xuajs1" style="width: 100%; position: relative;"></div>
</div>
</div>
<div component="[object Object]" data-testid="form-component" class="needsclick kl-private-reset-css-Xuajs1" style="display: flex; justify-content: flex-start; padding: 10px 6px 15px; position: relative; flex: 0 1 auto;"><button
class="needsclick go952291206 kl-private-reset-css-Xuajs1" type="button" tabindex="0"
style="background: rgb(245, 165, 3); border-radius: 2px; border-style: none; border-color: rgb(0, 0, 0); border-width: 0px; color: rgb(255, 255, 255); font-family: Helvetica, Arial, sans-serif; font-size: 16px; font-weight: 700; letter-spacing: 2px; line-height: 1; white-space: normal; padding: 11px 10px; text-align: center; word-break: break-word; align-self: flex-end; cursor: pointer; height: auto;">SUBSCRIBE</button>
</div>
</div>
<div data-testid="form-row" class="needsclick kl-private-reset-css-Xuajs1" style="display: flex; flex-direction: row; align-items: stretch; position: relative;">
<div component="[object Object]" data-testid="form-component" class="needsclick kl-private-reset-css-Xuajs1" style="display: flex; justify-content: flex-start; padding: 20px 6px 15px; position: relative; flex: 1 0 0px;">
<div class="kl-private-reset-css-Xuajs1 go4004593989" style="width: 100%;">
<p style="text-align:justify;font-size:14px;font-family:Arial, 'Helvetica Neue', Helvetica, sans-serif;font-weight:400;"><span class="ql-font-helvetica"
style="color:rgb(255, 255, 255);font-size:12px;font-family:Helvetica, Arial, sans-serif;font-weight:400;">*By signing up via text, you agree to receive marketing messages at the number provided. Consent is not a condition of purchase.
Message and data rates may apply. Message frequency varies. Reply HELP for help or STOP to cancel. View our
</span><a href="https://www.cupshe.com/pages/privacy-policy" target="_blank" class="ql-font-helvetica" style="color:rgb(245, 165, 3);font-size:12px;font-family:Helvetica, Arial, sans-serif;font-weight:400;">Privacy Policy</a><span
class="ql-font-helvetica" style="color:rgb(54, 54, 54);font-size:12px;font-family:Helvetica, Arial, sans-serif;font-weight:400;"> </span><span class="ql-font-helvetica"
style="color:rgb(255, 255, 255);font-size:12px;font-family:Helvetica, Arial, sans-serif;font-weight:400;">and</span><span class="ql-font-helvetica"
style="color:rgb(54, 54, 54);font-size:12px;font-family:Helvetica, Arial, sans-serif;font-weight:400;">
</span><a href="https://www.cupshe.com/pages/terms-and-conditions" target="_blank" class="ql-font-helvetica" style="color:rgb(245, 165, 3);font-size:12px;font-family:Helvetica, Arial, sans-serif;font-weight:400;">Terms of Service</a><span
class="ql-font-helvetica" style="color:rgb(255, 255, 255);font-size:12px;font-family:Helvetica, Arial, sans-serif;font-weight:400;">.</span></p>
</div>
</div>
</div>
</div><input type="submit" tabindex="-1" value="Submit" style="display: none;">
</form>
Text Content
We use cookies to give you a better shopping experience. By continuing to use our services or create an account on our website, you agree to our Privacy Policy and Cookie Policy. I agree cancel Skip to content EXTRA 12% OFF EXTRA 12% OFF ❤️12% off first order ❤️FREE shipping first order ❤️First order is $0.99 for selected items YOU'RE ON THE LIST! ❤️Check your inbox for exclusive first order discounts Yay! You're back! Get ready to see some cute styles heading your way! Oops, subscription failed, please try again. GET COUPON SHOP NOW SHOP NOW Cupshe uses cookies. About our cookies policy. Subscribe SIGN UP Email address Password Confirm Password I'd like to receive exclusive discounts and news from Cupshe. I agree to Cupshe Terms & Conditions and Privacy Policy JOIN NOW Create Account Already have an account? SIGN IN SIGN IN Email address Password Forgot password? SIGN IN SIGN IN Don't have an account? SIGN UP RESET PASSWORD Please enter your email: Email RESET Remember your password? Back to login SIGN IN SIGN UP SIGN IN Email address Password Forgot password? SIGN IN SIGN IN Don't have an account? SIGN UP SIGN UP BECOME A SUNCHASER You'll enjoy exclusive deals, offers and rewards. Join now to earn 300 points! Email address Password Confirm Password I'd like to receive exclusive discounts and news from Cupshe. I agree to Cupshe Terms & Conditions and Privacy Policy Create Account Create Account Already have an account? SIGN IN * ACCOUNT SIGN IN SIGN UP * Order History * Track My Order * Sunchasers Club 👉New User Offer 🔥Hot Picks Fall Dresses 2022 Fall '22 Ready-to-Wear Clothing Tummy Control One Pieces ✨ High Waist Bikinis Women's Trendy Tops Rompers& Jumpsuits Homecoming Dresses Cupshe Top Rated 🏆 Cute Bathing Suits Casual Look Coverup & Dresses Full Coverage Wrap Swimwear New In FALL '22 View All New Fall 2022 Collection🍁 New In: Clothing * New In: Dresses * Wedding Guest Dresses * New In Clothing * New In: Women's Tops * New In: Jumpsuits * New In: Cover Ups * New In: Shoes & Accessories New In: Swim * New In: One Pieces * New In: Bikini Sets * New In: Bikini Separates * New In: Plus Size * Back to School Outfits * Mommy & Me * Kids Swimsuit New to Sale | Buy 1 Get 20% OFF Clothing👚 View All Clothing Fall Clothing 2022 Rompers & Jumpsuits Women's Tops & Shirts💗 New In Clothing Cute & Casual Outfits 💗 Dresses Bikinis One-pieces Coverups Bodysuits Accessories Shop by Occasion * Night out * Wedding * Every Day * Office * Sporty * Vacation * Party Shop by Styles * Sweaters & Cardigans * Two-piece Sets * Activewear * Sweatshirts & Hoodies * Pants & Shorts Bikinis View All Bikinis New In Bikinis Bikini Sets Bikini Separates High Waist Bikini Tankini Bikini Tops Bikini Bottoms Bikini Best Sellers Plus Size Bikini Kids Bikini Swimwear UP TO 70% OFF Smocked and Floral Swimsuits Top Styles * Underwire / Push Up * Triangle * Bandeau * Cross Back Bikinis * Bralette * Long Sleeve Swimsuits Bottom Styles * Mid Rise * Low Rise * Cheeky * Full Bottom Coverage Find your Perfect Fit MIX & MATCH Restock:Bikinis SS22 Trendy Color Bikini Sale One Pieces Swimsuits View All One Pieces New In One Pieces Tummy Control One Piece One Piece Best Sellers Plus Size One Piece Bodysuits Kids One Piece Swimwear UP TO 70% OFF Shop by Styles * Halter & Lace Up * Monokini / Cut Out * Adjustable Straps * Plunge Neck/ V-Neck * High Neck * Long Sleeve One Pieces * Long Torso Swimsuits Shop by Feature * Timeless Classic * Full Coverage Wrap Swimwear * Cute Bathing Suits * Cross Back One Piece * Trendy Features (Mesh , Shoulder) * Sporty Swimwear Restock: One Pieces Find Your Perfect Fit Swimwear Flash Sale Dresses View All Dresses New In Dresses ✨ Fall Dresses 2022 🍁 Summer Dresses 2022 Wedding Guest Dresses Beach Dresses Boho Dresses Dresses Best Sellers Maxi Dresses Midi Dresses Short Dresses Homecoming Dresses Dresses UP TO 80% OFF Shop by Occasion * Casual Dresses * Vacation Dresses * Going Out Dresses * House Party Dresses * Work Dresses Shop by Trends * Wrap Dresses * Long Sleeve Dresses * Ditsy Floral Dresses * Cami Dresses * White Dresses * Shirt Dresses * Black Dresses * Summer Sundresses Cover ups & Kimonos View All Cover Ups Kimonos New In Cover Ups ✨ Cover Ups Best Sellers Tunic Cover Ups Resort Wear Kaftan ✨ Coverup Dresses Coverup UP TO 80% OFF Shop by Styles * Beach Shirts & Tops * Beach Bottoms & Sarongs * Beach Two-pieces Shop by Trends * Floral & Print * White * Black * Crochet * Tassel & Embroidery * Beach Accessories Accessories View All Accessories All Shoes SHOES & ACCS FLASH SALE Bracelet& Earring Sunglasses & Bags Hats & Scarves Beach Blankets Swimming Rings Best Sellers View All Best Sellers One Piece Best Sellers Bikini Best Sellers Dresses Best Sellers Clothing Best Sellers Cover Ups Best Sellers Plus Size Best Sellers Shop by Mood * Classic Black Edit * Classic Stripes * Cupshe Exclusive * Animal/ Leopard Print * Boho Flair * One Shoulder Styles * Pink Vibes * Effortless Charming * The Y2K Edit: All Under $16.99 * Scalloped Swimsuits & Clothing * CUPSHE X JOJO FLETCHER * CUPSHE X TABRIA MAJORS SUMMER SALE View All Sales Final Sale | UP TO 70% OFF Flash Sale | UP TO 70% OFF BUY 3 GET 70% OFF Dresses UP TO 80% OFF Swimwear ALL 45% OFF Bodysuits Sale | Get 70% OFF New to Sale | 20% OFF Bikini Sale One Piece Sale Dresses Sale Cover Ups Sale Plus Size Sale Clothing Sale Shoes Sale Shop by Price * All Under $9.99 * All Under $14.99 * All Under $19.99 * All Under $24.99 Cupshe Campaigns #Find Your Perfect Fit 🩱 #MIAMI POP UP #CUPSHE X TABRIA MAJORS #Sea to Shining Sea #CUPSHE X JOJO FLETCHER #Summer Dresses of Love #Summer Glow Up #SS22 Trendy Color #Island Sun #Moroccan Daydream 🚚 FREE SHIPPING CONTIGUOUS US $49+ ☎️ CONTACT US 24/7 United States - USD $ Canada - CAD $ Australia - AUD $ United Kingdom - £ GBP Deutschland - € EUR France - € EUR New Zealand - NZD $ España - € EUR Singapore - S $ Mexico - $ MXN USD CAD EUR GBP AUD BAG ❤️Free Shipping 1st order! No minimum | code: FS29 Your bag is empty. Subscribe & Get Extra 12% Off Discover Now 🎉Labor Day Pre-Sale | Up to 75% Off 🔥COZY AND STYLISH FALL EDIT | SHOP NOW 🚚GET EXTRA 12% OFF FOR 1ST ORDER * United States - USD $ * United States - USD $ * Canada - CAD $ * Australia - AUD $ * Deutschland - € EUR * France - € EUR * United Kingdom - £ GBP * New Zealand - NZD $ * España - € EUR * Singapore - S $ * Mexico - $ MXN * * * * SIGN IN / SIGN UP * Order History * Track My Order * Sunchasers Club * * * New InNew In New In:Clothing * New In: Dresses * New In: Clothing * New In: Women's Tops * New In: Jumpsuits * New In: Cover Ups * New In: Shoes & Accs * Wedding Guest Dresses * Fall 2022 Collection New In:Swim * All New In * New In: One Pieces * New In: Bikini Sets * New In: Bikini Separates * New In: Plus Size * New In: Kids Swimsuit * Mommy & Me * Back to School Outfits CAMPAIGNS * Find Your Perfect Fit 🩱 * CUPSHE X TABRIA MAJORS * MIAMI POP UP * Sea to Shining Sea * CUPSHE X JOJO FLETCHER * Summer Dresses of Love * Summer Glow Up * SS22 Trendy Color * Moroccan Daydream Fall 2022 COLLECTION NEW TO SALE * Clothing💗Clothing💗 ALL CLOTHING * Clothing * New In Clothing * Fall 2022 Clothing * Dresses * Bikinis * One-pieces * Coverups * Bodysuits * Accessories Shop by Styles * Women's Tops & Shirts * Rompers & Jumpsuits * Sweaters & Cardigans * Pants & Shorts * Two-piece Sets * Sweatshirts & Hoodies * Activewear Shop by Occasion * Night out * Every Day * Wedding * Office * Sporty * Vacation * Party Cute & Casual Outfits Women's Trendy Tops * BikinisBikinis All Bikinis * All Bikinis * New In Bikinis * Bikini Sets * Bikini Separates * Bikini Tops * Bikini Bottoms * Bikini Best Sellers * Plus Size Bikini * Kids Bikini Top Styles * Tankini * Underwire / Push Up * Bandeau * Triangle * Bralette * Cross Back Bikinis * Long Sleeve Swimsuits * Smocked and Floral Swimsuits Bottom Styles * High Waist * Low Rise * Mid Rise * Cheeky * Full Bottom Coverage * Find Your Perfect Fit SWIMWEAR Up to 70% OFF MIX & MATCH * One PiecesOne Pieces All One Pieces * All One Pieces * New In One Pieces * One Piece Best Sellers * Bodysuits * Plus Size One Piece * Kids One Piece * Swimwear UP TO 70% OFF Shop by Styles * Tummy Control * Monokini / Cut Out * Halter & Lace Up * Plunge Neck/ V-Neck * High Neck * Long Sleeve * Long Torso Swimsuits * Find Your Perfect Fit Shop by Trends * Full Coverage Wrap Swimwear * Cute Bathing Suits * Cross Back One Piece * Swimwear Trendy Features * Sporty Swimwear Classic Black Flash Sale * DressesDresses All Dresses * All Dresses * New In Dresses ✨ * Fall Dresses 2022 * Dresses Best Sellers * Maxi Dresses * Midi Dresses * Short Dresses * Dresses UP TO 80% OFF Shop by Occasion * Wedding Guest Dresses * Beach Dresses * Casual Dresses * Homecoming Dresses * Vacation Dresses * Going Out Dresses * House Party Dresses * Work Dresses Shop by Trends * Wrap Dresses * Long Sleeve Dresses * Ditsy Floral Dresses * Cami Dresses * Shirt Dresses * White Dresses * Black Dresses * Sundresses FALL Dresses 2022 BOHO DRESSES * Cover UpsCover Ups All Cover Ups * All Cover Ups * New In Cover Ups * Cover Ups Best Sellers * Beach Accessories * Coverup UP TO 80% OFF Shop by Styles * Tunic Cover Ups * Kimonos * Kaftan * Coverup Dresses * Beach Shirts & Tops * Beach Bottoms & Sarongs * Beach Two-Pieces * Resort Wear Shop by Trend * Floral &Print * White * Black * Crochet * Tassel & Embroidery Coverup Dresses RESORT WEAR * Best SellersBest Sellers All Best Sellers * All Best Sellers * One Piece Best Sellers * Bikini Best Sellers * Dresses Best Sellers * Clothing Best Sellers * Cover Ups Best Sellers * Plus Size Best Sellers Hot Picks * High Waist Bikinis * Tummy Control One Pieces * Fall Dresses 2022 * Fall '22 Ready-to-Wear Clothing * Cute Bathing Suits * Cupshe Top Rated 🏆 * Casual Look Coverup & Dresses * The Y2K Edit: All Under $16.99 Shop by Mood * Classic Black Edit * Boho Flair * Leopard Print * Pink Vibes * One Shoulder Styles * Effortless Charming * Scalloped Swimsuits & Clothing Full Coverage Dresses Faves * Summer SaleSummer Sale Sale * All Sale * Bikini Sale * One Piece Sale * Dresses Sale * Clothing Sale * Bodysuits Sale * Cover Ups Sale * Plus Size Sale * Shoes Sale Shop by Price * All Under $9.99 * All Under $14.99 * All Under $19.99 * All Under $24.99 Shop by Discounts * Final Sale | UP TO 75% OFF * Flash Sale | UP TO 70% OFF * New to Sale | 20% OFF * ALL 45% OFF Buy more save more FINAL SALE | UP TO 75% OFF SIZE GUIDE SIZE GUIDE BODY SIZE in cm XSSMLXLXXLUS2/44/66/88/1010/1212/14BUST32.5-34.534.5-36.536.5-38.538.5-40.540.5-42.542.5-44.5WAIST24.5-26.526.5-28.528.5-30.530.5-32.532.5-34.534.5-36.5HIP34.5-36.536.5-38.538.5-39.539.5-41.541.5-43.543.5-45.5 Cup Size Guide XSSMLXLXXL30A32C34C36C38D38DD30B32D34D36D40B40C32A34A36A38A40C40D32B34B36B38B40D40DD///38C// HOW TO MEASURE • BUST Measure around the fullest part of your bust. • WAIST Find your natural waistline. Generally, it’s just below your last rib and a couple of inches above your navel. • HIP Find the widest part of your hips. Generally, it’s 8 inches below your waist. • TORSO Measure from the highest point of the shoulder, beneath the crotch and back up to the starting point. For more details please click SIZE MEASUREMENT. COLOR: SIZE size guide Add to BAG You're in! We'll let you know when it's back. You’ve already registered. NOTIFY ME WHEN AVAILABLE Sign up to receive a notification when this item is back in stock. View Full Details SALE Your faves are now discounted!! Filters Category * Bags * Beach Blanket * Bikini * Bikini Bottom Plus Size * Bikini Bottoms * Bikini Plus Size * Bikini Top Plus Size * Bikini Tops * Bodysuit * Boys Swim Tops * Boys Swim Trunks * Cover Up * Dress * Flip Flops * Girls Bikini * Girls One Piece * Hat * Jumpsuit * Leggings * Long Sleeve Bikini * Long Sleeve One Piece * Matching Sets * One Piece * One Piece Plus Size * Pants * Sandals * Skirt * Sports Bras * Sweatshirts * Swimming Ring * Tops Coverage * Classic-Standard Coverage * Mini-Extra Cheeky Coverage * Modern-Cheeky Coverage * Retro-Full Coverage * Ultra-Extra Extra Cheeky Coverage Length * Maxi Dress * Midi Dress * Mini Dress * Short Dress Price * Under $15 * $15-$20 * $20-$25 * $25-$30 * $30-$35 * $35-$40 Seasonal Color * Aqua * Brown * Coral * Neutral * Orange * Aqua * Black * Blue * Brown * Green * Grey * Orange * Pink * Purple * Red * White * Yellow Style * Bandeau * Bralette * Halter * High-Waist * Hipster * Kimono * One Shoulder * Ruffled * Sleeve * Sleeveless * Slip * Tankini * Triangle * Tunic Trend * Boho * Casual * Chic * Cute * Modern * Party * Print * Ruffled * Sexy * Solid * Sporty * Vacay * Vintage Reset Apply Sort FeaturedBest SellingPrice: Low to HighPrice: High to LowNewest to OldestOldest to Newest 0 Items Sort: Sort FILTER NO PRODUCTS RESET FILTERS Category * Bags * Beach Blanket * Bikini * Bikini Bottom Plus Size * Bikini Bottoms * Bikini Plus Size * Bikini Top Plus Size * Bikini Tops * Bodysuit * Boys Swim Tops * Boys Swim Trunks * Cover Up * Dress * Flip Flops * Girls Bikini * Girls One Piece * Hat * Jumpsuit * Leggings * Long Sleeve Bikini * Long Sleeve One Piece * Matching Sets * One Piece * One Piece Plus Size * Pants * Sandals * Skirt * Sports Bras * Sweatshirts * Swimming Ring * Tops Coverage * Classic-Standard Coverage * Mini-Extra Cheeky Coverage * Modern-Cheeky Coverage * Retro-Full Coverage * Ultra-Extra Extra Cheeky Coverage Length * Maxi Dress * Midi Dress * Mini Dress * Short Dress Price * Under $15 * $15-$20 * $20-$25 * $25-$30 * $30-$35 * $35-$40 Seasonal Color * Aqua * Brown * Coral * Neutral * Orange * Aqua * Black * Blue * Brown * Green * Grey * Orange * Pink * Purple * Red * White * Yellow Style * Bandeau * Bralette * Halter * High-Waist * Hipster * Kimono * One Shoulder * Ruffled * Sleeve * Sleeveless * Slip * Tankini * Triangle * Tunic Trend * Boho * Casual * Chic * Cute * Modern * Party * Print * Ruffled * Sexy * Solid * Sporty * Vacay * Vintage Reset Sort Filter ADD TO BAG 39% OFF GERMAINE BELL SLEEVE TIE WAIST SPLIT COVER-UP DRESS $16.99 $27.99 Flash Sale ⚡ ADD TO BAG 28% OFF HONOPU LEOPARD BLUE A-SHAPE DRESS $22.99 $31.99 ADD TO BAG 28% OFF DOREEN DRAWSTRING TROPICAL PLANTS KIMONO $17.99 $24.99 ADD TO BAG 67% OFF MILANI LACE UP RUFFLE FLORAL BIKINI $8.99 $27.99 Flash Sale ⚡ ADD TO BAG 68% OFF SUMMER CUTOUT CRISS CROSS BIKINI $7.99 $24.99 Flash Sale ⚡ ADD TO BAG 28% OFF HAPPY STRIPE TUNNELED CUTOUT ONE PIECE SWIMSUIT $19.99 $27.99 ADD TO BAG 50% OFF ADDY OPEN FRONT RUCHING LONG SLEEVE DRESS $19.99 $39.99 Flash Sale ⚡ ADD TO BAG 29% OFF HONOPU V-NECK BUBBLE SLEEVE DRESS $23.99 $33.99 ADD TO BAG 29% OFF ALETA BOW TIE DITSY A-SHAPE DRESS $25.99 $36.99 ADD TO BAG 28% OFF PURPLE AND FLORAL ONE SHOULDER SCALLOPED BIKINI $19.99 $27.99 FINAL SALE ADD TO BAG 50% OFF TECA OPEN FRONT WRAP DRESS $10.99 $21.99 Flash Sale ⚡ ADD TO BAG 28% OFF EBELE HAWAIIAN FLORAL STRAP A-SHAPE DRESS $29.99 $41.99 ADD TO BAG 40% OFF BELINDA LONG SLEEVE BELT TIE SHIRT DRESS $23.99 $39.99 Flash Sale ⚡ ADD TO BAG 29% OFF ORANGE RUFFLE TANKINI WITH PRINTED BOTTOM $25.99 $36.99 ADD TO BAG 69% OFF YELLOW TWIST-FRONT AND PALM PRINT HIGH WAISTED BIKINI $9.99 $32.99 Flash Sale ⚡ ADD TO BAG 75% OFF LYLA YELLOW V-NECK THIN STRAPS ONE PIECE SWIMSUIT $7.49 $29.99 FINAL SALE ADD TO BAG 29% OFF GENEVA WIDE STRAPS FITTED WAISTED GRAFFITI DRESS $25.99 $36.99 ADD TO BAG 21% OFF ALETHEA LONG SLEEVE OPEN FRONT KIMONO $21.99 $27.99 ADD TO BAG 28% OFF MARGARETA SLEEVELESS BACKLESS ZIPPER BODYCON DRESS $22.99 $31.99 ADD TO BAG 29% OFF SERENA BLACK RUFFLE BLACK PLUS SIZE ONE PIECE SWIMSUIT $25.99 $36.99 FINAL SALE ADD TO BAG 10% OFF DENISE GREEN HALTER ONE PIECE SWIMSUIT $24.99 $27.99 FINAL SALE ADD TO BAG 27% OFF SHIRLEY JACQUARD UNDERWIRE ONE PIECE SWIMSUIT $26.99 $36.99 FINAL SALE ADD TO BAG 29% OFF CORALIE V-NECK BELL SLEEVE RUFFLE DRESS $25.99 $36.99 ADD TO BAG 28% OFF ARCADIA ONE-SHOULDER LONG SLEEVE DRESS $19.99 $27.99 ADD TO BAG 11% OFF SAINT TROPEZ PLUNGE WIDE STRAPS ONE PIECE $15.99 $17.99 ADD TO BAG 28% OFF GIOVANNA PLUNGE LACE UP HIGH CUT ONE PIECE SWIMSUIT $17.99 $24.99 FINAL SALE ADD TO BAG 69% OFF KEYLA FLORAL CUT-OUT KNOT ONE PIECE SWIMSUIT $9.99 $32.99 FINAL SALE ADD TO BAG 29% OFF RAMLA ONE-SHOULDER TIE WAIST SHORT DRESS $23.99 $33.99 ADD TO BAG 29% OFF ARIA ROUND NECK TIE WAIST CUT OUT A-SHAPE DRESS $23.99 $33.99 ADD TO BAG 30% OFF MARGARETA RUFFLE TIE WAIST V-NECK A-SHAPE DRESS $27.99 $39.99 ADD TO BAG 50% OFF HONOPU SQUARE NECK BUBBLE SLEEVE DITSY A-SHAPE DRESS $18.49 $36.99 FINAL SALE ADD TO BAG 13% OFF BLUE FLORAL CUTOUT ONE PIECE SWIMSUIT $25.99 $29.99 FINAL SALE ADD TO BAG 12% OFF SAINT TROPEZ TRIANGLE BACK HOOK BIKINI SET $13.99 $15.99 ADD TO BAG 28% OFF AMAALA ELASTIC WAIST RUFFLE OFF-SHOULDER DRESS $29.99 $41.99 ADD TO BAG 38% OFF MARIANA BACKLESS HALTER NECK SLIP DRESS $25.99 $41.99 Flash Sale ⚡ ADD TO BAG 28% OFF LILAC DREAMS SMOCKING OFF-SHOULDER DRESS $22.99 $31.99 ADD TO BAG 28% OFF THALIA DITSY TIE SLIP DRESS $19.99 $27.99 ADD TO BAG 68% OFF QUINN FLORAL HIGH WAISTED PLUS SIZE BIKINI BOTTOM $4.99 $15.99 FINAL SALE ADD TO BAG 29% OFF EMELIA TROPICAL HALTER PLUS SIZE ONE PIECE SWIMSUIT $23.99 $33.99 FINAL SALE ADD TO BAG 16% OFF SAINT TROPEZ PANELED V-NECK ONE PIECE SWIMSUIT $14.99 $17.99 ADD TO BAG 29% OFF HERMINE SMOCKING DITSY TIE SLIP DRESS $25.99 $36.99 ADD TO BAG 29% OFF GILDA ADJUSTABLE STRAP LACE UP YELLOW A-SHAPE DRESS $23.99 $33.99 ADD TO BAG 70% OFF CYNTHIA PLUNGE BACK TIE PLUS SIZE BIKINI TOP $5.99 $19.99 FINAL SALE ADD TO BAG 12% OFF DELANEY PUSH UP LACE UP FLORAL BIKINI $28.99 $32.99 FINAL SALE ADD TO BAG 12% OFF SAINT TROPEZ ASYMMETRICAL MODERN-CHEEKY ONE PIECE $13.99 $15.99 ADD TO BAG 26% OFF MYAH TROPICAL WRAP BACK TIE PLUS SIZE BIKINI TOP $18.99 $25.99 FINAL SALE ADD TO BAG 48% OFF CASEY V-NECK BACKLESS TEA LENGTH BODYCON DRESS $12.99 $24.99 Flash Sale ⚡ ADD TO BAG 28% OFF CLAUDETTE RUFFLE PAISLEY TIE COVER UP $17.99 $24.99 123…40 RECENTLY VIEWED SUNCHASERS CLUB Join now to earn 300 POINTS Get Sweet Perks + Exclusive Offers + Members Hotline! JOIN NOW GIVE 20%, GET $10 Refer a friend and earn rewards! Share now and start earning! REFER A FRIEND SUBSCRIBE & GET EXTRA 12% OFF 12% off first order SUBSCRIBE Oops, there was a hiccup! Please try again. * * * * * * COMPANY INFO * About Us * Press * Affiliate * Cupshe Cares * Ambassador Program * Customer Reviews SERVICE CENTER * Size Measurement * Delivery * Order Tracker * Return Policy * Start A Return * FAQS * Contact Us QUICK LINKS * Blog * Klarna * GIVE 20%, GET $10 * Sunchasers Club * Student Discount * Healthcare Heroes Discount DOWNLOAD APP & GET 15% OFF * * SUBSCRIBE & GET EXTRA 12% OFF 12% off first order SUBSCRIBE Oops, there was a hiccup! Please try again. * * * * * * Cupshe©2022 See our terms of use and privacy policy OUR DELIVERY PARTNERS * * * * OUR PAYING METHODS * * * Visa * Mastercard * Apple Pay * PayPal * Google Pay * American Express OUR PAYING METHODS * * * Visa * Mastercard * Apple Pay * PayPal * Google Pay * American Express OUR DELIVERY PARTNERS * * * * Cupshe©2022 See our terms of use and privacy policy Chat with us, powered by LiveChat SUBSCRIBE FOR AN EXTRA 15% OFF $75+ Get an exclusive offer when you sign up, plus early access to even more deals, new arrivals, style tips and more. SUBSCRIBE *By signing up via text, you agree to receive marketing messages at the number provided. Consent is not a condition of purchase. Message and data rates may apply. Message frequency varies. Reply HELP for help or STOP to cancel. View our Privacy Policy and Terms of Service. Why doesn't my Safari load Chat widget? If you are using any Mac devices, please go to Safari > Preferences then select the Privacy tab. Make sure "Block All Cookies" is not selected. Don't forget to refresh the page after you modify your settings. If you are using an iPhone device, please go to Settings > Safari > Privacy&Security. Make sure "Block All Cookies" is not selected. Don't forget to refresh the page after you modify your settings. FILTERS 0 Items RESETAPPLY