Leafy greens, cruciferous vegetables, and most above-ground vegetables are excellent choices for keto, with many coming in under 2 grams of net carbs per cup. Since a standard ketogenic diet limits total carbs to 20 to 50 grams per day, choosing the right vegetables lets you fill your plate without blowing your carb budget. Here’s a practical breakdown of what to eat freely, what to use in moderation, and what to skip.
How Net Carbs Work
Net carbs are what actually matter on keto, because your body can’t fully digest fiber into glucose. The formula is simple: total carbohydrates minus fiber equals net carbs. A food with 20 grams of total carbs and 10 grams of fiber has only 10 grams of net carbs. Every vegetable listed below includes both numbers so you can track accurately.
Leafy Greens: The Lowest Carb Options
If you want vegetables you can eat in large quantities without worrying, leafy greens are your best bet. These are so low in carbs that even a big salad barely registers.
- Spinach: 1.1 g total carbs and just 0.4 g net carbs per cup raw. It’s rich in iron and magnesium, two minerals keto dieters often run low on.
- Arugula: 0.7 g total carbs and 0.4 g net carbs per cup. Its peppery flavor makes it a great base for salads topped with olive oil and cheese.
- Kale: About 0.9 g total carbs and only 0.1 g net carbs per cup raw, plus meaningful amounts of vitamin A, vitamin C (19 mg per cup), and calcium (52 mg per cup).
- Romaine lettuce: 1.6 g total carbs and 0.6 g net carbs per cup shredded.
- Swiss chard: A bit higher at 7.2 g total carbs and 3.6 g net carbs per cup chopped, but still very manageable in normal serving sizes.
You could eat several cups of spinach, arugula, or kale in a single meal and still use fewer than 2 grams of your daily carb allowance. That makes leafy greens the foundation of keto-friendly eating.
Cruciferous Vegetables
Cauliflower, broccoli, and cabbage are keto staples for good reason. They’re low enough in carbs to use generously, and they’re versatile enough to replace high-carb foods in recipes.
Cauliflower gets the most attention because it works as a substitute for rice, mashed potatoes, and pizza crust. One cup raw contains 5 g of total carbs and about 3 g of net carbs. Cabbage is similarly useful at 4.1 g total carbs and 2.3 g net carbs per cup shredded, and it’s an excellent source of vitamins C and K. A one-cup mix of broccoli and cauliflower together runs about 9.4 g total carbs, so keep that in mind if you’re combining them in a stir-fry or roasted sheet pan.
These vegetables also contain compounds that support liver detoxification and have been linked to reduced inflammation, giving you benefits beyond just fitting your macros.
Other Above-Ground Vegetables
Beyond greens and cruciferous options, several other vegetables fit comfortably into a keto plan:
- Zucchini: 4 g total carbs and 3 g net carbs per cup raw. Spiralized into noodles, it’s one of the most popular pasta replacements.
- Cucumbers: 4 g total carbs and about 3.5 g net carbs per cup chopped. Great for snacking with a high-fat dip.
- Celery: 3 g total carbs and 1 g net carbs per cup. Another ideal snack vehicle for cream cheese or almond butter.
- Mushrooms: 2 g total carbs and 1 g net carbs per cup of white mushrooms. They absorb butter and garlic beautifully, making them a natural fit for high-fat cooking.
- Radishes: 4 g total carbs and 2 g net carbs per cup sliced. Roasted radishes soften and lose their bite, making a surprisingly good stand-in for potatoes.
A general rule: vegetables that grow above ground tend to be lower in carbs than those that grow below ground. Zucchini, peppers, and green beans are typically safe. Root vegetables are where you need to be more careful.
Fermented Vegetables
Sauerkraut and kimchi deserve a special mention. One cup of sauerkraut contains around 2 grams of net carbs, and the fermentation process adds a bonus that raw cabbage doesn’t offer: live probiotic bacteria. A single serving of sauerkraut can contain up to 28 distinct bacterial strains.
Those probiotics support digestion, may reduce gas and bloating, and help maintain a healthy gut lining. Research also suggests that regularly eating fermented foods can lower the risk of common infections like colds and urinary tract infections. Just make sure you’re buying refrigerated sauerkraut or kimchi, not the shelf-stable versions, which are heat-treated and contain no live cultures.
Seasoning Vegetables: Onions and Garlic
Onions and garlic add a lot of flavor, but they’re more carb-dense than most people realize. A whole medium onion can pack 10 or more grams of net carbs. That doesn’t mean you need to avoid them entirely. A tablespoon or two of diced onion in a recipe, split across servings, adds minimal carbs. Garlic works the same way: a clove or two per dish is fine. Just don’t build a recipe around a whole caramelized onion and assume it’s free. Fresh herbs like oregano and rosemary are a better option when you want big flavor with virtually zero carbs.
Vegetables to Avoid or Limit
Starchy vegetables are the main category to watch. Anything over about 5 grams of carbs per 100 grams of weight starts to eat into your daily budget fast. The biggest offenders:
- Potatoes: 16 g carbs per 100 g raw
- Sweet potatoes: 17.3 g per 100 g
- Yams: 27.4 g per 100 g cooked
- Corn: 14.7 g per 100 g
- Peas: 14.5 g per 100 g
- Parsnips: 16.5 g per 100 g cooked
- Beets: 8.8 g per 100 g
A single medium potato contains more carbs than many keto dieters eat in an entire day. Even beets, which seem like a reasonable choice, add up quickly if you’re eating a full serving. These are all nutritious foods outside of keto, but they simply don’t fit within a 20 to 50 gram carb window.
How Cooking Methods Affect Carbs
The total carbohydrate content of a vegetable doesn’t change much with cooking, but the glycemic impact can. Roasting and baking tend to produce a higher blood sugar response compared to boiling or frying. This is because heat breaks down cell walls and starches, making the carbohydrates faster to digest.
For most keto vegetables like zucchini, cauliflower, and broccoli, the difference is small enough that it won’t affect ketosis. But if you’re eating a borderline vegetable or combining several moderate-carb foods in one meal, boiling or sautéing may be a slightly better choice than roasting at high heat. In practice, cook your vegetables however you enjoy them most. Consistency matters more than optimization, and a roasted cauliflower you actually eat beats steamed broccoli you skip.
Putting It Together
A practical keto plate might include a base of spinach or mixed greens (under 1 g net carbs), a cup of roasted cauliflower or zucchini (about 3 g net carbs), and a side of sauerkraut (2 g net carbs). That’s roughly 6 grams of net carbs for a vegetable-heavy meal, leaving plenty of room for protein, fats, and any carbs from sauces or seasonings. Prioritize leafy greens and cruciferous vegetables as your daily staples, use other above-ground vegetables freely, and save your remaining carb budget for variety.

