← Back to blog

Do Beans Spike Your Blood Sugar?

TL;DR: Beans are one of the best starchy foods for blood sugar. Most beans have a glycemic index of 24–40 — far lower than rice (GI 72–83), bread (GI 75), or potatoes (GI 78). The reason is structural: bean starch is locked inside thick, intact cell walls that digestive enzymes cannot easily penetrate. Beans also contain high amounts of resistant starch and soluble fiber that further slow glucose absorption.

How much do beans spike blood sugar?

Beans produce remarkably low blood sugar spikes for a food that is 60–65% carbohydrate by dry weight. The reason is their unique physical structure.

Bean cells have thick, rigid cell walls made of cellulose and other indigestible fibers. Even after cooking, these cell walls remain largely intact. Starch inside the cells cannot be accessed by digestive enzymes until the cell walls are physically broken down — which happens slowly in the gut.

This is fundamentally different from refined grains, where the cellular structure has been completely destroyed by milling. In beans, the starch is physically imprisoned. Enzymes can only access starch from cells that have been broken open during chewing or cooking.

Beans and legumes compared: blood sugar impact

Bean/legumeGlycemic indexFiber per cup (cooked)Protein per cupResistant starch
Chickpeas28 (low)12.5 g15 gHigh
Lentils29–32 (low)15.6 g18 gHigh
Kidney beans24–29 (low)13.1 g15 gVery high
Black beans30 (low)15 g15 gHigh
Navy beans31 (low)19.1 g15 gHigh
Pinto beans39 (low)15.4 g15 gHigh
Baked beans (canned)48 (low–medium)10.4 g12 gModerate
Refried beans38–40 (low)12.2 g14 gModerate

Even at the high end, baked beans (GI 48) have a lower glycemic index than most fruits, all breads, and all rice. Beans are consistently the lowest-GI starchy food category.

Canned baked beans have a higher GI than plain beans because they are cooked longer and often contain added sugar (3–15 grams per serving depending on brand). Plain canned beans without sauce retain a low GI similar to home-cooked beans.

Why do beans have such a low glycemic index?

Three structural factors combine to make beans exceptionally low-GI:

  1. Intact cell walls. Bean cells survive cooking and chewing with their walls mostly intact. A 1992 study in the European Journal of Clinical Nutrition found that the physical entrapment of starch within intact cell walls was the primary reason for the low glycemic response of legumes.

  2. High resistant starch. Beans contain 2–5 grams of resistant starch per serving — starch that passes through the small intestine without being digested. This resistant starch functions like fiber, feeding beneficial gut bacteria rather than raising blood glucose.

  3. High soluble fiber. The soluble fiber in beans forms a viscous gel in the intestine that physically slows glucose absorption at the intestinal wall. A cup of lentils provides 15.6 grams of total fiber — more than most people eat in an entire day.

Do beans help control blood sugar at the next meal too?

Yes. Beans produce what researchers call the “second meal effect” — eating beans at one meal improves glucose tolerance at the next meal, even hours later.

A 2012 study in the Archives of Internal Medicine (now JAMA Internal Medicine) found that a diet rich in legumes improved glycemic control in people with type 2 diabetes, reducing HbA1c (a measure of long-term blood sugar) significantly over three months.

The mechanism involves the resistant starch and soluble fiber in beans being fermented by gut bacteria in the large intestine, producing short-chain fatty acids (SCFAs) that improve insulin sensitivity for hours after the meal.

What is the best way to eat beans for blood sugar management?

  1. Eat them as a replacement for rice, bread, or potatoes. Swapping rice for lentils at a meal dramatically reduces the glucose spike.
  2. Choose whole beans over refried or mashed. Intact beans retain their cellular structure. Mashing breaks cell walls and increases GI.
  3. Rinse canned beans. This removes excess sodium and any added sugar from the canning liquid.
  4. Cook from dried for maximum resistant starch. Home-cooked beans that are cooled and reheated have the highest resistant starch content.
  5. Pair with non-starchy vegetables. Beans with salad or roasted vegetables makes a very low-glycemic meal.
  6. Watch portion sizes of baked beans. Added sugar in commercial baked beans can add 10–15 grams of sugar per serving.

Key takeaways

  • Most beans (GI 24–40) spike blood sugar far less than rice (GI 72–83), bread (GI 75), or potatoes (GI 78).
  • Bean cell walls physically trap starch, preventing enzyme access and slowing glucose release.
  • Beans contain 2–5 grams of resistant starch per serving that passes through the gut undigested.
  • A cup of lentils provides 15.6 grams of fiber and 18 grams of protein.
  • Beans produce a “second meal effect” that improves glucose tolerance at subsequent meals.
  • Canned baked beans have a higher GI (48) due to added sugar and longer cooking.
  • Replacing rice or bread with beans is one of the most effective single dietary changes for blood sugar management.

Sources

  • Foster-Powell, K., Holt, S.H., & Brand-Miller, J.C. (2002). International table of glycemic index and glycemic load values. American Journal of Clinical Nutrition, 76(1), 5–56.
  • Jenkins, D.J., et al. (2012). Effect of legumes as part of a low glycemic index diet on glycemic control and cardiovascular risk factors in type 2 diabetes mellitus. Archives of Internal Medicine, 172(21), 1653–1660.
  • Würsch, P., Del Vedovo, S., & Koellreutter, B. (1986). Cell structure and starch nature as key determinants of the digestion rate of starch in legume. American Journal of Clinical Nutrition, 43(1), 25–29.
  • Björck, I., Granfeldt, Y., Liljeberg, H., Tovar, J., & Asp, N.G. (1992). Effect of processing on blood glucose and insulin responses to starch in legumes. Journal of Agricultural and Food Chemistry, 40(10), 1846–1851.

Want to check any meal instantly?

Pre tells you the glucose impact of your food in seconds. Launching soon on iOS.