The caps stay on well for me on the bike and keep the muck out, but give the bottle to my toddler and the cap is instantly removed.