Most stomach infections last 1 to 7 days, depending on the cause. Viral infections, which account for the majority of cases, typically resolve in 1 to 3 days. Bacterial infections tend to run a bit longer, and parasitic infections can stretch on for weeks if untreated.
Viral Stomach Infections: 1 to 8 Days
Viruses cause most stomach infections, and the two biggest culprits have noticeably different timelines. Norovirus, the most common cause of viral gastroenteritis, brings on symptoms 12 to 48 hours after exposure and typically lasts just 1 to 3 days. Rotavirus takes about 2 days to show up after exposure and lasts longer, usually 3 to 8 days. A less common virus called astrovirus has a longer incubation period of around 4.5 days before symptoms begin.
The short duration of norovirus is somewhat misleading, though, because even after you feel better, you can still spread the virus for 2 weeks or more. That’s why hand hygiene matters well past the point where vomiting and diarrhea stop.
Bacterial Stomach Infections: 5 to 7 Days
Bacterial infections from contaminated food or water generally last longer than viral ones. Shigella, a common bacterial cause of gastroenteritis, produces symptoms within 1 to 2 days of infection and lasts about 7 days. Most people recover in 5 to 7 days without needing antibiotics. Salmonella and campylobacter follow a similar pattern, with most cases resolving within a week, though some people experience lingering digestive symptoms for a few days beyond that.
Bloody diarrhea is more common with bacterial infections than viral ones. If you notice blood in your stool, that’s a signal the infection may be bacterial and worth getting checked.
Parasitic Stomach Infections: Weeks to Months
Parasitic infections are less common but last significantly longer. Giardia, the most well-known parasitic stomach infection, typically causes symptoms for 2 to 6 weeks. Some people deal with symptoms that last even longer or that seem to clear up and then return. Unlike viral gastroenteritis, parasitic infections often need treatment to fully resolve, so a lingering stomach illness after travel or exposure to untreated water is worth investigating.
What Recovery Actually Looks Like
The vomiting phase of most stomach infections is the shortest part, usually ending within 1 to 2 days. Diarrhea tends to outlast it. You may feel wiped out for a few days after the worst symptoms pass, and your digestion won’t snap back to normal immediately.
One common surprise: dairy can be harder to digest for up to a month after a stomach infection. The virus or bacteria can temporarily reduce your gut’s ability to break down lactose. Caffeine, high-fat foods, fried foods, and sugary drinks can also aggravate diarrhea during recovery. Current guidance from the NIDDK says you don’t need to follow a restricted diet or fast after a stomach infection. Once your appetite returns, you can go back to eating normally. For children, parents should offer their usual foods as soon as they’re hungry again, and infants should continue with breast milk or formula throughout.
Dehydration: The Real Risk
The stomach infection itself is rarely dangerous. Dehydration is what sends people to the hospital. Frequent vomiting and diarrhea drain fluids faster than most people realize, especially in young children and older adults.
In adults, watch for dark-colored urine, urinating less than usual, dizziness when standing, extreme thirst, or confusion. In infants and young children, the warning signs include no wet diapers for three hours, no tears when crying, a sunken soft spot on the skull, sunken eyes, or skin that doesn’t spring back when gently pinched. A rapid heart rate or unusual drowsiness in a child also signals dehydration is getting serious.
Small, frequent sips of water or an oral rehydration solution work better than trying to drink large amounts at once, which can trigger more vomiting.
Signs Your Infection Needs Medical Attention
Most stomach infections resolve on their own, but certain patterns suggest something more serious is going on. For adults, the Mayo Clinic flags these as reasons to seek care: vomiting that lasts more than two days, diarrhea that persists beyond several days, bloody diarrhea, a fever above 102°F (39°C), lightheadedness or fainting when standing, confusion, or worsening stomach pain.
For children, the threshold is lower. Frequent vomiting, bloody stool, signs of dehydration, or unusual drowsiness all warrant a call to the doctor. Infants with any fever should be seen. Children older than 3 months with a fever of 102°F or higher also need medical evaluation. The younger the child, the faster dehydration can become dangerous, so err on the side of calling early rather than waiting it out.

