{#- Deliberately NOT the shared .variants-popup class: assets/global.js
binds a delegated click on ".variants-popup [type=radio]" that
auto-clicks any ".button-ATC" in the same form — harmless
everywhere else today (nothing else pairs an internal submit
button with that class), but would instantly add-to-cart the
moment a pill is tapped here, before the shopper can review
their choice. Its own class below keeps the reused
variant-matching/price/button-state jQuery (which targets
[data-quickshop] and [data-btn-addtocart] directly) intact. -#}
{#- Deliberately NOT the shared .variants-popup class: assets/global.js
binds a delegated click on ".variants-popup [type=radio]" that
auto-clicks any ".button-ATC" in the same form — harmless
everywhere else today (nothing else pairs an internal submit
button with that class), but would instantly add-to-cart the
moment a pill is tapped here, before the shopper can review
their choice. Its own class below keeps the reused
variant-matching/price/button-state jQuery (which targets
[data-quickshop] and [data-btn-addtocart] directly) intact. -#}
{#- Deliberately NOT the shared .variants-popup class: assets/global.js
binds a delegated click on ".variants-popup [type=radio]" that
auto-clicks any ".button-ATC" in the same form — harmless
everywhere else today (nothing else pairs an internal submit
button with that class), but would instantly add-to-cart the
moment a pill is tapped here, before the shopper can review
their choice. Its own class below keeps the reused
variant-matching/price/button-state jQuery (which targets
[data-quickshop] and [data-btn-addtocart] directly) intact. -#}
{#- Deliberately NOT the shared .variants-popup class: assets/global.js
binds a delegated click on ".variants-popup [type=radio]" that
auto-clicks any ".button-ATC" in the same form — harmless
everywhere else today (nothing else pairs an internal submit
button with that class), but would instantly add-to-cart the
moment a pill is tapped here, before the shopper can review
their choice. Its own class below keeps the reused
variant-matching/price/button-state jQuery (which targets
[data-quickshop] and [data-btn-addtocart] directly) intact. -#}
Bring your drink along for the ride with this red bicycle cup holder. Designed for handlebar mounting, it keeps your favorite cup, bottle, or can within easy reach while you cycle, so you can stay hydrated without stopping.
Made from durable plastic, this bike drink holder is built for everyday use and made to hold steady over bumps on casual rides, commutes, and outdoor outings. It’s simple to install on handlebars and offers a secure, convenient spot for party red cups, bottles, cans, and 18 oz, 24 oz, and 32 oz cups.
Whether you’re heading out for a neighborhood ride, commuting to work, or using your bike as part of an outdoor gathering, this handlebar cup holder adds practical drink storage in a bold red finish. Available in single and multi-pack set options.
⚠️ WARNING (California Proposition 65):
This product may contain chemicals known to the State of California to cause cancer, birth defects, or other reproductive harm.
For more information, please visit www.P65Warnings.ca.gov.
Product FAQs
What size cups does the Red Bicycle Cup Holder accommodate?
▼
The Red Bicycle Cup Holder can hold bottles, cans, and our 18, 24, and 32 oz. cups.
Is the Red Bicycle Cup Holder easy to attach to a bike?
▼
Yes, the Red Bicycle Cup Holder is convenient and lightweight, making it easy to attach to your bike.
Can the Red Bicycle Cup Holder hold other types of cups besides red party cups?
▼
Yes, the Red Bicycle Cup Holder can hold bottles, cans, and cups of various sizes.
Is the Red Bicycle Cup Holder durable and long-lasting?
▼
Yes, the Red Bicycle Cup Holder is made of high-quality materials to ensure durability and longevity.
Does the Red Bicycle Cup Holder come in any other colors?
▼
Currently, the Red Bicycle Cup Holder is only available in red
Spilled my drink on my first ride, had sticky slushes on me the entire day. Great idea, but bad execution
R
Ray Falcon
Great product
Producuct is great! Both functionally and esthetically!
R
Ramon Martinez
Simply Fantastic!
The Bicycle Drink Holder Mount from redcupliving has truly exceeded my expectations. The durable ABS plastic construction ensures it can handle any drink, and it's surprisingly sturdy. Plus, the eco-friendly aspect is a huge win for me.
K
Karen Rivera
Five Stars
The Bicycle Drink Holder Mount from Red Cup Living is incredibly durable, and the fact that it's reusable and eco-friendly makes it even better.
{#- Deliberately NOT the shared .variants-popup class: assets/global.js
binds a delegated click on ".variants-popup [type=radio]" that
auto-clicks any ".button-ATC" in the same form — harmless
everywhere else today (nothing else pairs an internal submit
button with that class), but would instantly add-to-cart the
moment a pill is tapped here, before the shopper can review
their choice. Its own class below keeps the reused
variant-matching/price/button-state jQuery (which targets
[data-quickshop] and [data-btn-addtocart] directly) intact. -#}
{#- Deliberately NOT the shared .variants-popup class: assets/global.js
binds a delegated click on ".variants-popup [type=radio]" that
auto-clicks any ".button-ATC" in the same form — harmless
everywhere else today (nothing else pairs an internal submit
button with that class), but would instantly add-to-cart the
moment a pill is tapped here, before the shopper can review
their choice. Its own class below keeps the reused
variant-matching/price/button-state jQuery (which targets
[data-quickshop] and [data-btn-addtocart] directly) intact. -#}
{#- Deliberately NOT the shared .variants-popup class: assets/global.js
binds a delegated click on ".variants-popup [type=radio]" that
auto-clicks any ".button-ATC" in the same form — harmless
everywhere else today (nothing else pairs an internal submit
button with that class), but would instantly add-to-cart the
moment a pill is tapped here, before the shopper can review
their choice. Its own class below keeps the reused
variant-matching/price/button-state jQuery (which targets
[data-quickshop] and [data-btn-addtocart] directly) intact. -#}
{#- Deliberately NOT the shared .variants-popup class: assets/global.js
binds a delegated click on ".variants-popup [type=radio]" that
auto-clicks any ".button-ATC" in the same form — harmless
everywhere else today (nothing else pairs an internal submit
button with that class), but would instantly add-to-cart the
moment a pill is tapped here, before the shopper can review
their choice. Its own class below keeps the reused
variant-matching/price/button-state jQuery (which targets
[data-quickshop] and [data-btn-addtocart] directly) intact. -#}
{#- Deliberately NOT the shared .variants-popup class: assets/global.js
binds a delegated click on ".variants-popup [type=radio]" that
auto-clicks any ".button-ATC" in the same form — harmless
everywhere else today (nothing else pairs an internal submit
button with that class), but would instantly add-to-cart the
moment a pill is tapped here, before the shopper can review
their choice. Its own class below keeps the reused
variant-matching/price/button-state jQuery (which targets
[data-quickshop] and [data-btn-addtocart] directly) intact. -#}
{#- Deliberately NOT the shared .variants-popup class: assets/global.js
binds a delegated click on ".variants-popup [type=radio]" that
auto-clicks any ".button-ATC" in the same form — harmless
everywhere else today (nothing else pairs an internal submit
button with that class), but would instantly add-to-cart the
moment a pill is tapped here, before the shopper can review
their choice. Its own class below keeps the reused
variant-matching/price/button-state jQuery (which targets
[data-quickshop] and [data-btn-addtocart] directly) intact. -#}
{#- Deliberately NOT the shared .variants-popup class: assets/global.js
binds a delegated click on ".variants-popup [type=radio]" that
auto-clicks any ".button-ATC" in the same form — harmless
everywhere else today (nothing else pairs an internal submit
button with that class), but would instantly add-to-cart the
moment a pill is tapped here, before the shopper can review
their choice. Its own class below keeps the reused
variant-matching/price/button-state jQuery (which targets
[data-quickshop] and [data-btn-addtocart] directly) intact. -#}
{#- Deliberately NOT the shared .variants-popup class: assets/global.js
binds a delegated click on ".variants-popup [type=radio]" that
auto-clicks any ".button-ATC" in the same form — harmless
everywhere else today (nothing else pairs an internal submit
button with that class), but would instantly add-to-cart the
moment a pill is tapped here, before the shopper can review
their choice. Its own class below keeps the reused
variant-matching/price/button-state jQuery (which targets
[data-quickshop] and [data-btn-addtocart] directly) intact. -#}
{#- Deliberately NOT the shared .variants-popup class: assets/global.js
binds a delegated click on ".variants-popup [type=radio]" that
auto-clicks any ".button-ATC" in the same form — harmless
everywhere else today (nothing else pairs an internal submit
button with that class), but would instantly add-to-cart the
moment a pill is tapped here, before the shopper can review
their choice. Its own class below keeps the reused
variant-matching/price/button-state jQuery (which targets
[data-quickshop] and [data-btn-addtocart] directly) intact. -#}