The Ultimate Guide on How Long Should Ham Be Cooked for Perfection

Cooking a ham is often the centerpiece of a holiday feast, a Sunday dinner, or a celebratory gathering. However, for many home cooks, the process can be intimidating. Ham comes in various forms—smoked, fresh, bone-in, boneless, pre-cooked, or raw—and each requires a specific approach to ensure it remains juicy and flavorful rather than dry and salty. Understanding exactly how long ham should be cooked is the difference between a culinary masterpiece and a disappointing main course.

Understanding Your Ham Type

Before you even preheat your oven, you must identify what kind of ham you have sitting in your refrigerator. The processing method dictates the cooking time and the necessary internal temperature.

City Hams vs. Country Hams

Most hams found in modern grocery stores are “City Hams.” These are wet-cured, meaning they have been brined in a mixture of salt, water, and seasonings. Most are also smoked and pre-cooked, which means you are essentially reheating them to a safe and palatable temperature.

Country hams, on the other hand, are dry-cured with salt and aged for months. These are much saltier and firmer. They often require soaking in water for 24 to 48 hours before cooking to leach out the excess salt. Once soaked, they are usually simmered in water before a final roast in the oven.

Bone-In vs. Boneless

Bone-in hams generally offer better flavor and moisture retention because the bone conducts heat into the center of the meat and adds depth to the taste. However, they take slightly longer to cook per pound. Boneless hams are easier to slice and cook faster, but they can dry out more quickly if not monitored closely.

General Guidelines for Reheating Pre-Cooked Ham

Since most hams purchased today are “fully cooked” or “ready-to-eat,” the goal of cooking is to bring the meat up to a serving temperature without stripping away its moisture.

Oven Temperature and Timing

For a standard fully cooked ham, you should set your oven to 325°F. This moderate temperature allows the heat to penetrate the thickest part of the meat without scorching the exterior.

As a general rule of thumb, allow 15 to 18 minutes of cooking time per pound for a whole bone-in ham. If you are cooking a half bone-in ham, increase that slightly to 18 to 24 minutes per pound. For boneless hams, which are often smaller and more compact, aim for 10 to 15 minutes per pound.

Reaching the Target Internal Temperature

Even though the ham is technically safe to eat cold, it tastes best when heated to an internal temperature of 140°F. If you are dealing with a ham that was not fully cooked at the factory (labeled “cook before eating”), you must reach an internal temperature of 145°F followed by a three-minute rest period.

The Art of Cooking a Fresh Ham

A fresh ham is an entirely different beast. This is an uncured, unsmoked hind leg of pork. Because it has not been preserved or pre-cooked, it requires a longer roasting time and a higher final internal temperature to ensure safety and tenderness.

Preparing and Roasting Fresh Ham

Roast a fresh ham at 325°F. Because it lacks the preservation of a cure, it needs to reach an internal temperature of 145°F to be safe for consumption. On average, a fresh bone-in ham will take 22 to 26 minutes per pound. A fresh boneless ham may take 25 to 30 minutes per pound.

Unlike pre-cooked hams, fresh hams benefit from a period of high-heat roasting at the beginning or end of the process to crisp up the skin, or “crackling.”

Factors That Influence Cooking Time

While weight-based estimates are helpful, several variables can alter the timeline of your dinner.

Starting Temperature

If you take a ham directly from a 35°F refrigerator and put it into the oven, it will take significantly longer to cook than a ham that has sat on the counter for an hour to take the chill off. Bringing the meat closer to room temperature ensures more even cooking.

The Shape of the Ham

A long, thin ham will cook faster than a short, spherical ham of the same weight. The distance from the surface to the center determines how long the heat takes to travel.

Using Foil and Liquid

To prevent the ham from drying out during its long stay in the oven, it is highly recommended to wrap it tightly in heavy-duty aluminum foil. Adding a half-cup of water, apple cider, or wine to the bottom of the roasting pan creates a steamy environment that protects the meat.

When to Apply the Glaze

The glaze is the crowning glory of a ham, providing a sweet and savory contrast to the salty meat. However, timing is everything. Most glazes contain high amounts of sugar, honey, or maple syrup. If you apply the glaze at the beginning of the cooking process, the sugars will burn long before the ham is hot in the middle.

The ideal time to apply a glaze is during the last 20 to 30 minutes of cooking. At this stage, you should remove the foil, brush the glaze liberally over the surface, and increase the oven temperature to 400°F or 425°F. This allows the glaze to caramelize and become tacky without turning bitter or charred.

Specialized Cooking Methods

While the oven is the traditional choice, other methods offer unique benefits and different timing requirements.

Slow Cooker Ham

The slow cooker is excellent for keeping a ham moist. For a small boneless or spiral-sliced ham, cook on the “Low” setting for 4 to 6 hours. Because the slow cooker traps moisture effectively, you rarely have to worry about the meat becoming tough.

Spiral-Sliced Ham

Spiral-sliced hams are convenient but notoriously easy to dry out because the pre-cut slices allow moisture to escape. These should always be wrapped tightly in foil and cooked at a lower temperature, around 275°F to 300°F, for about 10 to 12 minutes per pound. You only want to reach an internal temperature of 135°F to 140°F to prevent the slices from curling and toughening.

Resting the Meat

One of the most overlooked steps in cooking ham is the resting period. Once the ham reaches its target temperature, remove it from the oven and let it sit, still covered in foil, for at least 15 to 20 minutes. During this time, the juices redistribute throughout the muscle fibers. If you carve it immediately, the moisture will run out onto the cutting board, leaving the meat dry.

Summary of Times and Temperatures

To keep things simple, remember these core numbers:

  • Fully Cooked Ham (Standard): 15-18 minutes per pound at 325°F until 140°F internal.
  • Spiral-Sliced Ham: 10-12 minutes per pound at 300°F until 140°F internal.
  • Fresh Ham (Uncured): 22-26 minutes per pound at 325°F until 145°F internal.
  • Cook-Before-Eating Ham: 18-20 minutes per pound at 325°F until 145°F internal.

FAQs

How can I tell if my ham is done without a thermometer? While a meat thermometer is the only way to be 100 percent sure, you can use a metal skewer. Insert it into the thickest part of the ham, leave it for several seconds, and then touch it to your wrist. If the skewer is hot to the touch, the ham is likely warmed through. However, for fresh or “cook-before-eating” hams, a thermometer is essential for safety.

Should I cook the ham with the flat side down? Yes. If you have a half-ham, place it with the cut side (the flat side) down in the roasting pan. This protects the most exposed area of the meat from direct heat and helps retain moisture.

Can I cook a ham from frozen? It is possible, but not recommended. Cooking a frozen ham takes approximately 50 percent longer than a thawed one, and the exterior often becomes overcooked and dry before the center reaches a safe temperature. It is best to thaw your ham in the refrigerator for 24 to 48 hours before cooking.

Why did my ham turn out tough? Toughness is usually a result of overcooking or cooking at too high a temperature. If the internal temperature exceeds 150°F for a pre-cooked ham, the proteins begin to tighten and squeeze out moisture. Always use a thermometer to catch it at the 140°F mark.

How long can I keep leftover cooked ham? Once cooked, ham can be stored in the refrigerator for 3 to 5 days. If you cannot finish it within that window, ham freezes exceptionally well. Wrap it tightly in plastic wrap and then foil, and it will maintain its quality in the freezer for up to 2 months.