I LOVE the concept of these cups (as cups getting knocked over is an everyday occurrence at our house), and I think they would be good for maybe a 2-year-old, but they're too small for a 3 or 4 year old. They hold 4 oz if filled to the very top. My daughter is old enough to get water for herself, so with these cups she ALWAYS overfills it, and ends up splashing it all over the floor as she's walking with it.