Weight Gain Foods on a Budget
Affiliate disclosure (FTC): WeightGain.us is reader-supported. Some links in this guide may be affiliate links, meaning we could earn a small commission if you buy through them — at no extra cost to you. This never changes our recommendations, which are based on published evidence.
Gaining weight doesn't require expensive supplements or premium groceries. The most cost-effective weight gain foods are cheap, calorie-dense staples — oats, rice, eggs, peanut butter, whole milk, bananas, potatoes and dried beans — that deliver the most calories per dollar. Here are the best budget picks ranked by value, a low-cost meal day, and a homemade gainer that beats any store tub on price.
- Think calories per dollar: oats, rice, eggs, peanut butter, milk and beans win.
- Eggs, beans, canned tuna and milk are the cheapest quality proteins.
- A homemade milk-oats-peanut-butter shake beats any mass-gainer tub on price.
- Buy staples in bulk, use frozen produce, cook in batches, choose store brands.
Best calories per dollar
To gain weight cheaply, think in calories per dollar, not just price. A bag of oats or rice, a dozen eggs and a jar of peanut butter deliver enormous calories for a few dollars — far more than packaged snacks or supplements. The USDA's Thrifty Food Plan and decades of food-cost research consistently rank grains, legumes, eggs, oils and milk among the cheapest sources of energy and protein. Build your diet around those, and a calorie surplus becomes affordable.
Cheap calorie-dense staples
| Food | Why it's great value |
|---|---|
| Oats | Cents per serving, ~150 cal per 1/2 cup dry, filling and versatile |
| Rice & pasta | Bulk carbohydrate calories for very little money |
| Potatoes | Cheap, calorie-dense with added oil or butter |
| Peanut butter | ~190 cal per 2 tbsp; one of the best value calorie sources |
| Whole milk | ~150 cal per cup; cheap liquid calories + protein |
| Bananas | Often the cheapest fruit; easy calories |
| Vegetable oil | The cheapest pure calories — a spoon adds ~120 |
| Dried beans & lentils | Protein + carbs + fiber, pennies per serving |
Cheap protein sources
Protein doesn't have to mean pricey cuts of meat. The best-value options are eggs, dried beans and lentils, canned tuna, whole milk, peanut butter, cottage cheese, and a basic tub of whey or store-brand protein powder. Eggs in particular are one of the cheapest complete proteins available. A plain whey tub costs far less per gram of protein than ready-to-drink shakes — see our protein powder guide.
A budget meal day (~3,000 kcal)
| Meal | Food | ~Cal |
|---|---|---|
| Breakfast | Oats cooked in whole milk with peanut butter and banana | ~650 |
| Snack | 2 boiled eggs + a glass of whole milk | ~350 |
| Lunch | Rice and beans with oil and cheese | ~750 |
| Snack | Peanut butter sandwich | ~400 |
| Dinner | Pasta with canned tuna, olive oil and frozen veg | ~750 |
Every item here is a low-cost staple, and the whole day still hits a solid surplus.
The cheapest homemade gainer
Skip the expensive mass-gainer tub. Blend whole milk + oats + peanut butter + a banana (add cheap whey if you have it) for roughly 800–1,000 calories at a fraction of the cost of a commercial gainer — which is mostly cheap maltodextrin anyway. Full recipes in our weight gain shakes guide.
Money-saving tips
- Buy staples in bulk — oats, rice, dried beans and oil are cheapest in large bags.
- Use frozen produce — cheaper than fresh, lasts longer, just as nutritious.
- Cook in batches — a big pot of rice and beans is days of cheap meals.
- Choose store brands — identical nutrition, lower price.
- Skip supplements you don't need — whole food covers everything; protein powder is the only one worth budgeting for.
The bottom line
Gaining weight on a budget is entirely doable without supplements or premium groceries. Build your diet around the cheapest calorie-dense staples, get protein from eggs, beans and milk, and blend your own gainer at a fraction of a tub's cost. Eat big for less, hit your surplus, and your wallet barely notices.
Frequently asked questions
- What are the cheapest foods to gain weight?
- Oats, rice, pasta, potatoes, eggs, peanut butter, whole milk, bananas, vegetable oil and dried beans deliver the most calories per dollar. Building your diet around these staples makes a calorie surplus affordable without supplements or premium groceries.
- How can I gain weight on a tight budget?
- Buy calorie-dense staples in bulk, lean on eggs, beans, oats, rice and peanut butter for cheap calories and protein, use frozen produce, cook in batches, and make a homemade gainer shake from milk, oats, peanut butter and banana instead of buying tubs.
- What is the cheapest source of protein for weight gain?
- Eggs, dried beans and lentils, canned tuna, whole milk, peanut butter and cottage cheese are the best-value proteins. A plain store-brand whey tub also costs far less per gram of protein than ready-to-drink shakes.
- Do I need expensive supplements to gain weight?
- No. Whole food covers everything you need to gain weight. The only supplement worth budgeting for is a basic protein powder, and even that is optional if you hit your protein target from cheap foods like eggs, beans and milk.
- What is the cheapest homemade weight gainer?
- Blend whole milk, oats, peanut butter and a banana for roughly 800 to 1,000 calories at a fraction of the cost of a commercial mass gainer, which is mostly inexpensive maltodextrin. Add cheap whey if you have it for extra protein.
Keep reading
References
Sources: USDA FoodData Central · NIH/NIDDK — Weight Management · Mayo Clinic — Healthy weight gain · Academy of Nutrition and Dietetics · ISSN — Protein & Exercise Position Stand.