@Tim B. This is the way I look at what kind of Cap-ex I should be putting away every month. I will focus on the roof, but a similar process can be followed for other big ticket replacements:
You should know exactly how old the property is. Make it an input in your analysis tool as its an important piece of information.
Say the duplex is 10 years old, then you likely have another 5 years or so (assuming asphalt shingles and its the original roof) till you will have to re-roof. Say it will cost you $10,000 to get this done, then you need to reserve $167 a month, or 12.8% of monthly rents for the roof alone.
This percentage and monthly reserve will go down in the future, since you will have the advantage of a longer life span once you replace the roof.
Its not a good idea, in my opinion, to throw a standard percentage to cap-ex as it can be misleading.
The moral of the story is, keep good cash reserves to do cap-ex work if they arise before your reserves are sufficient, accelerate your initial cap-ex reserve rate if you know that life-spans are coming to an end, and try to get the property at a discount to counter differed cap-ex.