Satiety · Article

15 Filling Lunches, Dinners, and Snacks That Keep You Full on Fewer Calories

Five lunches, five light dinners and five snacks that keep you full on fewer calories, calculated gram by gram for protein, fiber and energy, and why each one works.

A filling lunch or dinner brings together three things: a clear serving of protein, plenty of vegetables or beans for volume and fiber, and little added fat. Built that way, the ten main dishes in this guide fill a plate with 310 to 535 g of food (11 to 19 oz) for 280 to 461 kcal, with 16.9 to 42.8 g of protein. The five snacks come in between 155 and 214 kcal.

In 30 seconds

  • The ten main dishes fill a plate with 310 to 535 g of food (11 to 19 oz) for 280 to 461 kcal, with 16.9 to 42.8 g of protein; the five snacks come in between 155 and 214 kcal.
  • Harvard’s Healthy Eating Plate: half the plate vegetables and fruits, a quarter whole grains, a quarter healthy protein.
  • The 2015 review puts forward at least 25 to 30 g of protein per meal as a general proposal, not an individual prescription.
  • Top dish for protein plus fiber per calorie: tilapia with nopales and black beans, with 42.8 g of protein and 13.3 g of fiber for 410 kcal.
  • Olive oil has 884 kcal per 100 g: the 5 g (1 tsp) in these tables is 44 kcal.

I calculated every dish from the USDA FoodData Central values on each food page in our database (in Spanish; the numbers read the same), and you can adapt them. Which single foods fill you up most is covered in the most filling foods, according to the science; breakfasts are in 12 high-protein breakfasts for days when you have no appetite.

What makes a meal filling

Four levers explain almost everything. The full physiology is in the science of satiety.

  • Protein. A 2015 review credits higher-protein meals with a modest satiating effect: more fullness, but not fewer calories at the next meal. The authors put forward at least 25 to 30 g per meal as a general proposal, not an individual prescription.
  • Fiber. Its effect is smaller than you often hear. In a 2013 systematic review, only 39% of 107 fiber treatments reduced perceived appetite. My reading: fiber helps more inside whole foods, such as beans, vegetables or whole grains.
  • Water, volume and energy density (calories per gram). Barbara Rolls sums it up: we tend to eat a fairly constant weight of food. In a trial with 18 women, the densest version of the same dish added up to about 1,800 kcal a day and the least dense to about 1,380, with no difference in hunger or fullness.
  • Pace. A meta-analysis of 22 studies linked eating more slowly with eating less at that meal, although it didn’t change hunger at the end of the meal or over the next three and a half hours.

The filling plate: a template

The template I use is Harvard’s Healthy Eating Plate: half the plate vegetables and fruits, a quarter whole grains, a quarter healthy protein, and water to drink. Harvard also points out that potatoes don’t count as a vegetable.

Part of the plate What goes there Examples from this guide
Half Vegetables Cactus paddles (nopales), chayote, Swiss chard, pumpkin, cabbage, salad
A quarter Protein Fish, chicken, lean beef, eggs, tuna, beans and lentils
A quarter Whole grain, starchy vegetable or beans Whole-wheat pasta, quinoa, potato, corn tortilla, arepa
To drink Water Water, or coffee or tea with little or no sugar

I adapt the whole-grain quarter to include potatoes, tortillas or an arepa. Beans and lentils do double duty: Harvard counts them as protein, and they bring fiber too.

How to read the tables. Amounts are edible weight. Meat and fish are weighed raw, except the cooked chicken and the drained tuna; everything else is as each row says. I don’t count salt, spices, lemon or the water in the broth. Totals add up the rows. Ounces and cups are rounded and approximate; the grams are what I calculated from. Calories are for reference, not a target.

5 filling lunches

1. Lentil stew with pumpkin and carrot

Food Amount Protein (g) Fiber (g) kcal
Lentils, cooked 200 g (about 1 cup) 18.0 15.8 232
Pumpkin, cooked 100 g (3.5 oz) 0.7 1.1 20
Carrot 50 g (1 small) 0.5 1.4 21
Tomato 80 g (about ⅔ of a medium) 0.7 1.0 14
Onion 30 g (about 3 tbsp chopped) 0.3 0.5 12
Olive oil 5 g (1 tsp) 0.0 0.0 44
Total 465 g (16.4 oz) 20.2 19.8 343

Why it’s filling: it’s the highest-fiber dish in this guide (19.8 g), and the lentils work as both protein and starch. Lentils scored 133 on Holt’s satiety index, where white bread is 100.

2. Grilled tilapia with cactus paddles (nopales) and black beans

Food Amount Protein (g) Fiber (g) kcal
Tilapia 150 g (5.3 oz) 30.2 0.0 144
Cactus paddles (nopales), cooked 150 g (about 1 cup) 2.0 3.0 23
Black beans, cooked 100 g (a heaping ½ cup) 8.9 8.7 132
Corn tortilla 30 g (one 6-inch tortilla) 1.7 1.6 67
Olive oil 5 g (1 tsp) 0.0 0.0 44
Total 435 g (15.3 oz) 42.8 13.3 410

Why it’s filling: protein and volume. It’s the highest-protein dish here (42.8 g), and the nopales put 150 g on the plate for 23 kcal. Many US supermarkets and Mexican grocery stores sell them fresh or jarred; the numbers here are for fresh nopales, cooked.

3. Beef and vegetable soup (caldo de res)

Food Amount Protein (g) Fiber (g) kcal
Lean beef (top round) 100 g (3.5 oz) 23.6 0.0 124
Potato, boiled 100 g (about ¾ cup diced) 1.9 1.8 87
Sweet corn, cooked 50 g (about ⅓ cup kernels) 1.7 1.2 48
Chayote, cooked 100 g (about ⅔ cup) 0.6 2.8 24
Pumpkin, cooked 100 g (3.5 oz) 0.7 1.1 20
Carrot 50 g (1 small) 0.5 1.4 21
Total 500 g (17.6 oz) 29.0 8.3 324

Why it’s filling: over a pound (500 g) of food for 324 kcal, plus the broth. Potatoes scored 323 on the Holt index, the highest of the 38 foods in the study.

4. Chicken, quinoa and salad bowl

Food Amount Protein (g) Fiber (g) kcal
Chicken breast, cooked 100 g (3.5 oz) 29.0 0.0 151
Quinoa, cooked 100 g (a heaping ½ cup) 4.4 2.8 120
Romaine lettuce 60 g (about 1¼ cups shredded) 0.7 1.3 10
Tomato 100 g (1 small) 0.9 1.2 18
Red bell pepper 80 g (about ½ cup chopped) 0.8 1.7 21
Avocado 30 g (1 oz, about ⅕ of a medium) 0.6 2.0 48
Total 470 g (16.6 oz) 36.4 9.0 368

Why it’s filling: 36.4 g of protein on a base of raw vegetables. You can serve the salad first: in a trial with 42 women, a salad with light dressing before lunch cut the total calories of the meal by 7% to 12%, depending on its size.

5. Whole-wheat pasta with lean ground beef and zucchini

Food Amount Protein (g) Fiber (g) kcal
Whole-wheat pasta, cooked 150 g (about 1 cup) 9.0 5.9 224
Ground beef, 95% lean 100 g (3.5 oz) 21.4 0.0 137
Tomato 150 g (1 medium-large) 1.3 1.8 27
Zucchini 100 g (about ¾ cup chopped) 1.2 1.0 17
Onion 30 g (about 3 tbsp chopped) 0.3 0.5 12
Olive oil 5 g (1 tsp) 0.0 0.0 44
Total 535 g (18.9 oz) 33.2 9.2 461

Why it’s filling: whole-wheat pasta scored 188 on the Holt index, compared with 119 for white pasta. The tomato and zucchini make the plate bigger for 44 kcal between them. This is the highest-calorie dish of the fifteen.

5 light, filling dinners

6. Swiss chard and mushroom omelet

Food Amount Protein (g) Fiber (g) kcal
Eggs 2 eggs (110 g) 13.9 0.0 157
Swiss chard, cooked 150 g (a scant cup) 2.8 3.2 30
White mushrooms 100 g (about 1½ cups sliced) 3.1 1.0 22
Whole-wheat bread 30 g (1 slice) 3.7 1.8 76
Olive oil 5 g (1 tsp) 0.0 0.0 44
Total 395 g (13.9 oz) 23.5 6.0 329

Why it’s filling: eggs scored 150 on the Holt index, and 250 g (almost 9 oz) of vegetables add volume for 52 kcal.

7. Baked cod with zucchini and potato

Food Amount Protein (g) Fiber (g) kcal
Atlantic cod 150 g (5.3 oz) 26.7 0.0 123
Zucchini 150 g (about 1¼ cups chopped) 1.8 1.5 26
Potato, boiled 100 g (about ¾ cup diced) 1.9 1.8 87
Olive oil 5 g (1 tsp) 0.0 0.0 44
Total 405 g (14.3 oz) 30.4 3.3 280

Why it’s filling: cod has 82 kcal per 100 g (3.5 oz), almost all of it protein and water. It’s the lightest main dish, with 30.4 g of protein.

8. White bean and tuna salad

Food Amount Protein (g) Fiber (g) kcal
White beans, cooked 100 g (a heaping ½ cup) 9.7 6.3 139
Light tuna, canned in water, drained 60 g (about half a 5-oz can) 15.3 0.0 70
Tomato 100 g (1 small) 0.9 1.2 18
Cucumber 100 g (about 1 cup sliced) 0.7 0.5 15
Romaine lettuce 60 g (about 1¼ cups shredded) 0.7 1.3 10
Onion 20 g (about 2 tbsp chopped) 0.2 0.3 8
Olive oil 5 g (1 tsp) 0.0 0.0 44
Total 445 g (15.7 oz) 27.5 9.6 304

Why it’s filling: beans and fish together, on 280 g (about 10 oz) of raw vegetables. Watch the dressing: in the Rolls salad trial, a salad loaded with cheese and regular dressing raised the calories of the meal by 8% to 17%.

9. Beef salpicón (shredded beef salad)

Food Amount Protein (g) Fiber (g) kcal
Lean beef (top round) 100 g (3.5 oz) 23.6 0.0 124
Romaine lettuce 60 g (about 1¼ cups shredded) 0.7 1.3 10
Tomato 100 g (1 small) 0.9 1.2 18
Cabbage 60 g (about ¾ cup shredded) 0.8 1.5 15
Onion 20 g (about 2 tbsp chopped) 0.2 0.3 8
Avocado 30 g (1 oz) 0.6 2.0 48
Corn tortilla 30 g (one 6-inch tortilla) 1.7 1.6 67
Total 400 g (14.1 oz) 28.5 7.9 290

Why it’s filling: salpicón is a Mexican dish of cooked, shredded beef tossed with raw vegetables. Shredded meat and raw vegetables take chewing, and eating more slowly was linked to eating less in the Robinson meta-analysis. It also brings 28.5 g of protein for 290 kcal.

10. Domino arepa: black beans and cheese

Food Amount Protein (g) Fiber (g) kcal
Arepa (corn cake) 90 g (3.2 oz, one small) 4.9 2.3 197
Black beans, cooked 80 g (a scant ½ cup) 7.1 7.0 106
Queso fresco 20 g (about 2½ tbsp crumbled) 3.6 0.0 60
Tomato 60 g (about half a small one) 0.5 0.7 11
Cabbage 60 g (about ¾ cup shredded) 0.8 1.5 15
Total 310 g (10.9 oz) 16.9 11.5 389

A note on arepas: they’re the griddled corn cakes of Venezuela and Colombia, and the “domino” version is filled with black beans and white cheese. Many US supermarkets carry them frozen, or the precooked cornmeal (masarepa) to make them at home. The values here are USDA’s for a restaurant arepa, so homemade ones will vary.

Why it’s filling: the black beans bring fiber (7.0 g) and protein. Even so, it’s the dinner with the least protein and fiber per calorie: arepas have 219 kcal per 100 g. Serving it with cabbage and tomato adds volume.

5 filling snacks

11. Jícama and cucumber with peanuts

Food Amount Protein (g) Fiber (g) kcal
Jícama 150 g (about 1¼ cups sliced) 1.1 7.4 57
Cucumber 100 g (about 1 cup sliced) 0.7 0.5 15
Peanuts 15 g (0.5 oz, about 1½ tbsp) 3.9 1.3 85
Total 265 g (9.3 oz) 5.7 9.2 157

Why it’s filling: jícama has 4.9 g of fiber and 90.1 g of water per 100 g, and it crunches. The peanuts add a little protein in a small amount.

12. Greek yogurt with guava

Food Amount Protein (g) Fiber (g) kcal
Greek yogurt, plain, whole milk 150 g (about ⅔ cup) 13.5 0.0 146
Guava 100 g (about 2 small fruits) 2.6 5.4 68
Total 250 g (8.8 oz) 16.1 5.4 214

Why it’s filling: protein from the yogurt and fiber from the guava, the fruit in our database with the most fiber per usual serving.

13. Cottage cheese with tomato and cucumber

Food Amount Protein (g) Fiber (g) kcal
Cottage cheese, 2% 150 g (about ⅔ cup) 15.6 0.0 122
Tomato 100 g (1 small) 0.9 1.2 18
Cucumber 100 g (about 1 cup sliced) 0.7 0.5 15
Total 350 g (12.3 oz) 17.2 1.7 155

Why it’s filling: 350 g of food for 155 kcal, with 17.2 g of protein. It has the lowest energy density of the fifteen.

14. Pear with almonds

Food Amount Protein (g) Fiber (g) kcal
Pear 170 g (1 medium) 0.6 5.3 97
Almonds 15 g (0.5 oz, about 12) 3.2 1.9 87
Total 185 g (6.5 oz) 3.8 7.2 184

Why it’s filling: a whole fruit you have to chew, with 5.3 g of fiber. It’s the lowest in protein: if you want more, look at 12 or 13.

15. Esquites without mayo

Food Amount Protein (g) Fiber (g) kcal
Sweet corn, cooked (kernels cut from corn on the cob) 150 g (a scant cup) 5.1 3.6 144
Queso fresco 15 g (about 2 tbsp crumbled) 2.7 0.0 45
Total 165 g (5.8 oz) 7.8 3.6 189

Why it’s filling: esquites are Mexican street corn served off the cob, in a cup. Cooked corn has 96 kcal per 100 g, and you eat it kernel by kernel. Street-cart versions usually come with mayo, crema or butter, which I don’t count here.

All 15 dishes ranked by protein and fiber per calorie

I rank them by protein plus fiber per 100 kcal, the same measure as in the guide to the most filling foods.

# Dish Meal Protein Fiber kcal Protein + fiber per 100 kcal
2 Tilapia with nopales and black beans Lunch 42.8 g 13.3 g 410 13.7 g
9 Beef salpicón Dinner 28.5 g 7.9 g 290 12.6 g
4 Chicken, quinoa and salad bowl Lunch 36.4 g 9.0 g 368 12.3 g
8 White bean and tuna salad Dinner 27.5 g 9.6 g 304 12.2 g
13 Cottage cheese with tomato and cucumber Snack 17.2 g 1.7 g 155 12.2 g
7 Cod with zucchini and potato Dinner 30.4 g 3.3 g 280 12.0 g
1 Lentil stew with pumpkin Lunch 20.2 g 19.8 g 343 11.7 g
3 Beef and vegetable soup Lunch 29.0 g 8.3 g 324 11.5 g
12 Greek yogurt with guava Snack 16.1 g 5.4 g 214 10.0 g
11 Jícama, cucumber and peanuts Snack 5.7 g 9.2 g 157 9.5 g
5 Whole-wheat pasta with ground beef Lunch 33.2 g 9.2 g 461 9.2 g
6 Swiss chard and mushroom omelet Dinner 23.5 g 6.0 g 329 9.0 g
10 Domino arepa Dinner 16.9 g 11.5 g 389 7.3 g
15 Esquites without mayo Snack 7.8 g 3.6 g 189 6.0 g
14 Pear with almonds Snack 3.8 g 7.2 g 184 6.0 g

Data: USDA FoodData Central. Ties after rounding are broken with more decimal places. This measure can’t see volume: the soup and the cottage cheese take up a lot of plate for their calories. For your own combinations, the filling-foods finder (in Spanish) sorts foods by protein, fiber or satiety.

On a GLP-1: smaller portions

If you take semaglutide (Ozempic, Wegovy) or tirzepatide (Zepbound, Mounjaro) and feel full after a few bites, the challenge runs the other way. What each bite gives you matters more than how much it fills you.

  • Half a serving still counts. Half the tilapia plate brings 21.4 g of protein; half the chicken bowl, 18.2 g.
  • Protein first. The 2025 advisory on nutrition and GLP-1 therapy, from four US medical and nutrition societies, notes that starting with the protein part of the plate helps you get enough protein.
  • Fiber, gradually. According to the same advisory, avoiding fatty or very high-fiber foods in the first days may ease nausea. The lentil stew (19.8 g of fiber) might fit better later on.

I go through it phase by phase in what to eat on GLP-1 medications, and the weekly menu for small appetites (in Spanish) spreads small meals across seven days. Talk to your doctor or a registered dietitian about adapting your diet to your situation; decisions about your treatment belong to you and your doctor.

What doesn’t fill you up, even with the calories

  • Liquid calories. In a trial with 15 people, taking about 450 kcal a day as jelly beans led them to eat less of everything else; taking it as soda didn’t. A review of 253 tests found that people eat less after solid or semi-solid foods than after liquids.
  • Ultra-processed foods. In a 2019 NIH trial, 20 adults living on a research ward ate about 508 kcal more a day, and ate faster, on the ultra-processed diet than without it. The trial is small and short, but it fits with Holt: the croissant scored 47.
  • Unmeasured added fat. Olive oil has 884 kcal per 100 g: the 5 g (1 tsp) in these tables is 44 kcal. It has a place on your plate, but not the job of filling you up.

Eating well, not as little as possible

These dishes are for eating calmly and getting to your next meal without overwhelming hunger. They’re not for eating as little as possible: filling up on vegetables so you don’t eat anything else isn’t healthy.

If food makes you anxious, if you skip meals to make up for eating, or if hunger frightens you, talk to a health professional. MedlinePlus, from the US National Library of Medicine, points out that eating disorders are serious mental health conditions and that asking for help matters.

Frequently asked questions

What should I eat for dinner so I’m not hungry at night?

A dinner with protein, vegetables and some starch, like the cod with potato (30.4 g of protein) or the beef salpicón (28.5 g). No dish guarantees it: sleep, stress and what you ate earlier all play a part, as I explain in the science of satiety.

How many calories should a filling dinner have?

There’s no number that works for everyone: it depends on your age, your activity, your health and the rest of your day. The dinners in this guide come in at 280 to 389 kcal, but that describes the dishes, not a target. A registered dietitian can work out a personal number with you.

Which meal fills you up most for the fewest calories?

By protein and fiber per calorie, the tilapia with nopales and black beans. By weight, the cottage cheese with tomato and cucumber: 350 g (12.3 oz) for 155 kcal.

Is a meal-replacement shake as filling as a meal?

Generally not: in studies, people eat less after a solid food than after a liquid one. I don’t review shakes or commercial satiety products.

What’s the most filling snack between meals?

Of the five, the cottage cheese with tomato and cucumber (17.2 g of protein) and the Greek yogurt with guava (16.1 g of protein and 5.4 g of fiber).

Sources

Sources consulted for this article, with the access date.

  1. Other sourceLeidy HJ, et al. The role of protein in weight loss and maintenance. Am J Clin Nutr. 2015;101(6):1320S-1329S. doi:10.3945/ajcn.114.084038. American Journal of Clinical Nutrition. accessed .
  2. Other sourceClark MJ, Slavin JL. The effect of fiber on satiety and food intake: a systematic review. J Am Coll Nutr. 2013;32(3):200-11. doi:10.1080/07315724.2013.791194. Journal of the American College of Nutrition. accessed .
  3. Other sourceRolls BJ. The relationship between dietary energy density and energy intake. Physiol Behav. 2009;97(5):609-15. doi:10.1016/j.physbeh.2009.03.011. Physiology & Behavior. accessed .
  4. Clinical trialBell EA, Castellanos VH, Pelkman CL, Thorwart ML, Rolls BJ. Energy density of foods affects energy intake in normal-weight women. Am J Clin Nutr. 1998;67(3):412-20. doi:10.1093/ajcn/67.3.412. American Journal of Clinical Nutrition. accessed .
  5. Clinical trialRolls BJ, Roe LS, Meengs JS. Salad and satiety: energy density and portion size of a first-course salad affect energy intake at lunch. J Am Diet Assoc. 2004;104(10):1570-6. doi:10.1016/j.jada.2004.07.001. Journal of the American Dietetic Association. accessed .
  6. Meta-analysisRobinson E, et al. A systematic review and meta-analysis examining the effect of eating rate on energy intake and hunger. Am J Clin Nutr. 2014;100(1):123-51. doi:10.3945/ajcn.113.081745. American Journal of Clinical Nutrition. accessed .
  7. Clinical trialHolt SH, Miller JC, Petocz P, Farmakalidis E. A satiety index of common foods. Eur J Clin Nutr. 1995;49(9):675-90. PMID 7498104. European Journal of Clinical Nutrition (PubMed). accessed .
  8. InstitutionHealthy Eating Plate. Harvard T.H. Chan School of Public Health, The Nutrition Source. accessed .
  9. Clinical trialHall KD, et al. Ultra-Processed Diets Cause Excess Calorie Intake and Weight Gain: An Inpatient Randomized Controlled Trial of Ad Libitum Food Intake. Cell Metab. 2019;30(1):67-77.e3. doi:10.1016/j.cmet.2019.05.008. Cell Metabolism. accessed .
  10. Clinical trialDiMeglio DP, Mattes RD. Liquid versus solid carbohydrate: effects on food intake and body weight. Int J Obes Relat Metab Disord. 2000;24(6):794-800. doi:10.1038/sj.ijo.0801229. International Journal of Obesity. accessed .
  11. Meta-analysisAlmiron-Roig E, et al. Factors that determine energy compensation: a systematic review of preload studies. Nutr Rev. 2013;71(7):458-73. doi:10.1111/nure.12048. Nutrition Reviews. accessed .
  12. Clinical guidelineMozaffarian D, et al. Nutritional priorities to support GLP-1 therapy for obesity: A joint Advisory from ACLM, ASN, OMA and The Obesity Society. Obesity. 2025;33(8):1475-1503. doi:10.1002/oby.24336. Obesity (The Obesity Society, Wiley). accessed .
  13. InstitutionEating Disorders. MedlinePlus, U.S. National Library of Medicine (NIH). accessed .
  14. Official databaseFoodData Central (per-100 g values for each food cited in the /alimentos/ food pages). U.S. Department of Agriculture, Agricultural Research Service. accessed .