Our vet recommended switching from puppy to adult food at about 1 year old. One of our dogs is a bit rotund, and he was definitely starting to grow fatter as he neared the 12 month mark. The other is really skinny, and has always been really skinny. They both weigh around 7 lbs and are 19 months old, and they each eat 1/3 to 1/2 cup of food per day, and that's the majority of their diet - they don't get a lot of calories from treats. So if your puppy, soon to be adult, is around that weight, I wouldn't worry about him taking 2 or 3 days to finish a cup of food. Hope that helps!