How Long Does Food Poisoning Take to Make You Sick?

Food poisoning can make you sick in as little as 30 minutes or take up to several weeks, depending on what contaminated your food. Most cases fall somewhere between 6 and 48 hours. The wide range exists because different germs work in fundamentally different ways inside your body, and the type of contaminant matters far more than the type of food you ate.

Why the Timeline Varies So Much

There are two basic categories of food poisoning, and understanding the difference explains nearly everything about timing. The first is intoxication: you swallow a toxin that bacteria have already produced in the food before you ate it. Because the poison is pre-made, your body reacts almost immediately, trying to expel it. Onset is measured in minutes to hours.

The second category is infection: you swallow live bacteria or viruses that need time to multiply inside your digestive tract before they cause harm. This process takes longer, so symptoms are measured in days rather than hours. A plate of potato salad left out at a picnic and a piece of undercooked chicken can both make you sick, but one might hit you before you leave the party while the other waits three days.

Fastest Onset: Under 8 Hours

Staph food poisoning is the classic fast-acting illness. Symptoms typically start within 30 minutes to 8 hours after eating contaminated food. The bacteria produce toxins directly in the food, so by the time you swallow it, the damage is already done. Foods that aren’t cooked after being handled by someone carrying staph are the usual culprits: sliced deli meats, puddings, pastries, and sandwiches.

Another common fast-onset germ, Clostridium perfringens, causes symptoms within 6 to 24 hours. It’s sometimes called the “cafeteria germ” because it thrives in large batches of food kept warm for long periods, like gravies, stews, and buffet dishes. The illness is usually mild, lasting about a day.

Mid-Range Onset: 12 Hours to 2 Days

Norovirus, the single most common cause of foodborne illness, typically takes 12 to 48 hours to produce symptoms. It’s the germ behind most “stomach flu” outbreaks on cruise ships and in restaurants. Despite being an infection rather than a toxin, norovirus replicates so quickly that it lands in this middle window.

Salmonella also falls into this range for many people, with symptoms appearing anywhere from 6 hours to 6 days after exposure. Most people start feeling sick within the first day or two. Undercooked poultry, eggs, and raw produce are the most frequent sources.

Slower Onset: 2 Days or More

Some of the more serious foodborne infections take several days to develop because the bacteria need time to colonize your gut before they produce enough damage to cause symptoms.

  • E. coli O157:H7: 1 to 8 days, with 3 to 4 days being most typical. This is the strain linked to undercooked ground beef and contaminated lettuce that can cause severe, sometimes bloody diarrhea.
  • Campylobacter: 2 to 5 days. The most common bacterial cause of diarrheal illness in the U.S., usually traced to undercooked poultry or unpasteurized milk.
  • Vibrio: 1 to 2 days. Associated with raw or undercooked shellfish, particularly oysters.

Then there are the outliers. Listeria can cause mild intestinal symptoms within 24 hours, but its more dangerous invasive form typically takes about 2 weeks to develop. Hepatitis A, a virus spread through contaminated food or water, has an incubation period of 14 to 28 days. With these longer timelines, most people have no idea which meal made them sick.

Why Some People Get Sick Faster

Even with the same contaminated dish at the same dinner table, two people can develop symptoms hours apart. The amount of contamination you swallow plays a role: a bigger dose of bacteria or toxin generally means a faster, more intense reaction. How much you ate, whether the germ was concentrated in one part of the dish, and even what else was in your stomach all factor in.

Your immune system matters too. Children under 5 have immature immune defenses, and adults over 65 have declining ones, which means both groups are more likely to get sick and may experience symptoms sooner or more severely. Pregnant women and people with weakened immune systems from chronic illness face similar vulnerability.

How to Tell What Made You Sick

People naturally blame their last meal, but that’s often wrong. If your symptoms started within a few hours, the most recent meal is a reasonable suspect. If they started a day or more later, the culprit could be something you ate two, three, or even five days ago. For slow-developing infections like Listeria, you might need to think back a full two weeks.

A rough guide: vomiting that hits fast (under 6 hours) with little or no fever points toward a toxin-based illness like staph. Watery diarrhea starting 12 to 48 hours later suggests norovirus. Diarrhea with fever developing after 2 or more days is more consistent with a bacterial infection like Salmonella or Campylobacter. These patterns aren’t perfect, but they help narrow the timeline when you’re trying to figure out what went wrong.

Most food poisoning resolves on its own within one to three days. Bloody diarrhea, a fever above 102°F, symptoms lasting more than three days, or signs of dehydration (dizziness, very dark urine, inability to keep fluids down) are signals that something more serious may be going on.