Where to buy pet food at the lowest prices

Photo does not have a caption

HOUSTON – If you buy the same food for your pet every week or every month, you probably just put the chore on autopilot and pick it up at the same place every time. 

Consumer expert Amy Davis shopped at seven different retailers, both online and in-store, to find out where you'll save the most money. 

Pet foods used in this comparison

Not every retailer carried all seven types of food. Warehouse clubs Sam's Club and Costco had the most limited selection. In those cases, we compared the prices of only the foods available at those retailers. Since the bags of food varied from one store to the next, we did the math to compare the food by the cost per pound. 

The biggest takeaways

PetSmart had the highest prices for five out of the seven foods. The price difference was significant. 
Purina One Indoor Advantage cat food, for example, cost $2.42 a pound at PetSmart. It was just $1.13 a pound at Amazon and Chewy.

If Sam's Club or Costco carries the pet food you feed your dog or cat, they will always have the lowest price. Purina Dog Chow is 34 cents a pound at Sam's Club, while it was 60 cents a pound at most at Target, Walmart and Chewy. Amazon had it for 45 cents a pound. You do have to buy a much larger bag at Sam's Club, but when you do the math, you realize a 20-pound bag at Walmart costs $11.96. The same amount would be just $6.80 at Sam's Club. 

Target and Walmart's prices were almost always within 20 cents of each other, but Target never had lower prices than Walmart for any of the pet foods we compared.

Chewy and Amazon's prices matched to the penny for five out of the seven products we compared, but you won't always get the best price on Amazon and Chewy.

If you check the food you use and find it is less expensive there, sign up for the retailers "Subscribe and Save" or "Ship and Save" program where they automatically send you the food at certain intervals. You can save at least an extra 5%. 

Comparison results

About the Author: