Free Priority Shipping—24 Hours Only ⚡
{%- capture title_map %}Category,
Collection{% endcapture -%}
{%- assign title_map = title_map | split: ',' -%}
{%- for set in collection.filters.all -%}
{%- assign set_found = false -%}
{%- assign set_label = set.label | handle -%}
{%- for title in title_map -%}
{%- assign title_handle = title | handle -%}
{%- if title_handle == set_label -%}
{%- assign set_found = true -%}
{%- endif -%}
{%- endfor -%}
{%- unless set_found %}{% continue %}{% endunless -%}
{% for option in set.options %}
{% endfor %}
{%- endfor -%}
{% if collection.filters.applied.size > 0 %}
{% endif %}
{%- for filter in collection.filters.all -%}
{% if filter.key == 'filter.v.availability' %}{% continue %}{% endif %}
{% assign filter_label = filter.label %}
{%- for option in filter.options -%}
{%- if option.active -%}
{%- endif -%}
{%- endfor -%}
{%- if filter.range != nil and filter.range[0].low != '' or filter.range[0].high != '' %}
{% assign low = filter.range[0].low | replace: '.00', '' %}
{% assign high = filter.range[0].high | replace: '.00', '' %}
{%- capture filter_value -%}
${% if low == '' %}0{% else %}{{ low }}{% endif %} - {% if high != '' %}${{ high }}{% endif %}
{%- endcapture -%}
{%- endif -%}
{%- endfor -%}
{%- for set in collection.filters.all -%}
{%- assign filter_title = "category" %}
{%- assign filter_label = set.label | handle %}
{%- unless filter_label == filter_title %}{% continue %}{% endunless %}
{% endif %}
{% assign max_count = 5 %}
{% if set.options.size > max_count %}
{% endif %}
{%- endfor -%}
{{ set.label }}
chevron-down
chevron-down
{%- for option in set.options -%}
{%- endfor -%}
{% if set.range != nil %}
{% assign min = set.key | append: '.gte' %}
{% assign max = set.key | append: '.lte' %}
{% assign min_default_position = 0 %}
{% assign max_default_position = set.range_max | ceil %}
{% assign min_default_value = 0 | times: 100 | money %}
{% assign max_default_value = set.range_max | times: 100 | money %}
{%- for set in collection.filters.all -%}
{%- assign filter_title = "size" %}
{%- assign filter_label = set.label | handle %}
{%- unless filter_label == filter_title %}{% continue %}{% endunless %}
{% endif %}
{% assign max_count = 5 %}
{% assign max_count = max_count | times: 4 %}
{% if set.options.size > max_count %}
{% endif %}
{%- endfor -%}
{{ set.label }}
chevron-down
chevron-down
{%- for option in set.options -%}
{%- endfor -%}
{% if set.range != nil %}
{% assign min = set.key | append: '.gte' %}
{% assign max = set.key | append: '.lte' %}
{% assign min_default_position = 0 %}
{% assign max_default_position = set.range_max | ceil %}
{% assign min_default_value = 0 | times: 100 | money %}
{% assign max_default_value = set.range_max | times: 100 | money %}
{%- for set in collection.filters.all -%}
{%- assign filter_title = "price" %}
{%- assign filter_label = set.label | handle %}
{%- unless filter_label == filter_title %}{% continue %}{% endunless %}
{% endif %}
{% assign max_count = 5 %}
{% assign max_count = max_count | times: 4 %}
{% if set.options.size > max_count %}
{% endif %}
{%- endfor -%}
{{ set.label }}
chevron-down
chevron-down
{%- for option in set.options -%}
{%- endfor -%}
{% if set.range != nil %}
{% assign min = set.key | append: '.gte' %}
{% assign max = set.key | append: '.lte' %}
{% assign min_default_position = 0 %}
{% assign max_default_position = set.range_max | ceil %}
{% assign min_default_value = 0 | times: 100 | money %}
{% assign max_default_value = set.range_max | times: 100 | money %}
{%- for set in collection.filters.all -%}
{%- assign filter_title = "color" %}
{%- assign filter_label = set.label | handle %}
{%- unless filter_label == filter_title %}{% continue %}{% endunless %}
{% endif %}
{% assign max_count = 5 %}
{% assign max_count = max_count | times: 6 %}
{% if set.options.size > max_count %}
{% endif %}
{%- endfor -%}
{{ set.label }}
chevron-down
chevron-down
{% capture color_map %}Beige: #c7b299,
Black: #000000,
Blue: #095a80,
Brown: #543b24,
Green: #2b5f2a,
Orange: #ba6435,
Pink: #e294a7,
Purple: #493664,
Red: #9c3232,
White: #ffffff,
Yellow: #e0c02a,
Gray: #707070,
Miscellaneous: url(//cdn.shopify.com/s/files/1/0580/9301/1077/files/Multi-Rainbow-Square-2.png?v=1754608407),
Violet:#493664,
Multi: url(//cdn.shopify.com/s/files/1/0580/9301/1077/files/Multi-Rainbow-Square-2.png?v=1754608407){% endcapture %}
{% assign color_map = color_map | split: ',' %}
{%- for option in set.options -%}
{%- assign swatch_bg = '' -%}
{%- for color in color_map -%}
{%- assign key = color | split: ':' | first | strip | handle -%}
{%- assign value = color | split: ':' | last | strip -%}
{%- assign option_handle = option.value | handle -%}
{%- if key == option_handle -%}
{%- assign swatch_bg = value -%}
{%- endif -%}
{%- endfor -%}
{% if set.range != nil %}
{% assign min = set.key | append: '.gte' %}
{% assign max = set.key | append: '.lte' %}
{% assign min_default_position = 0 %}
{% assign max_default_position = set.range_max | ceil %}
{% assign min_default_value = 0 | times: 100 | money %}
{% assign max_default_value = set.range_max | times: 100 | money %}
{{ option.label }}
{%- endfor -%}
{%- for set in collection.filters.all -%}
{%- assign filter_title = "product-type" %}
{%- assign filter_label = set.label | handle %}
{%- unless filter_label == filter_title %}{% continue %}{% endunless %}
{% endif %}
{% assign max_count = 5 %}
{% if set.options.size > max_count %}
{% endif %}
{%- endfor -%}
{{ set.label }}
chevron-down
chevron-down
{%- for option in set.options -%}
{%- endfor -%}
{% if set.range != nil %}
{% assign min = set.key | append: '.gte' %}
{% assign max = set.key | append: '.lte' %}
{% assign min_default_position = 0 %}
{% assign max_default_position = set.range_max | ceil %}
{% assign min_default_value = 0 | times: 100 | money %}
{% assign max_default_value = set.range_max | times: 100 | money %}
{%- for set in collection.filters.all -%}
{%- assign filter_title = "fit" %}
{%- assign filter_label = set.label | handle %}
{%- unless filter_label == filter_title %}{% continue %}{% endunless %}
{% endif %}
{% assign max_count = 5 %}
{% if set.options.size > max_count %}
{% endif %}
{%- endfor -%}
{{ set.label }}
chevron-down
chevron-down
{%- for option in set.options -%}
{%- endfor -%}
{% if set.range != nil %}
{% assign min = set.key | append: '.gte' %}
{% assign max = set.key | append: '.lte' %}
{% assign min_default_position = 0 %}
{% assign max_default_position = set.range_max | ceil %}
{% assign min_default_value = 0 | times: 100 | money %}
{% assign max_default_value = set.range_max | times: 100 | money %}
{%- for set in collection.filters.all -%}
{%- assign filter_title = "style" %}
{%- assign filter_label = set.label | handle %}
{%- unless filter_label == filter_title %}{% continue %}{% endunless %}
{% endif %}
{% assign max_count = 5 %}
{% if set.options.size > max_count %}
{% endif %}
{%- endfor -%}
{{ set.label }}
chevron-down
chevron-down
{%- for option in set.options -%}
{%- endfor -%}
{% if set.range != nil %}
{% assign min = set.key | append: '.gte' %}
{% assign max = set.key | append: '.lte' %}
{% assign min_default_position = 0 %}
{% assign max_default_position = set.range_max | ceil %}
{% assign min_default_value = 0 | times: 100 | money %}
{% assign max_default_value = set.range_max | times: 100 | money %}
{%- for set in collection.filters.all -%}
{%- assign filter_title = "length" %}
{%- assign filter_label = set.label | handle %}
{%- unless filter_label == filter_title %}{% continue %}{% endunless %}
{% endif %}
{% assign max_count = 5 %}
{% if set.options.size > max_count %}
{% endif %}
{%- endfor -%}
{{ set.label }}
chevron-down
chevron-down
{%- for option in set.options -%}
{%- endfor -%}
{% if set.range != nil %}
{% assign min = set.key | append: '.gte' %}
{% assign max = set.key | append: '.lte' %}
{% assign min_default_position = 0 %}
{% assign max_default_position = set.range_max | ceil %}
{% assign min_default_value = 0 | times: 100 | money %}
{% assign max_default_value = set.range_max | times: 100 | money %}
{%- for set in collection.filters.all -%}
{%- assign filter_title = "thickness" %}
{%- assign filter_label = set.label | handle %}
{%- unless filter_label == filter_title %}{% continue %}{% endunless %}
{% endif %}
{% assign max_count = 5 %}
{% if set.options.size > max_count %}
{% endif %}
{%- endfor -%}
{{ set.label }}
chevron-down
chevron-down
{%- for option in set.options -%}
{%- endfor -%}
{% if set.range != nil %}
{% assign min = set.key | append: '.gte' %}
{% assign max = set.key | append: '.lte' %}
{% assign min_default_position = 0 %}
{% assign max_default_position = set.range_max | ceil %}
{% assign min_default_value = 0 | times: 100 | money %}
{% assign max_default_value = set.range_max | times: 100 | money %}
{%- for set in collection.filters.all -%}
{%- assign filter_title = "entry" %}
{%- assign filter_label = set.label | handle %}
{%- unless filter_label == filter_title %}{% continue %}{% endunless %}
{% endif %}
{% assign max_count = 5 %}
{% if set.options.size > max_count %}
{% endif %}
{%- endfor -%}
{{ set.label }}
chevron-down
chevron-down
{%- for option in set.options -%}
{%- endfor -%}
{% if set.range != nil %}
{% assign min = set.key | append: '.gte' %}
{% assign max = set.key | append: '.lte' %}
{% assign min_default_position = 0 %}
{% assign max_default_position = set.range_max | ceil %}
{% assign min_default_value = 0 | times: 100 | money %}
{% assign max_default_value = set.range_max | times: 100 | money %}
{%- for set in collection.filters.all -%}
{%- assign filter_title = "top-style" %}
{%- assign filter_label = set.label | handle %}
{%- unless filter_label == filter_title %}{% continue %}{% endunless %}
{% endif %}
{% assign max_count = 5 %}
{% if set.options.size > max_count %}
{% endif %}
{%- endfor -%}
{{ set.label }}
chevron-down
chevron-down
{%- for option in set.options -%}
{%- endfor -%}
{% if set.range != nil %}
{% assign min = set.key | append: '.gte' %}
{% assign max = set.key | append: '.lte' %}
{% assign min_default_position = 0 %}
{% assign max_default_position = set.range_max | ceil %}
{% assign min_default_value = 0 | times: 100 | money %}
{% assign max_default_value = set.range_max | times: 100 | money %}
{%- for set in collection.filters.all -%}
{%- assign filter_title = "waist" %}
{%- assign filter_label = set.label | handle %}
{%- unless filter_label == filter_title %}{% continue %}{% endunless %}
{% endif %}
{% assign max_count = 5 %}
{% if set.options.size > max_count %}
{% endif %}
{%- endfor -%}
{{ set.label }}
chevron-down
chevron-down
{%- for option in set.options -%}
{%- endfor -%}
{% if set.range != nil %}
{% assign min = set.key | append: '.gte' %}
{% assign max = set.key | append: '.lte' %}
{% assign min_default_position = 0 %}
{% assign max_default_position = set.range_max | ceil %}
{% assign min_default_value = 0 | times: 100 | money %}
{% assign max_default_value = set.range_max | times: 100 | money %}
{%- for set in collection.filters.all -%}
{%- assign filter_title = "neck" %}
{%- assign filter_label = set.label | handle %}
{%- unless filter_label == filter_title %}{% continue %}{% endunless %}
{% endif %}
{% assign max_count = 5 %}
{% if set.options.size > max_count %}
{% endif %}
{%- endfor -%}
{{ set.label }}
chevron-down
chevron-down
{%- for option in set.options -%}
{%- endfor -%}
{% if set.range != nil %}
{% assign min = set.key | append: '.gte' %}
{% assign max = set.key | append: '.lte' %}
{% assign min_default_position = 0 %}
{% assign max_default_position = set.range_max | ceil %}
{% assign min_default_value = 0 | times: 100 | money %}
{% assign max_default_value = set.range_max | times: 100 | money %}
{%- for set in collection.filters.all -%}
{%- assign filter_title = "closure" %}
{%- assign filter_label = set.label | handle %}
{%- unless filter_label == filter_title %}{% continue %}{% endunless %}
{% endif %}
{% assign max_count = 5 %}
{% if set.options.size > max_count %}
{% endif %}
{%- endfor -%}
{{ set.label }}
chevron-down
chevron-down
{%- for option in set.options -%}
{%- endfor -%}
{% if set.range != nil %}
{% assign min = set.key | append: '.gte' %}
{% assign max = set.key | append: '.lte' %}
{% assign min_default_position = 0 %}
{% assign max_default_position = set.range_max | ceil %}
{% assign min_default_value = 0 | times: 100 | money %}
{% assign max_default_value = set.range_max | times: 100 | money %}
{%- for set in collection.filters.all -%}
{%- assign filter_title = "outseam" %}
{%- assign filter_label = set.label | handle %}
{%- unless filter_label == filter_title %}{% continue %}{% endunless %}
{% endif %}
{% assign max_count = 5 %}
{% if set.options.size > max_count %}
{% endif %}
{%- endfor -%}
{{ set.label }}
chevron-down
chevron-down
{%- for option in set.options -%}
{%- endfor -%}
{% if set.range != nil %}
{% assign min = set.key | append: '.gte' %}
{% assign max = set.key | append: '.lte' %}
{% assign min_default_position = 0 %}
{% assign max_default_position = set.range_max | ceil %}
{% assign min_default_value = 0 | times: 100 | money %}
{% assign max_default_value = set.range_max | times: 100 | money %}
{%- for set in collection.filters.all -%}
{%- assign filter_title = "features" %}
{%- assign filter_label = set.label | handle %}
{%- unless filter_label == filter_title %}{% continue %}{% endunless %}
{% endif %}
{% assign max_count = 5 %}
{% if set.options.size > max_count %}
{% endif %}
{%- endfor -%}
{{ set.label }}
chevron-down
chevron-down
{%- for option in set.options -%}
{%- endfor -%}
{% if set.range != nil %}
{% assign min = set.key | append: '.gte' %}
{% assign max = set.key | append: '.lte' %}
{% assign min_default_position = 0 %}
{% assign max_default_position = set.range_max | ceil %}
{% assign min_default_value = 0 | times: 100 | money %}
{% assign max_default_value = set.range_max | times: 100 | money %}
{%- for set in collection.filters.all -%}
{%- assign filter_title = "collection" %}
{%- assign filter_label = set.label | handle %}
{%- unless filter_label == filter_title %}{% continue %}{% endunless %}
{% endif %}
{% assign max_count = 5 %}
{% if set.options.size > max_count %}
{% endif %}
{%- endfor -%}
{{ set.label }}
chevron-down
chevron-down
{%- for option in set.options -%}
{%- endfor -%}
{% if set.range != nil %}
{% assign min = set.key | append: '.gte' %}
{% assign max = set.key | append: '.lte' %}
{% assign min_default_position = 0 %}
{% assign max_default_position = set.range_max | ceil %}
{% assign min_default_value = 0 | times: 100 | money %}
{% assign max_default_value = set.range_max | times: 100 | money %}
{%- for set in collection.filters.all -%}
{%- assign filter_title = "sleeve-length" %}
{%- assign filter_label = set.label | handle %}
{%- unless filter_label == filter_title %}{% continue %}{% endunless %}
{% endif %}
{% assign max_count = 5 %}
{% if set.options.size > max_count %}
{% endif %}
{%- endfor -%}
{{ set.label }}
chevron-down
chevron-down
{%- for option in set.options -%}
{%- endfor -%}
{% if set.range != nil %}
{% assign min = set.key | append: '.gte' %}
{% assign max = set.key | append: '.lte' %}
{% assign min_default_position = 0 %}
{% assign max_default_position = set.range_max | ceil %}
{% assign min_default_value = 0 | times: 100 | money %}
{% assign max_default_value = set.range_max | times: 100 | money %}
{%- for set in collection.filters.all -%}
{%- assign filter_title = "bottom-coverage" %}
{%- assign filter_label = set.label | handle %}
{%- unless filter_label == filter_title %}{% continue %}{% endunless %}
{% endif %}
{% assign max_count = 5 %}
{% if set.options.size > max_count %}
{% endif %}
{%- endfor -%}
{{ set.label }}
chevron-down
chevron-down
{%- for option in set.options -%}
{%- endfor -%}
{% if set.range != nil %}
{% assign min = set.key | append: '.gte' %}
{% assign max = set.key | append: '.lte' %}
{% assign min_default_position = 0 %}
{% assign max_default_position = set.range_max | ceil %}
{% assign min_default_value = 0 | times: 100 | money %}
{% assign max_default_value = set.range_max | times: 100 | money %}
{%- for set in collection.filters.all -%}
{%- assign filter_title = "tee-style" %}
{%- assign filter_label = set.label | handle %}
{%- unless filter_label == filter_title %}{% continue %}{% endunless %}
{% endif %}
{% assign max_count = 5 %}
{% if set.options.size > max_count %}
{% endif %}
{%- endfor -%}
{{ set.label }}
chevron-down
chevron-down
{%- for option in set.options -%}
{%- endfor -%}
{% if set.range != nil %}
{% assign min = set.key | append: '.gte' %}
{% assign max = set.key | append: '.lte' %}
{% assign min_default_position = 0 %}
{% assign max_default_position = set.range_max | ceil %}
{% assign min_default_value = 0 | times: 100 | money %}
{% assign max_default_value = set.range_max | times: 100 | money %}
Women's Bathing Suit Bottoms
Discover the perfect Billabong bikini bottoms to complete your beach-ready look. Our stylish bikini bottoms and bikini shorts are designed to keep you feeling confident and comfortable whether you're lounging poolside or riding waves. Crafted with premium fabrics and flattering cuts, these bathing suit bottoms are a must-have for sunny days.
Explore our collection of womens bikini bottoms featuring a variety of on-trend styles and fits. From cheeky bottoms to high-waisted styles, Billabong women's swim bottoms are designed to flatter all shapes and sizes. Mix and match with bikini tops from our full swimwear line and get ready for summer.
- Choosing a selection results in a full page refresh.