Chicken breast (cooked) vs Chicken thigh (cooked)

The short answer

Breast is leaner, with more protein per calorie; thigh carries more fat, which keeps it moist and adds flavour. Both are high-protein. Choose breast for a lean, high-protein plate, thigh when you want it juicy and forgiving to cook. The gap is fat, not protein quality.

Chicken breast (cooked) and Chicken thigh (cooked), per 100 g and per portion. A gap means USDA has no value for it — not zero.

Chicken breast (cooked) · per 100 gChicken thigh (cooked) · per 100 g
Calories165179
Protein31 g24.8 g
Fat3.6 g8.2 g
Carbs0 g0 g
Fiber0 g0 g
Sugars0 g0 g
Sodium74 mg106 mg
Vitamins & minerals — where both carry data
Calcium15 mg9 mg
Folate4 µg5 µg
Iron1 mg1.1 mg
Magnesium29 mg24 mg
Niacin13.7 mg6.2 mg
Phosphorus228 mg230 mg
Potassium256 mg269 mg
Riboflavin0.1 mg0.2 mg
Thiamin0.1 mg0.1 mg
Vitamin A6 µg8 µg
Vitamin B120.3 µg0.4 µg
Vitamin B60.6 mg0.5 mg
Vitamin C0 mg0 mg
Vitamin D0.1 µg0.2 µg
Vitamin E0.3 mg0.2 mg
Vitamin K0.3 µg3.9 µg
Zinc1 mg1.9 mg
At equal calories (per 100 kcal)
ProteinChicken breast (cooked): 18.8 g, Chicken thigh (cooked): 13.8 g · FiberChicken breast (cooked): 0 g, Chicken thigh (cooked): 0 g · SodiumChicken breast (cooked): 44.8 mg, Chicken thigh (cooked): 59.2 mg

Generic USDA foods (not brands), so both carry micronutrients. Numbers are per 100 g unless the portion toggle is on. USDA FoodData Central, as of 2026-08-12.

Common questions
Is Chicken breast (cooked) or Chicken thigh (cooked) better?

Neither is “better” on its own — it depends what you want from it. The table shows where each is higher; the short answer says when each one fits. Compare on the same basis (per 100 g) and pick for your dish and your goal.

How were these numbers worked out?

Straight from USDA FoodData Central for the generic form of each food, per 100 g. We show the portion view too, but portion sizes differ between foods, so per 100 g is the fair comparison.

Why does one column say “no data”?

Because USDA has no value for that nutrient in that food — so we leave it blank rather than print a 0 that would read as “none”. A real zero from USDA still shows as 0.

More in Meat & poultry