Do I have the stomach flu or food poisoning? (What is the difference?)

Answer: Sometimes you can figure out if you have a stomach virus or food poisoning and sometimes you can't. Take the Quiz.

Regular non-contagious food poisoning

Bacteria such as Staphylococcus aureus, Clostridium Perfringens, and Bacillus cereus like to multiply on food that is sitting out at room temperature. So, if you leave the leftovers out for hours, these bacteria can set up camp. The Staphylococcus aureus bacteria are introduced to the food after it has been cooked--usually by a food handler (Staph bacteria are present on the skin, hair, nose and throat of 50% of healthy people). Clostridium perfringens and Bacillus cereus bacteria form heat stable spores that can withstand cooking and so could have been present in the food before it was cooked. These bacteria multiply on the food while it is cooling or if it is out of the fridge for a few hours. Staphylococcus aureus and Bacillus cereus produces toxins while they multiply on the food. It is the toxins that make you sick. Reheating the food will kill these bacteria but the toxins are very heat stable. They will still make you sick even if you boil the food. Symptoms of Staph food poisoning include nausea, vomiting, diarrhea, and abdominal cramps that begin 30 minutes to 7 hours after eating the contaminated food. It last less than 24 hours. Symptoms of Bacillus cereus food poisoning include nausea and vomiting that begins 30 minutes to 6 hours after eating. Bacillus cereus can produce a second illness caused by ingesting large numbers of the live bacteria (if you didn't reheat the food). They produce a different toxin in your stomach that makes you sick. In this case, you experience diarrhea and abdominal cramps that begin 6-15 hours after eating the contaminated food. Clostridium perfringens also loves to grow on food at room temperature. It produces its toxin in your stomach instead of on the food. So, you would have been okay if you would just have reheated those leftovers! Symptoms of Clostridium perfringens food poisoning include intense abdominal cramps and diarrhea 8-22 hours after ingestion. This illness usually lasts about 24 hours. All three of these types of bacteria can be present in the feces and vomit of the sick person. However, these illnesses are not considered to be contagious from person to person because of the large number of bacteria that it takes to make a person sick. (It takes as few as 10 noroviruses to make someone sick.) However, a sick person who does not have clean hands, can easily contaminate some food and start the cycle over again.

Do not eat any food that has been sitting out at room temperature for more than 2 hours!!! (Unless it isn't supposed to go in the fridge, like bread or potato chips.)

Keeping foods at the appropriate temperature so bacteria don’t grow, cooling leftovers quickly in the fridge, reheating leftovers, and getting rid of old food are the best ways to avoid this type of food poisoning. Minimize the time you keep food in the temperature danger zone (41°F -140°F). It isn't safe for food to be in the danger zone more than 2 hours. Staph bacteria can grow in temperatures as low as 44.6°F! Even if you put a big pot of soup right in the fridge, it will probably take too long to cool and will be in the temperature danger zone too long. Put large pots of food into smaller containers before putting it in the fridge. And check the temperature of your fridge! It needs to be below 40°F.

Reheating your food (to 180°F) to kill infectious agents will keep you from getting sick from Salmonella, E.coli, Campylobacter, parasites, Botulism, Listeria, Clostridium perfringens, and norovirus. Reheating food will not protect you from food poisoning from Staphylococcus aureus or Bacillus cereus because their toxins are heat stable.

Stomach Flu or Food Poisoning Flow Chart

I made a flow chart to help you decide whether you have a contagious stomach bug or regular non-contagious food poisoning caused by bacterial toxins. This chart does not consider all types of food poisoning (like listeria and botulism). It mainly considers food poisoning that makes you vomit shortly after eating. For more information on the ALL of the types of food poisoning, please read the page What is food poisoning? This chart is just intended to help you THINK about what you might have. It is not intended to actually diagnose anyone. I am NOT a medical doctor and can't give medical advice. Please consult your physician for an actual diagnosis. If you don't like to read flow charts, you can take the Stomach Flu or Food Poisoning Quiz.

When you come down with vomiting and/or diarrhea, you often wonder if you caught a stomach bug, or if you just ate something bad. The viruses, bacteria, and parasites that cause gastroenteritis are often food borne, so most of the time you did eat something bad. In all cases you ate the germ. They are considered to be types of food poisoning. They are contagious, so food poisoning from them is contagious. Spinach contaminated with e.coli, berries contaminated with norovirus, and cantaloupe, sprouts, and peanuts contaminated with salmonella are examples of contagious food poisoning. You can also catch these illness directly from other people and it usually takes at least 24 hours after ingestion to get sick. (Norovirus can occasionally strike as early as 12 hours after exposure.) However, if you have gotten sick (started vomiting) within 8 hours of eating a questionable food item, then you may have regular non-contagious food poisoning. Non-contagious food poisoning occurs when you eat some food that has been improperly stored (or sat out too long) and bacteria have grown on it. The bacteria produce toxins that make you sick (even if you reheat the food the toxins will still be there). Keep reading to learn more about non-contagious food poisoning, see a list of frequently implicated foods, and see the flow chart to help you decide what you have.

If you are trying to determine if you have contagious gastroenteritis (a stomach bug) or just ate some bad food, you must think back about what you’ve done in the past few days. If you have been around someone in the past 2 weeks who was sick with a vomiting and/or diarrhea illness, then you most likely have what they had (a contagious stomach bug). If you haven’t been around anyone who has been sick (that you know of), but you ate a yogurt that looked funny, a turkey sandwich that was left on the counter all afternoon, restaurant food (rice, salad, dipping sauce, etc. etc.), then you might have non-contagious food poisoning. If you got sick within 7 hours of eating the suspected food, and felt fine shortly thereafter, you probably have regular food poisoning and are not contagious. If it has been 24 hours or more since you ate the suspected food item than you probably have something contagious. It is usually very difficult to be sure which illness you have. So, if you are not sure, err on the side of caution and assume you are contagious. No matter what you think you have, be sure to call your doctor if you think you are seriously ill.


Food poisoning from Staphylococcus aureus (you were vomiting within 7 hours of eating) is frequently caused by meat and meat products; poultry and egg products; salads, such as egg, tuna, chicken, potato, and macaroni; bakery products, such as cream-filled pastries, cream pies, and chocolate éclairs; sandwich fillings; and milk and dairy products. Foods that require considerable handling during preparation and are kept slightly above proper refrigeration temperatures for an extended period after preparation are frequently involved in staphylococcal food poisoning.

The vomiting illness caused by Bacillus cereus (that strikes within 6 hours of eating) is commonly caused by rice products. (That Mexican or Chinese restaurant may have kept that rice warming for hours). However, other starchy foods, such as potato, pasta, and cheese products have also been implicated. Food mixtures, such as sauces, puddings, soups, casseroles, pastries, and salads are sometimes involved. (That calamari dipping sauce or marinara dipping sauce probably sat on a warm burner all afternoon.) The diarrheal illness caused by Bacillus cereus has been linked to meats, milk, vegetables, and fish.

Food poisoning from C. perfringens (diarrhea usually strikes the next day) is associated with meats (especially beef and poultry), meat-containing products (e.g., gravies and stews), and Mexican foods. It is also found on vegetable products, including spices and herbs, and in raw and processed foods.


Years ago, my husband and I ate at a “hole in the wall” Mexican restaurant. He thought his meal tasted great. Mine was pretty good too. While we were waiting for the check, he started to feel sick. It came on so fast. He got up to go look for the bathroom and immediately started vomiting. He left a trail of vomit all the way to the bathroom (which unfortunately was the women’s bathroom, poor guy). Anyway, when he finished vomiting he felt fine. Two hours later, he had a big bowl of ice cream with chocolate sauce. I suspect that this type of food poisoning was from the toxins produced either by Staphylococcus aureus or Bacillus cereus since it came on so suddenly and was over so quickly.

Another example of obvious non-contagious food poisoning happened to my sister and her coworker recently. They went to happy hour (at 5pm) at a local restaurant and shared an appetizer of fried calamari with a dipping sauce. At 10pm, they were both vomiting. Since they don't live together and didn't eat anything else that was the same that day, I am very certain that they got food poisoning from that shared appetizer. The dipping sauce was probably sitting out barely warm under a heat lamp all afternoon growing toxin producing bacteria.

Another example of non-contagious food poisoning recently happened to a friend and her husband after having dinner at a restaurant. They had different meals but they both got the same house salad (lettuce, eggs, tomato, cheese, croutons, cucumbers, and creamy Italian dressing). My friend went to bed at 9:30pm and thought her stomach felt odd but she fell asleep anyway. She woke up at 10:15pm and had to run to the toilet to vomit. She had 1 violent episode of vomiting and then felt okay. She slept the rest of the night. She was perfectly fine the next day. This seems like a case of non-contagious food poisoning because it came on so quickly after the meal and was over quickly. Although it is possible to vomit just 1 time from a stomach flu virus, they usually don't end that quickly. Her husband had a different story. He had a stomachache after dinner just like she did. However, he did not vomit. He had a stomachache for the next 2 days and then had diarrhea for the following 3 days. He wasn't right for a week. If I was just looking at his symptoms, I'd say that he probably has something contagious. However, since his wife most definitely has the non-contagious form, and they both felt sick at the same time, I would blame it on a bad salad. This example shows us that even the same bad food can affect people differently. I know throwing up is scary but when you eat something bad, it is probably the fastest way to feel better. My friend's husband didn't throw up and kept the bad stuff in. He was sick all week.

Please e-mail me your own food poisoning storeis. My e-mail is phd.annie at I will post them here so we can learn from each other's experiences. Hopefully, we can learn more about distinguishing between contagious illnesses and non-contagious food poisoning. This is completely unrelated, but please check out the adorable books my 8 year old daughter wrote, illustrated, and published. Princess Katie and the Fairy Tea Party

and Princess Katie and the Mermaid Lagoon are available on amazon. They are wonderful stories about kindness, including others, and doing the right thing.

--Annie Pryor, Ph.D.

Viewer Comments

My parents and all their friends are sick with vomiting and diarrhea. They were all at a party on Saturday. Some started getting sick Monday and my parents got it today, which is Tuesday. Some of them are not a sick as others, while some are not sick at all. I am worried about my children getting it, since they were at my parents last night. Are we all going to be sick for Christmas? I was wondering if it could be food poisoning from the party. Thanks for any input!


Dear Pam,

I am so sorry that your parents and their friends are all sick. Since they were all at a party together Saturday, it is very likely that they all ate something that was contaminated. I wonder what they all ate that was the same? It could be that someone at the party was sick with a stomach illness and they caught it from them. However, unless that person threw up in the middle of the party, I doubt that person could have gotten so many people sick. So, I really think they got sick from something they ate. However, due to the fact that it took 2-3 days for them to get sick, it is likely something contagious. The food they ate may have been contaminated with a virus (like norovirus) or a bacteria (like salmonella). So, I would assume they are contagious. (Non-contagious food poisoning usually strikes much sooner --usually within 6-8 hours of eating the suspected food). They should probably report it to their local health department because it might be part of an outbreak (perhaps the store bought vegetable dip was contaminated or something).

Your parents probably weren't very contagious until they started to be sick. I think your children will escape it even though they were there last night. But your parents will still be contagious for several days after they are well. Going to their house within the next week would be very risky.

Please remember that I am not a medical doctor and I can't give medical advice. If your parents get really sick, please have them seek medical attention. I hope your children escape this illness but I can't be sure.


Annie Pryor

Dr. Annie,

Thought I would drop you a note as I sit here waiting on the 4th load of laundry to finish cycling. Here's tonight's story: My husband and I went to dinner where we received a text from the babysitter that 3 of our 7 were sick. When we got home, 6 out of 7 were throwing up. So, 6 out of 7 were down in 2 hours (6pm-8pm). The 7th child got sick a little later. First thought, the pizza from dinner, but the baby started throwing up before they ate. Next thought, the produce from lunch, but the 3rd child doesn't eat pears. So, all that's left is the mayo from the chicken salad at lunch (ckn was canned). For an afternoon snack, they all ate chocolate syrup from a different bottle as me (I am not sick). The choc syrup is 3 months out of date.


Dear Joy,

Oh, I'm so so sorry! With 7 kids, I can't imagine that you and your husband go out to dinner by yourselves very often. This certainly could be food poisoning since everyone got sick so quickly. It certainly could have been the mayo. Do you recall if that mayo was sitting out at room temperature too long on a previous day? Was it old Mayo? Did it have bits of old food in it from people double dipping knives? It could also have been the chocolate syrup but that stuff seems to last a long time. I would throw away any food left over from that lunch. If it was a virus, then you or the baby sitter might get sick in another day or 2. If it is a virus, then that means all of your kids were exposed to a sick person or contaminated food 24-48 hours previously. It is unusual for that many people to get sick at the same time from a virus but it can happen if they were all exposed at the same time.


Annie Pryor