Bikinis & Swim

Show filters
Sort:
Size
Color
Price
All filters
Sort
Loading...
tag of the document. This will help to improve the load of the images // during color swatches interaction on PLP const preloadBackground = (entries, observer) => { entries.forEach(async (entry) => { if (entry.isIntersecting) { const swatch = entry.target; const images = swatch.dataset.varimg.split(','); images.forEach((img, index) => { // preload image const link = document.createElement('link'); link.href = buildSrc(img); link.imagesrcset = getSrcset(img); link.imagesizes = cssImageMediaCondition; link.rel = 'preload'; link.as = 'image'; document.getElementsByTagName('head')[0].appendChild(link); }); swatch.removeAttribute('data-varimg'); switchObserver.unobserve(swatch); } }); }; const switchObserver = new IntersectionObserver(preloadBackground, { root: null, // Default is the viewport rootMargin: '30px', threshold: 0.05, // Load image when 10% of the div is visible }); // Sort options function getPageParam() { const urlParams = new URLSearchParams(window.location.search); const pageParam = urlParams.get('page'); return pageParam ? parseInt(pageParam, 10) : 1; } domLoadedPage = getPageParam(); setupSortDropdown('.fs_sort_by_wrap_desktop', '.fs_sort_by_options_desktop', '.fs_sort_by_select_desktop'); const sortBySelect = document.getElementById('sortByDesktop'); let sortByValue = getSortBy(); // call the function and store the returned value sortBySelect.value = sortByValue; // update the desktop dropdown value on page load // update sort mobile dropdown value on page load const validSortOptions = ['price_min_to_max', 'price_max_to_min', 'creation_date', 'relevency']; sortByValue = validSortOptions.includes(sortByValue) ? sortByValue : 'relevency'; const inputField = document.querySelector(`form [data-value="${sortByValue}"]`); if (inputField) { inputField.checked = true; // update the value of the option } else { console.error(`No radio button found with data-value="${sortByValue}"`); } const form = document.getElementById('sortForm'); if (form) { form.addEventListener('change', (event) => { if (event.target.name === 'sort') { const selectedValue = event.target.getAttribute('data-value'); if (selectedValue && validSortOptions.includes(selectedValue)) { setUrlParam('sortBy', selectedValue, true); resetPageAndScroll(); updateOtherDropdown(selectedValue); } } }); } updateOtherDropdown(getSortBy()); if (sortBySelect) { sortBySelect.addEventListener('change', function () { if (sortBySelect.value && validSortOptions.includes(sortBySelect.value)) { setUrlParam('sortBy', sortBySelect.value, true); } }); } // Description 'read more' function toggleReadMore(button) { const container = button.parentNode; const isExpanded = container.getAttribute('aria-expanded') === 'true'; container.setAttribute('aria-expanded', !isExpanded); if (isExpanded) { button.querySelector('.button-text').textContent = 'more'; } else { button.querySelector('.button-text').textContent = 'Show less'; } } function visibleReadMore() { const toggleButtons = document.querySelectorAll('.fs_collection_top_toggle'); toggleButtons.forEach(button => { const description_children = button.previousElementSibling.children; let description_scroll_width = 0; let description_client_width = 0; for(const child of description_children) { description_scroll_width += child.scrollWidth; description_client_width += child.clientWidth; }; button.style.display = (description_scroll_width > description_client_width) ? 'block' : 'none'; }); } window.addEventListener('DOMContentLoaded', visibleReadMore); // category pills GTM const categories = document.querySelectorAll('.category-pills__pill'); let category; let categoryHandle; let categoryId; const pushCategoryPills = (category, categoryHandle, categoryId, typeCategory) => { if (category && categoryHandle && categoryId && typeCategory) { const categoryPills = { event: `categoryPills`, category: category, categoryHandle: categoryHandle, categoryId: categoryId, typeCategory: typeCategory }; window.dataLayer.push(categoryPills); } } categories?.forEach(category => { category.addEventListener('click', function(e) { try { category = e.currentTarget.getAttribute('data-category'); categoryHandle = e.currentTarget.getAttribute('data-collection-handle'); categoryId = e.currentTarget.getAttribute('data-collection-id'); typeCategory = e.currentTarget.getAttribute('data-type-category'); pushCategoryPills(category, categoryHandle, categoryId, typeCategory); } catch (error) { console.error('Error in category click event:', error); } }) })

Now Trending

Bikinis & Swimsuits to Elevate Every Happening

Make waves on the sand and beyond with Windsor’s bikinis and women’s swim apparel—designed for mix-and-match fun from beach days to sunset soirées. Choose from sparkly fabrications, classic abstract or snake prints, and vibrant solids to suit every mood.

Layered Looks & Effortless Styling

Pair bikini tops under tie-front blouses, sheer dusters, or lightweight jackets for sultry, city-to-shore outfits. High-rise bikini bottoms compliment breezy sarong wraps or high-waist denim shorts for an “always put together” vibe.

Support & Versatility

Find perfect fits with adjustable straps, one-shoulder silhouettes, and supportive under-bust bands.

Prints, Shine & Vacay Staples

Stand out in shimmer fabrics or timeless animal prints, or keep it classic in rust, olive, or ivory. Accessorize with oversized straw hats, trendy sunglasses, and woven totes to complete your vacation-ready look.

Discover Windsor’s full edit of bikinis and swimsuits online, in-app, or at your nearest Windsor store.

  • Cross My Heart Swim Top
    Promise yourself to keep it trendy this season in this pretty swim top! It features a black hue, a plunging V neck with an unlined mesh under bust accent, narrow criss-cross straps across the front, and a sheer mesh strap back. Be sure to pick up the matching bottoms to complete your look! 

    Model is 5'7" with a 34" bust, 24" waist and 36" hips. She is wearing a size small.

    RETURNS ACCEPTED ONLY WHEN ALL TAGS AND HYGIENIC PROTECTION ARE INTACT.

    Style Number/Barcode: 07104-0279

    Category Name: Bikinis & Swim

    Price: $9.97 $24.90

    On Sale: Yes

    Availability: Out of Stock

    Product Badge:
    • Clearance
  • Glam Girl Rhinestone Swim Bottom
    Glam up the pool party scene with this flashy rhinestone bikini bottom! It features a triangle front adorned with silver rhinestones, string sides and a black ruched back with a cheeky fit. Don't forget the matching top!

    Model is 5'7" with a 34" bust, 24" waist and 36" hips. She is wearing a size small.

    RETURNS ACCEPTED ONLY WHEN ALL TAGS AND HYGIENIC PROTECTION ARE INTACT.

    Style Number/Barcode: 07105-0005

    Category Name: Bikinis & Swim

    Price: $9.97 $26.90

    On Sale: Yes

    Availability: Out of Stock

    Product Badge:
    • Clearance
  • Wild At Heart Triangle Swim Top
    Show that wild side, pool side. This black swim top features triangle cups with removable padded cups,  a sequin leopard print and traditional string ties. Don't forget the matching swim bottoms! 

    Model is 5'7" with a 34" bust, 24" waist and 36" hips. She is wearing a size small.

    RETURNS ACCEPTED ONLY WHEN ALL TAGS AND HYGIENIC PROTECTION ARE INTACT.

    Style Number/Barcode: 07104-0287

    Category Name: Bikinis & Swim

    Price: $9.97 $25.90

    On Sale: Yes

    Availability: Out of Stock

    Product Badge:
    • Clearance
  • Don't Mesh With Me Swim Bottoms

    Don't worry, we're not messing with you! These black mesh swim bottoms are seriously that cute! They feature a mid-rise waist with a sheer mesh trim all around. Don't forget to purchase the matching swim top!

    Model is 5'6" with a 34" bust, 24" waist and 37" hips. She is wearing a size small.

    RETURNS ACCEPTED ONLY WHEN ALL TAGS AND HYGIENIC PROTECTION ARE INTACT.

    Style Number/Barcode: 07105-0006

    Category Name: Bikinis & Swim

    Price: $9.97 $18.90

    On Sale: Yes

    Availability: Out of Stock

    Product Badge:
    • Clearance
  • Stylish And Strappy Swim Bottoms
    Have fun in the sun with your squad in these stylish and strappy royal blue swim bottoms! They feature a basic cut swim bottom with neon yellow strap accents and a cheeky fit. Don't forget to purchase the matching swim top!

    Model is 5'9" with a 32" bust, 24" waist and 34" hips. She is wearing a size small.

    RETURNS ACCEPTED ONLY WHEN ALL TAGS AND HYGIENIC PROTECTION ARE INTACT.

    Style Number/Barcode: 07105-0033

    Category Name: Bikinis & Swim

    Price: $7.97 $19.90

    On Sale: Yes

    Availability: Out of Stock

    Product Badge:
    • Clearance
  • Locked In Swim Bottoms
    Get locked in for this sizzling look! These black swim bottoms feature a high rise waist, lace up side accents and a brief cut with cheeky bottom. Be sure to pick up the matching swim top to complete your look! 

    Model is 5'7" with a 34" bust, 24" waist and 36" hips. She is wearing a size small.

    RETURNS ACCEPTED ONLY WHEN ALL TAGS AND HYGIENIC PROTECTION ARE INTACT.

    Style Number/Barcode: 07105-0052

    Category Name: Bikinis & Swim

    Price: $9.97 $18.90

    On Sale: Yes

    Availability: Out of Stock

    Product Badge:
    • Clearance
  • Americana Star Swim Bottoms
    Sport some stars and stripes to show off a patriotic look! These swim bottoms feature a high rise waist with a red, white, and navy blue striped elastic band and a cheeky bottom. The navy blue bottoms showcase a star print. Complete your Americana look with the matching swim top!

    Model is 5'6" with a 34" bust, 24" waist and 37" hips. She is wearing a size small.

    RETURNS ACCEPTED ONLY WHEN ALL TAGS AND HYGIENIC PROTECTION ARE INTACT.

    Style Number/Barcode: 07105-0387

    Category Name: Bikinis & Swim

    Price: $9.97 $19.90

    On Sale: Yes

    Availability: Out of Stock

    Product Badge:
    • Clearance
  • Making Mesh Moves Swim Bottoms
    Make a splash in mesh as you bring the heat in this sexy swim bottom! It features a chic black color, a high rise waist, an unlined mesh inset and a high cut with cheeky bottom coverage. Be sure to pick up the matching swim top to lock down your vacay look!

    RETURNS ACCEPTED ONLY WHEN ALL TAGS AND HYGIENIC PROTECTION ARE INTACT.

    Model is 5'8" with a 33" bust, 24" waist and 35" hips. She is wearing a size small.

    Style Number/Barcode: 07105-0428

    Category Name: Bikinis & Swim

    Price: $9.97 $18.90

    On Sale: Yes

    Availability: Out of Stock

    Product Badge:
    • Clearance
  • X Marks The Spot Swim Bottoms
    Look no longer for the perfect swimsuit! These cute black swim bottoms feature a high rise waist with hipster cut, cross-strap accents, mesh waist accents and a cheeky bottom. Be sure to pick up the matching top to complete your look! 

    RETURNS ACCEPTED ONLY WHEN ALL TAGS AND HYGIENIC PROTECTION ARE INTACT.

    Model is 5'9" with a 32" bust, 24" waist and 34" hips. She is wearing a size small.

    Style Number/Barcode: 07105-0439

    Category Name: Bikinis & Swim

    Price: $6.97 $18.90

    On Sale: Yes

    Availability: Out of Stock

    Product Badge:
    • Clearance
  • Don't Mesh With Me Swim Top
    Don't worry, we're not messing with you! This black mesh swim top is seriously that cute! It features a strapless square neckline with mesh insets at the top and bottom and a sheer mesh back. Don't forget to purchase the matching swim bottoms!

    Model is 5'6" with a 34" bust, 24" waist and 37" hips. She is wearing a size small.

    RETURNS ACCEPTED ONLY WHEN ALL TAGS AND HYGIENIC PROTECTION ARE INTACT.

    Style Number/Barcode: 07104-0003

    Category Name: Bikinis & Swim

    Price: $9.97 $18.90

    On Sale: Yes

    Availability: Out of Stock

    Product Badge:
    • Clearance
  • Proud And Clear Bikini Top

    Flaunt your curves in an of-the-moment style with classic-chic appeal. Top features elasticized triangle cups and clear PVC halter straps at neck and a single strap at back. Top slips on and fabric offers a fair amount of stretch. 

    RETURNS ACCEPTED ONLY WHEN ALL TAGS AND HYGIENIC PROTECTION ARE INTACT.

    Style Number/Barcode: 07104-0286

    Category Name: Bikinis & Swim

    Price: $9.97 $20.90

    On Sale: Yes

    Availability: Out of Stock

    Product Badge:
    • Clearance
  • Drippin' In Rhinestones Swim Bottom
    Girl, you'll be drippin' in rhinestones with these fab black swim bottoms! They feature a high rise waist band adorned with mini rhinestones and a partial coverage bottom. Complete your look with the matching swim top!

    Model is 5'6" with a 34" bust, 24" waist and 37" hips. She is wearing a size small.

    RETURNS ACCEPTED ONLY WHEN ALL TAGS AND HYGIENIC PROTECTION ARE INTACT.

    Style Number/Barcode: 07105-0096

    Category Name: Bikinis & Swim

    Price: $9.97 $24.90

    On Sale: Yes

    Availability: Out of Stock

    Product Badge:
    • Clearance
  • Drippin' In Rhinestones Swim Bottom
    Girl, you'll be drippin' in rhinestones with these fab white swim bottoms! They feature a high rise waist band adorned with mini rhinestones and a partial coverage bottom. Complete your look with the matching swim top!

    ALL RETURNS ACCEPTED ONLY WHEN TAGS AND HYGIENIC PROTECTION ARE IN TACT.

    RETURNS ACCEPTED ONLY WHEN ALL TAGS AND HYGIENIC PROTECTION ARE INTACT.

    Style Number/Barcode: 07105-0100

    Category Name: Bikinis & Swim

    Price: $9.97 $24.90

    On Sale: Yes

    Availability: Out of Stock

    Product Badge:
    • Clearance
  • Pretty And Spotted Swim Top
    Have a total pretty and spotted look in this sexy leopard print swim top! It features adjustable spaghetti straps, structured molded cups, and a back bar closure. Complete your purrfect look with the matching swim bottoms!

    Model is 5'6" with a 34" bust, 26" waist and 38" hips. Bra Size: 34D. She is wearing a size small.

    RETURNS ACCEPTED ONLY WHEN ALL TAGS AND HYGIENIC PROTECTION ARE INTACT.

    Style Number/Barcode: 07104-0207

    Category Name: Bikinis & Swim

    Price: $9.97 $18.90

    On Sale: Yes

    Availability: Out of Stock

    Product Badge:
    • Clearance
  • Rhine So Fine Bikini Bottoms

    Look so fine in rhine with these glam embellished black bikini bottoms! They feature a rhinestone adorned trim, a cheeky bottom, and a rhinestone embellished T-band that wraps around and closes behind the waist. Don't forget the matching swim top!

    Model is 5'7" with a 34" bust, 24" waist and 36" hips. She is wearing a size small.

    RETURNS ACCEPTED ONLY WHEN ALL TAGS AND HYGIENIC PROTECTION ARE INTACT.

    Style Number/Barcode: 07105-0409

    Category Name: Bikinis & Swim

    Price: $9.97 $22.90

    On Sale: Yes

    Availability: Out of Stock

    Product Badge:
    • Clearance