The Best Foods to Eat on Your Period, Plus What to Avoid

The best foods to eat on your period are ones rich in iron, magnesium, calcium, and complex carbohydrates, all nutrients that directly address the most common menstrual symptoms like cramps, bloating, fatigue, and mood changes. Your body has specific nutritional demands during menstruation, and choosing the right foods can make a noticeable difference in how you feel.

Iron-Rich Foods to Fight Fatigue

You lose iron through menstrual blood, which is why fatigue often hits hardest during the first few days of your period. The NIH recommends 18 mg of iron per day for women of reproductive age, and falling short of that target is easier than you might think.

Some of the best food sources of iron, with approximate amounts per serving:

  • Lean steak (100g): 3.6 mg
  • Fortified cereal (40g): 4.7 mg
  • Lentil and vegetable curry (200g): 4.5 mg
  • Lentil soup (200g): 3.9 mg
  • Canned sardines: 3.2 mg
  • Stewed ground beef (100g): 2.4 mg
  • Dried apricots (3 to 4): 1.2 mg
  • One boiled egg: 1 mg

Pairing plant-based iron sources like lentils with something high in vitamin C (a squeeze of lemon, a side of bell peppers) helps your body absorb more of the iron. Eating a mix of these foods across the day makes it much more realistic to reach 18 mg than relying on a single meal.

Magnesium for Cramp Relief

Menstrual cramps happen when your uterus contracts to shed its lining, and magnesium works directly against that process. It blocks the chemical signals that tell muscles to contract, essentially acting as a natural muscle relaxant. This is why many people notice their cramps ease when they consistently eat magnesium-rich foods.

Your best dietary sources include spinach, kale, and other dark leafy greens, brown rice, and dark chocolate. For dark chocolate, aim for a high cocoa percentage. Research on menstrual symptoms has used 85% cocoa dark chocolate, which packs meaningful amounts of magnesium along with compounds that may help stabilize mood. A 30g square (about one ounce) daily is a reasonable amount. Milk chocolate won’t have the same effect because the cocoa content is too low.

Calcium to Ease PMS Symptoms

Calcium does far more during your cycle than support your bones. A clinical trial published in Obstetrics & Gynecology Science found that 500 mg of calcium daily significantly reduced anxiety, depression, emotional changes, water retention, and physical PMS symptoms over two menstrual cycles compared to a placebo. The effect appears to be linked to how calcium influences serotonin production and the way your body processes tryptophan, a building block for mood-regulating brain chemicals.

You can get roughly 500 mg of calcium from a combination of everyday foods: a cup of yogurt (around 300 mg), a glass of milk (around 250 mg), or a serving of fortified plant milk. Canned salmon with bones, almonds, broccoli, and tofu made with calcium sulfate are solid non-dairy options. The research suggests you don’t need megadoses. Even that 500 mg daily level produced results comparable to studies using 1,000 mg.

Complex Carbs for Better Mood

If you find yourself irritable, low, or craving sweets during your period, there’s a physiological reason. Hormone shifts in the days around menstruation lower serotonin levels, which directly affects mood and appetite. Complex carbohydrates help reverse this by raising the availability of tryptophan in your brain, which your body then converts into serotonin.

A study testing a carbohydrate-rich beverage designed to boost tryptophan found it significantly decreased depression, anger, confusion, and carbohydrate cravings within 90 to 180 minutes. A calorie-matched placebo had no effect. You don’t need a special drink to get this benefit. Whole grains like oatmeal, brown rice, sweet potatoes, and whole wheat bread all provide the same type of slow-releasing carbohydrates. They also keep your blood sugar more stable than refined sugar does, which helps prevent the energy crashes that make PMS mood swings worse.

Vitamin B6 to Reduce Bloating

That puffy, swollen feeling during your period is partly driven by hormonal shifts that cause your body to hold onto water. Vitamin B6 plays a role in how your kidneys regulate sodium. When B6 levels are low, your kidneys excrete less sodium, which leads to water accumulating in your body, showing up as bloating, swollen hands or feet, and abdominal discomfort.

Good food sources of B6 include chickpeas, chicken breast, salmon, tuna, potatoes, bananas, and pistachios. A single cup of chickpeas provides over 1 mg of B6, which is a significant portion of the 1.3 mg daily target for most adults. Incorporating these foods in the days leading up to and during your period can help your body manage fluid balance more effectively.

Hydrating Foods for Water Retention

It sounds counterintuitive, but eating water-rich foods and drinking more water actually reduces bloating rather than making it worse. When you’re dehydrated, your body holds onto fluid more aggressively. Staying well-hydrated signals your body to release that excess water.

Citrus fruits like oranges, strawberries, and kiwis pull double duty here. They’re high in water content and rich in vitamin C and fiber, which may help with both mood swings and bloating. Cucumber, watermelon, and celery are other easy options. These foods also tend to be naturally low in sodium, which matters because high-sodium meals amplify water retention during your period.

Foods Worth Limiting

Caffeine is the main thing to watch. It blocks a calming neurotransmitter called adenosine, which is partly why it makes you feel alert, but this same mechanism also causes blood vessels to constrict. During your period, that vasoconstriction can intensify cramps and headaches. You don’t necessarily need to cut coffee entirely, but scaling back to one cup or switching to tea during the heaviest days may help if cramps are a problem for you.

Salty, heavily processed foods are the other category worth dialing back. Excess sodium drives water retention, compounding the bloating your hormones are already causing. Chips, fast food, canned soups, and processed deli meats are common culprits. If you’re eating more of the whole foods listed above, you’ll naturally crowd out a lot of these higher-sodium options without needing to obsess over it.

Putting It Together

A practical day of eating on your period might look like oatmeal with banana and a handful of almonds for breakfast, a lentil soup with whole grain bread for lunch, salmon with brown rice and spinach for dinner, and a square of dark chocolate as a snack. That single day covers iron, magnesium, calcium, B6, complex carbs, and hydration without requiring supplements or any dramatic dietary overhaul.

The nutrients that matter most during menstruation, iron, magnesium, calcium, and B6, don’t work overnight. You’ll get the best results by eating these foods consistently in the week leading up to your period, not just once cramps have already started.