
Calculate exact cooking times for ham with our interactive calculator. Enter your ham's weight and get USDA-verified times and temperatures for perfectly glazed, juicy ham every time.
I've cooked over a dozen holiday hams, and I still double-check the timing every single time. The first Easter I hosted, I bought a "fully cooked" ham and assumed I could just warm it up. Turns out my ham was actually "cook before eating" and I nearly served undercooked pork to 15 relatives.
Now I read the label carefully and use a thermometer. Ham cooking time depends on whether your ham is fully cooked or needs cooking, plus the weight and cut. Get it right, and you'll have juicy, perfectly heated ham. Get it wrong, and you're either serving dry meat or scrambling at the last minute.
Here's everything you need to know.
Fully cooked ham needs 10-15 minutes per pound at 325°F to reach 140°F internal temperature. Cook-before-eating ham requires 18-20 minutes per pound to reach 145°F. A 10-pound fully cooked ham takes 2-2.5 hours. Always check the label to determine which type you have.
Enter your ham's weight and type for precise cooking instructions
We're experiencing technical difficulties. Please try again in a few minutes.
Our cooking time calculator is temporarily unavailable due to a connection issue.
This is usually resolved within a few minutes. Please refresh the page or try again shortly.
Our ham cooking time calculator provides precise cooking times based on your ham's weight and type. Whether you're baking a bone-in ham, spiral-cut ham, or fully-cooked ham, our calculator uses USDA guidelines to deliver accurate times. Simply enter your ham's weight in pounds for instant, reliable cooking times at 325°F.
| Ham Type & Weight | Oven Temp | Minutes per Pound | Total Time |
|---|---|---|---|
| Whole, bone-in (10-14 lbs) | 325°F | 15-18 min/lb | 2.5-4 hours |
| Half, bone-in (5-7 lbs) | 325°F | 18-24 min/lb | 1.5-2.75 hours |
| Boneless (3-5 lbs) | 325°F | 10-15 min/lb | 50-75 minutes |
| Spiral-cut (7-9 lbs) | 325°F | 10-12 min/lb | 70-108 minutes |
| Ham Type & Weight | Oven Temp | Minutes per Pound | Total Time |
|---|---|---|---|
| Whole, bone-in (10-14 lbs) | 325°F | 18-20 min/lb | 3-4.5 hours |
| Half, bone-in (5-7 lbs) | 325°F | 22-25 min/lb | 1.75-3 hours |
Also see: Pork Loin Cooking Time for cooking fresh pork roasts.
According to USDA guidelines, the required internal temperature depends on whether your ham is fully cooked or cook-before-eating. Most store-bought hams are fully cooked and only need reheating to 140°F for quality and safety. Fresh or cook-before-eating hams must reach 145°F followed by a 3-minute rest.
Check the package label. It will say "fully cooked," "ready to eat," or "heat and serve" for pre-cooked hams. Labels reading "cook before eating" or "fresh ham" require full cooking to 145°F. When in doubt, treat it as cook-before-eating and cook to 145°F.
Insert your instant-read thermometer into the thickest part of the ham without touching bone. For bone-in hams, check multiple spots since temperature can vary. The bone conducts heat faster than meat, giving false high readings if you touch it.
Most grocery store hams are fully cooked during processing. You're just reheating to 140°F for best texture and flavor. Spiral-sliced hams, honey-baked hams, and most bone-in hams fall into this category. They're safe to eat cold but much better heated.
Fresh ham (uncured pork leg) and some specialty hams require cooking to 145°F internal temperature, followed by a 3-minute rest before carving. During rest, temperature stays constant or rises slightly, completing the cooking process and allowing juices to redistribute.
Ham dries out quickly above 145°F. Since most are already fully cooked, you're just warming them. Heating a pre-cooked ham to 160°F makes it dry and tough. Stick to 140°F for fully cooked hams and 145°F for fresh hams.
Source: USDA Food Safety and Inspection Service - Hams and Food Safety
Read the package to determine if your ham is "fully cooked" (reheat to 140°F) or "cook before eating" (cook to 145°F). This determines both temperature target and cooking time.
Always cook ham at 325°F. Higher temperatures dry out the exterior before the interior heats through. Lower temperatures take too long and can create food safety issues.
Place ham cut-side down in a shallow roasting pan. Add 1/4 cup water to prevent drippings from burning. Cover loosely with foil to trap moisture while allowing some evaporation.
Use the cooking time calculator or charts above based on ham type and weight. Set a timer for 30 minutes before the estimated finish time to start checking temperature.
If glazing, remove foil during the last 30-45 minutes. Brush with glaze every 15 minutes. The sugar in glaze burns easily, so only apply when ham is nearly done.
Insert thermometer into thickest part without touching bone. Fully cooked ham should reach 140°F. Cook-before-eating ham must reach 145°F.
Let ham rest 10-15 minutes before carving. This allows juices to redistribute and temperature to equalize throughout. Cover loosely with foil during rest.
The single most important step. "Fully cooked" and "cook before eating" require different temperatures and times. If you heat a cook-before-eating ham to only 140°F, it's undercooked. If you heat a fully cooked ham to 160°F, it's dried out.
Add liquid to the pan (water, apple juice, or broth) and cover with foil. Ham has little fat compared to other cuts, so it dries out easily. The liquid creates steam that keeps the surface moist.
Time is a guideline, temperature is the rule. Every ham is slightly different in shape and density. A thermometer tells you exactly when it's done, preventing both undercooking and overcooking.
Pre-sliced hams heat faster because hot air reaches more surface area. Use the lower end of the time range (10 minutes per pound). They also dry out faster, so watch temperature carefully and keep covered until glazing.
Apply glaze during the last 30-45 minutes only. Sugar burns at oven temperatures. If you glaze too early, you'll get a black, bitter crust instead of a shiny, caramelized finish.
Also see: Pork Shoulder Cooking Time for cooking pulled pork.
Learn from these common ham cooking mistakes
This is the #1 mistake. Assuming all hams are "fully cooked" can lead to serving undercooked pork. Assuming all need full cooking leads to dry, overcooked ham. Always check the label before calculating time and temperature.
Ham has minimal fat marbling. Without moisture from covering, it dries out badly. Cover with foil for most of cooking time, removing it only for glazing during the last 30-45 minutes.
Sugar-based glazes burn at 325°F if left on too long. Apply glaze only during the last 30-45 minutes, brushing every 15 minutes for even coating. This creates beautiful caramelization without burning.
Fully cooked hams only need 140°F. Heating beyond this creates dry, tough meat. Follow USDA guidelines: 140°F for fully cooked, 145°F for cook-before-eating. More is not better with ham.
Cutting into ham right out of the oven releases all the juices onto the cutting board. Rest for 10-15 minutes to let juices redistribute. The ham stays hot and carves much easier after resting.
Everything you need to know for perfect ham
Use our ham cooking time calculator by entering your ham's weight in pounds. The calculator provides exact times based on USDA guidelines - typically 15-18 minutes per pound for fully-cooked ham at 325°F. Times adjust automatically for different ham types and sizes.
Fully cooked ham takes 22-33 minutes per kilogram at 163°C (325°F) to reheat to 140°F (60°C). A 4kg ham needs 90-135 minutes. Cook-before-eating ham takes 40-44 minutes per kilogram to reach 145°F (63°C). Convert to pounds: 1 kg = 2.2 lbs. Fully cooked: 10-15 min/lb. Cook-before-eating: 18-20 min/lb. Check your ham label—most store-bought hams are fully cooked and only need reheating. For all safe meat temperatures, see our Meat Temperature Chart.
A fully cooked 8-pound ham takes 80-120 minutes (1.5-2 hours) at 325°F to reheat to 140°F. A cook-before-eating ham of the same weight takes 144-160 minutes (2.5-3 hours) to reach 145°F. Bone-in hams take longer than boneless—add 5 minutes per pound. Formula: Fully cooked = 10-15 min/lb. Cook-before-eating = 18-20 min/lb. For a holiday alternative with similar cooking time, see Turkey Cooking Time Per Pound.
325°F is better for ham. At 325°F, ham heats evenly without drying out the exterior. Fully cooked ham takes 10-15 min/lb at 325°F. At 350°F, ham cooks faster (8-12 min/lb) but edges can dry out before center reaches temperature. The USDA recommends 325°F for all large roasts including ham. Cover ham with foil to retain moisture. For a simpler pork roast option that's more forgiving at higher temps, try Pork Loin Cooking Time.
Total oven time depends on ham type and weight. Fully cooked ham: 10-15 minutes per pound at 325°F (8 lb = 80-120 minutes). Cook-before-eating ham: 18-20 minutes per pound at 325°F (8 lb = 144-160 minutes). Check your package label for ham type. Bone-in takes longer than boneless. Add glaze during the last 20-30 minutes. Always verify with a thermometer: 140°F for fully cooked, 145°F for cook-before-eating. For a smaller gathering, Whole Chicken Cooking Time requires less oven time at 80-100 minutes.
Our ham calculator requires three inputs: ham weight in pounds, ham type (fully cooked or cook-before-eating), and whether it's bone-in or boneless. Enter your 8-pound fully cooked bone-in ham, and the calculator provides 80-120 minutes at 325°F. It accounts for the fact that bone-in hams take 5 minutes longer per pound than boneless. Always verify the final temperature with a thermometer: 140°F for fully cooked ham, 145°F for cook-before-eating ham.
A fully cooked 10-pound ham takes 2.5-3 hours at 325°F (15-18 minutes per pound). A cook-before-eating 10-pound ham takes 3-3.5 hours (18-20 minutes per pound). Always verify with a thermometer: 140°F for fully cooked, 145°F for cook-before-eating.
Choose your preferred cooking method to see specific times and temperatures
Cook at 140°F
Temperature Adjustments:
Use our calculator to get exact cooking times based on your specific weight and starting temperature