How Soon After Food Poisoning Do You Vomit?

Vomiting from food poisoning can start as soon as 30 minutes after eating contaminated food, or it can take days to appear. The timing depends almost entirely on what made you sick: some bacteria leave behind toxins in the food itself, which hit your system fast, while others need time to multiply inside your gut before symptoms begin.

Why Timing Varies So Much

The single biggest factor in how quickly you vomit is whether the contamination involves a preformed toxin or a living organism that still needs to infect you. Preformed toxins are already in the food when you eat it. Your body detects them quickly and triggers vomiting as a defensive response. Living bacteria or viruses, on the other hand, need hours or days to colonize your intestines and cause enough damage to produce symptoms.

When your gut lining detects a toxin, specialized cells in the intestinal wall release chemical signals that travel up the vagus nerve to a region in your brainstem. That region coordinates the physical act of vomiting, essentially a rapid-fire protective reflex to expel whatever you just ate. This is why toxin-based food poisoning tends to cause intense, sudden vomiting that can start within an hour of the meal.

Fastest Onset: 30 Minutes to 6 Hours

The quickest food poisoning to hit is caused by Staphylococcus aureus, a bacterium that produces toxins in food before you ever take a bite. Symptoms typically start within 30 minutes to 8 hours of eating, with vomiting often being the very first sign. The foods most commonly involved are those left at room temperature too long: deli meats, cream-filled pastries, egg salads, and dairy products. Because the toxin is already formed, cooking the food doesn’t help if it sat out long enough for the bacteria to produce the toxin first.

Bacillus cereus works the same way when it comes to vomiting. This bacterium produces a toxin called cereulide in starchy foods, especially rice that’s been cooked and then left at room temperature. The emetic (vomiting) form causes symptoms within 30 minutes to 6 hours. It’s the classic “leftover rice” food poisoning. The illness typically resolves within 6 to 24 hours, making it short-lived but miserable.

Moderate Onset: 12 to 48 Hours

Norovirus is the most common cause of foodborne illness overall, and it falls into a middle window. Vomiting, diarrhea, and stomach pain typically begin 12 to 48 hours after exposure. The virus is extremely contagious and spreads not just through contaminated food but through contact with infected people and surfaces. Symptoms usually last 1 to 3 days.

Salmonella also falls into this range, though it can take even longer. Symptoms usually appear 6 hours to 6 days after infection and last 4 to 7 days. With Salmonella, diarrhea and abdominal cramps are often more prominent than vomiting. The bacteria need time to invade and multiply in your intestinal lining, which is why the delay is so much longer than with preformed toxins. Undercooked poultry, eggs, and raw produce are the usual sources.

Slowest Onset: Days to Weeks

Some foodborne pathogens take surprisingly long to cause symptoms. Campylobacter, one of the most common bacterial causes of food poisoning worldwide, has an incubation period of 2 to 5 days. You could eat contaminated chicken on Monday and not feel sick until Wednesday or later, making it genuinely difficult to trace back to a specific meal.

Listeria is the extreme outlier. It can cause initial gastrointestinal symptoms within 9 to 48 hours, but invasive disease (where the bacteria spreads beyond the gut) has an incubation period of 1 to 2 weeks, and in some cases up to 90 days. This makes Listeria infections nearly impossible to connect to a specific food without lab testing. Listeria is most dangerous for pregnant women, older adults, and people with weakened immune systems.

Quick Reference by Cause

  • Staph toxin: 30 minutes to 8 hours
  • Bacillus cereus (emetic type): 30 minutes to 6 hours
  • Norovirus: 12 to 48 hours
  • Salmonella: 6 hours to 6 days
  • Bacillus cereus (diarrheal type): 8 to 16 hours
  • Campylobacter: 2 to 5 days
  • Listeria: days to weeks

How to Pinpoint What Made You Sick

If you started vomiting within a few hours of eating, think about what you ate at that most recent meal, particularly anything that sat out at room temperature, involved mayonnaise or cream, or included reheated rice or pasta. These are strong candidates for toxin-mediated poisoning.

If vomiting started 12 or more hours after eating, or if the main symptoms are diarrhea and cramps with relatively little vomiting, the culprit is more likely a virus or an infectious bacterium. In that case, think back further. It may not have been your last meal at all. The food that made you sick could have been something you ate one, two, or even three days before symptoms appeared. This is one of the most common misconceptions about food poisoning: people almost always blame their most recent meal, when the actual source was often much earlier.

What to Do While You’re Vomiting

Most food poisoning resolves on its own. The biggest risk during the vomiting phase is dehydration, especially if you’re also having diarrhea. Once the vomiting slows down, try sipping small amounts of clear liquids rather than drinking large quantities at once. Water, diluted broth, and oral rehydration solutions all work. Taking big gulps when your stomach is still irritated often triggers another round of vomiting, so small, frequent sips are more effective.

Certain symptoms signal something more serious. A fever over 102°F, bloody diarrhea, vomiting so severe that you can’t keep any liquids down, diarrhea lasting more than 3 days, and signs of dehydration (very little urination, dry mouth, dizziness when standing) all warrant medical attention. Young children, older adults, pregnant women, and anyone with a compromised immune system are at higher risk for dangerous dehydration and complications.