Totally unpredictable
As a general rule, the less expensive hoses permeate pretty quickly...but that's not cast in stone either. The while sanitation hose on one of my own boats was 7+ years old without a trace of odor permeation when I sold the boat. Used the identical hose on the next boat...it started stinking in less that 90 days.
SeaLand puts a 5 yr warranty on their pricy "OdorSafe" hose, but it's not bulletproof either...I've been on boats on which it's permeated in a year or less and heard of many others. The only hose that I've yet to hear of a single odor permeation failure is Trident 101/102
Trident Marine: Sanitation Hose which has the same 5 yr warranty and about the same list price as "OdorSafe," but can be found for a LOT less if you know wnere to shop.
It's prob'ly a good idea to replace any hose that's more than about 10 years old, whether it stinks or not...'cuz after 10 years hoses start to become hard, dry and brittle...a disaster waiting to happen. Overheating hoses to get 'em onto fittings can also cause 'em fail--to split and tear.
If none of the above, there's only one reason to replace hoses: they stink. Which, as noted above, can happen any time from months to years or never. If you think your hoses stink, there's a simple test: wet a clean rag in hot water...wring it out and wrap it around a section of hose. When the rag has cooled, remove it and smell it. No odor on the rag, that section of hose is fine...but if you can smell the same odor on the rag, that hose needs to be replaced, 'cuz replacement is the only cure. Use a clean rag for each section of hose.