Personally I make shakes every day for work and they don't spoil (although I do keep them chilled in a lunchbag with a cold pack in it, then in the fridge when i get to work). I also called and checked with customer service with whom I buy my protein from and they said it would be no problem as they said it takes a long time for their protein to break down (didn't give me exact figures). That said after I make my shake in the morn it gets eaten that day but usually 6-7 hours later and I've never had a problem.
Ingredients may be a factor however I'm not sure. As such I'll share what I usually put in mine:
1/2cup oatmeal, 3-4eggs, tsp psylium seed husk, & 2 scoops whey.
I also substitute veggies (carots, brocolli, or green beans) for the oatmeal when I work late tuesday nights.