Several common foods can change the way your body smells, and the mechanism is surprisingly consistent: your body breaks down certain compounds during digestion, and those byproducts escape through your pores and sweat. The biggest culprits are foods high in sulfur, though alcohol, red meat, and spice-heavy dishes also play a role.
Garlic and Onions
Garlic and onions are the most well-known offenders. Both belong to the allium family and are packed with sulfur compounds. When you eat them, your body produces sulfur-like byproducts during digestion. These compounds don’t just linger on your breath. They enter your bloodstream and eventually get released through your skin’s pores.
For some people, garlic and onions also boost metabolism and body heat, which increases sweating. That extra sweat mixes with bacteria on your skin, particularly in areas with apocrine glands (your armpits and groin), creating a stronger, more noticeable odor. This effect can last well beyond the meal itself, sometimes persisting for a day or two as your body continues processing the compounds.
Cruciferous Vegetables
Broccoli, cabbage, Brussels sprouts, and cauliflower are nutritional powerhouses, but they contain sulfur-based compounds called glucosinolates. These are what give cruciferous vegetables their characteristic bitter taste and pungent smell. When you digest them, your body breaks the glucosinolates down into smaller sulfur molecules that can intensify your body odor, breath, and gas.
Each vegetable produces slightly different sulfur byproducts. Broccoli, for instance, yields a compound called sulforaphane, while cauliflower and cabbage produce their own variations. The odor effect is most noticeable when you eat large quantities, and it’s amplified by sweating. Cooking these vegetables tends to reduce the glucosinolate content compared to eating them raw, which can help lessen the effect.
Cumin, Curry, and Other Spices
Strong spices like cumin and curry produce sulfur-like compounds as your body metabolizes them. These compounds show up in two places: your breath and your pores. When they reach your skin’s surface and react with sweat, the result is a distinctive odor that can cling to clothing and linger for hours. The effect is dose-dependent, so a heavily spiced meal will be more noticeable than a lightly seasoned one.
Red Meat
A study published in Chemical Senses put this to the test. Seventeen men each spent two weeks on a meat diet and two weeks on a non-meat diet (switching the order a month later). At the end of each period, they wore underarm pads for 24 hours to collect sweat samples. Thirty women then rated the odor samples for pleasantness, attractiveness, and intensity.
The results were clear: sweat from the non-meat diet was rated as significantly more attractive, more pleasant, and less intense than sweat from the meat-eating period. The exact mechanism isn’t fully pinned down, but red meat takes longer to move through your digestive system, and its breakdown produces amino acid byproducts that can alter the chemistry of your sweat.
Alcohol
Your body metabolizes alcohol into acetic acid, the same compound that gives vinegar its sharp smell. That acetic acid gets released through your skin’s pores and your breath, which is why heavy drinking can produce a sour, stale body odor that no amount of deodorant fully masks. The effect starts within hours of drinking and lasts until your body finishes clearing the alcohol from your system, which can take well into the next day depending on how much you consumed.
Asparagus
Asparagus is famous for changing the smell of urine rather than body odor. When your body digests asparagus, it breaks down a unique compound called asparagusic acid into sulfur byproducts. These get filtered through your kidneys and show up in your urine, sometimes within 15 to 30 minutes of eating. Estimates vary, but somewhere between 20% and 50% of people notice this effect, and researchers still debate whether the difference is in who produces the smell or who can detect it.
Foods High in Choline
Choline is a nutrient found in eggs, liver, kidney, peas, beans, peanuts, and soy products. When you eat choline-rich foods, gut bacteria convert some of the choline into a compound called trimethylamine. Normally, your liver converts trimethylamine into an odorless form before it can cause any problems.
But some people have a reduced ability to complete that conversion, a condition called trimethylaminuria. For them, the trimethylamine builds up and gets released through sweat, breath, and urine, producing a strong, fishy odor. The condition can be genetic (caused by a mutation in the liver enzyme responsible for the conversion) or influenced by hormonal changes and other factors. People with milder forms may only notice the odor after eating large amounts of choline-rich foods, which is why eggs and fish are common triggers.
Why Some People Are More Affected
Not everyone who eats garlic or red meat will smell different afterward. Several factors determine how strongly food affects your body odor. Your individual gut bacteria play a major role in how food gets broken down and which byproducts are produced. Genetics influence both the composition of your sweat and how efficiently your liver processes odor-causing compounds. Hormone levels can also shift the equation, which is why some people notice food-related odor changes during certain life stages but not others.
How much you sweat matters too. The apocrine glands in your armpits and groin produce a thicker type of sweat that’s rich in proteins and fats. Skin bacteria feed on these and produce odor. When food-derived sulfur compounds or other byproducts join the mix, the smell intensifies. People who sweat more, or who have a higher density of apocrine glands, tend to notice the connection between diet and odor more readily.
Reducing Food-Related Body Odor
The most direct approach is reducing your intake of the foods listed above, particularly before social situations where you’re concerned about odor. Cooking garlic, onions, and cruciferous vegetables rather than eating them raw reduces the concentration of sulfur compounds. Staying well hydrated helps dilute the byproducts your body excretes through sweat. Showering after heavy sweating removes the bacteria that react with these compounds on your skin.
If you notice a persistent, strong body odor that doesn’t respond to dietary changes and hygiene, it’s worth considering whether a metabolic factor like trimethylaminuria could be involved, especially if the odor has a fishy quality and gets worse after eating eggs, fish, or beans.

