I worked as the laundry product line manager for North America's largest Institutional chemical company. Sodium hypochlorite, i.e., chlorine bleach, has a much shorter, practical shelf life than most people imagine.
In a very competitive environment, we advertised our "bleach" at 7% chlorine. We actually manufactured it at 10%. The 10% formulation ensured it could be shipped to a distribution point, then to the end users and allow it to actually deliver the advertised strength by the time it was typically consumed. Under "normal" or "correct" storage conditions that would typically be about 90 days from manufacture before it fell below spec...and that was with a pH stabilizer that helped to prolong shelf life.
As correctly mentioned previously, storage conditions have a huge effect on shelf life. Exposure to direct sunlight will knock the chorine out of solution VERY quickly (hours). Opaque containers help greatly. Hot storage conditions and containers not tightly sealed follow in descending loss severity.
Most of the brand name chlorine bleach sold for decades in consumer outlets (grocery stores, big box retailers, etc.) was around 5% if really fresh, and the "off brands" may only be around 4%. You can see, with the weaker starting concentrations, the half-life deterioration is going to mitigate its performance pretty quickly. Lately I see some consumer "extra strength" bleach offerings, but if you do the math (ppm to ppm working concentration), they aren't a better value (they're higher profit, surprise, surprise).
Moral of story...use it or lose it. 30 - 60 days gives you the best performance bang for your buck on consumer grade stuff.
(Edit: By the time I typed and posted this, I see Ripcord in post #5 said basically the same thing, albeit notably better to the point!)