Gaining weight and muscle comes down to two things: eating more calories than you burn and giving your body enough protein to build new tissue. The sweet spot for a caloric surplus is 300 to 500 extra calories per day, which is enough to fuel muscle growth without packing on unnecessary fat. Below that, progress stalls. Above it, the extra calories mostly become body fat rather than muscle.
How Much Protein You Actually Need
If you’re lifting weights regularly, aim for 1.2 to 1.7 grams of protein per kilogram of body weight each day. For a 170-pound (77 kg) person, that works out to roughly 92 to 131 grams of protein daily. Hitting the higher end of that range matters most when you’re new to training or pushing hard in the gym.
How you spread that protein across the day matters just as much as the total. Each time you eat a protein-rich meal, your muscles ramp up their building process for about 2 to 2.5 hours, then return to baseline. Eating another protein-heavy meal within 5 hours of the last one can blunt that response because your body’s signaling system is still elevated from the previous meal. The practical takeaway: space your protein across three to four meals, each containing at least 30 to 35 grams, and leave roughly 4 to 5 hours between them.
Breakfast is where most people fall short. A bowl of cereal or a piece of toast provides almost no protein. Prioritize getting at least 30 grams at your first meal with eggs, Greek yogurt, or a protein shake to kickstart muscle building early in the day.
The Best Protein-Rich Foods for Muscle
Animal and plant proteins both support muscle growth effectively. A meta-analysis of randomized controlled trials found no significant difference in total lean mass or strength gains between the two sources, though younger adults under 50 showed a slight edge with animal protein (about 0.4 kg more lean mass). If you eat a mix of both, you’re covered.
Your best protein sources include:
- Eggs: 75 calories each, with a complete amino acid profile. Three eggs at breakfast gets you roughly 18 grams of protein.
- Chicken, beef, pork, and fish: 55 to 100 calories per ounce. A 6-ounce chicken breast delivers about 38 grams of protein.
- Greek yogurt (full-fat): 120 to 160 calories per 6 ounces, with 15 to 18 grams of protein depending on the brand.
- Cottage cheese: 120 calories per half cup. Its slow-digesting protein makes it especially useful before bed (more on that below).
- Beans, peas, and lentils: 100 to 120 calories per half cup, with 7 to 9 grams of protein plus fiber and carbohydrates.
- Tofu: 100 calories per half cup, versatile enough to add to almost any meal.
Calorie-Dense Foods That Make Gaining Easier
The biggest obstacle for most people trying to gain weight isn’t knowing what to eat. It’s actually eating enough. Appetite is the bottleneck. Choosing foods that pack more calories into less volume makes hitting your surplus far more manageable than trying to eat mountains of chicken breast and brown rice.
Nuts and nut butters are the most efficient whole-food option. Two tablespoons of peanut or almond butter provide 190 calories, and an ounce of mixed nuts delivers 160 to 200 calories. You can add either to oatmeal, smoothies, or toast without feeling stuffed. Avocados contribute 100 to 150 calories per half, along with the kind of unsaturated fats linked to lower inflammation. Olive oil, at 100 calories per tablespoon, can be drizzled on virtually anything.
Whole milk (150 calories per cup), cheese (115 calories per ounce), and dried fruit like raisins, apricots, or figs (160 to 185 calories per two ounces) are all easy additions that quietly push your daily total higher. Even something as simple as cooking your rice in broth and finishing it with a tablespoon of butter adds over 100 calories to a meal you were already eating.
Why Carbohydrates Still Matter
Protein gets most of the attention, but carbohydrates fuel the training sessions that actually stimulate muscle growth. Your muscles store carbohydrates as glycogen, and those stores deplete during hard lifting. Without enough carbs, your performance drops, recovery slows, and you won’t train with the intensity needed to grow.
Good carb sources for weight gain include oats, rice, potatoes, sweet potatoes, pasta, bread, and fruit. These foods are calorie-dense enough to contribute meaningfully to your surplus while providing the energy your muscles need. After particularly long or intense sessions, prioritizing carbs in your post-workout meal helps restore glycogen faster.
Choosing the Right Fats
Fat is the most calorie-dense nutrient at 9 calories per gram, compared to 4 for protein and carbohydrates. That makes it a powerful tool for anyone struggling to eat enough. But the type of fat matters for long-term health.
Focus on unsaturated fats from sources like avocados, olive oil, nuts, seeds, and fatty fish such as salmon, trout, sardines, and tuna. These foods provide dense calories while supporting lower inflammation levels compared to diets heavy in saturated fat. Flaxseed, hemp seeds, and chia seeds are easy to sprinkle into meals or shakes for an extra calorie and nutrient boost.
High-Calorie Shakes for Hard Gainers
Liquid calories are the single most effective strategy if you struggle with appetite. Drinking 600 calories is dramatically easier than chewing through a plate of food with the same calorie count, and it won’t kill your appetite for the next meal the way a large solid meal can.
A simple recipe: blend one cup of whole milk, one cup of full-fat yogurt, one banana, two tablespoons of protein powder, and two tablespoons of wheat germ. That base provides roughly 600 calories. Add a tablespoon of flaxseed oil for an extra 120 calories, or throw in two tablespoons of peanut butter for another 190. With those additions, a single shake can reach 800 to 900 calories. Drink one between meals, and your daily surplus is handled without forcing yourself through an extra plate of food.
Eating Before Bed Builds More Muscle
Sleep is an overnight fast, and your muscles don’t stop needing amino acids just because you’re unconscious. Eating protein before bed is one of the more underused strategies for muscle growth. Consuming 40 grams of slow-digesting protein (the kind found in cottage cheese, casein-based shakes, or Greek yogurt) before sleep increases overnight muscle-building rates by roughly 22% compared to going to bed on an empty stomach.
Notably, 20 grams before bed didn’t produce a significant increase over a placebo in one study, while 40 grams did. That’s a meaningful threshold. A cup of cottage cheese with some nuts, or a shake made with milk and casein protein, gets you there easily. This strategy works in both younger and older adults, and when applied consistently alongside resistance training, it leads to greater gains in both muscle mass and strength over time.
A Practical Day of Eating
Putting this all together, a day designed for weight and muscle gain might look like this:
- Breakfast (7 AM): Three eggs scrambled with cheese, two slices of toast with peanut butter, and a glass of whole milk. Roughly 35 grams of protein and 700+ calories.
- Lunch (12 PM): Rice bowl with 6 ounces of chicken thigh, avocado, black beans, and olive oil. Around 35 grams of protein and 650+ calories.
- Afternoon shake (3–4 PM): Whole milk, banana, yogurt, protein powder, and nut butter blended together. About 30 to 40 grams of protein and 600 to 800 calories.
- Dinner (7 PM): Salmon fillet with roasted potatoes, vegetables cooked in olive oil, and a side of bread. Around 35 grams of protein and 700+ calories.
- Pre-bed snack (10 PM): A cup of cottage cheese topped with nuts and dried fruit. About 40 grams of protein and 350+ calories.
That plan provides well over 3,000 calories and 170+ grams of protein spread across five eating opportunities, with enough spacing between meals to maximize the muscle-building response each time. Adjust portions up or down based on your body size and activity level, but the structure works for most people aiming to gain.