I think cost is one factor. I have a Vivoactive 4 and I love it but it has a reported battery life of 8 days and I get maybe half that with regular run tracking. I'm guessing the 24 days/1-2 weeks is for a considerably more expensive model.
The Garmin Instinct 2 is around $200 and will last several weeks on a charge even using the GPS regularly. Without GPS use I wouldn't be surprised if it lasted a month.