Today, I changed the batteries in all my smoke detectors. I noticed that the battery light in one was blinking. Instead of only replacing the one with a new normal 9v battery, I ordered a pack of 10-year lithium 9v batteries and replaced them all. Now I don’t have to worry about changing them for a handful of years.
Edit - Funnily enough, dinner put them to the test. I was going to test them tomorrow when the kiddo is at daycare.
It really depends, but more and more of them last 10 years and have a battery built in. I’d say most of them now last 10 years. At least, in the US.
I’ve seen them say that on the packaging, and then 6 years later they’re emitting their EoL alarm.
That can happen if the device is installed in a less-than-ideal location. UV, dust, debris, etc can affect the lifespan of the detector.