You generally cook a ham in the oven at 300–350°F (150–175°C) until it’s warmed through to a safe internal temperature, which usually works out to about 10–20 minutes per pound depending on the type of ham. Always rely on a meat thermometer and the package directions for your specific ham, because different brands and cuts give slightly different recommended times.

Key timing guidelines

  • For a fully cooked, bone-in half or whole ham, common guidance is about 10–15 minutes per pound at 325°F until the center reaches about 140°F.
  • Many spiral-cut hams suggest roughly 12–15 minutes per pound at 325°F, tightly covered with foil so they don’t dry out, again to an internal temperature of around 140°F.
  • Some traditional recipes for fresh (uncooked) hams use 325–350°F and can run 20 minutes per pound or more, often totaling 4½–5 hours for a large 10–12 pound ham, with a finished temperature closer to 160°F.

Simple step‑by‑step

  1. Preheat the oven to 300–325°F for most fully cooked hams.
  1. Place the ham cut side down in a roasting pan with a little water in the bottom, and cover tightly with foil to keep it moist.
  1. Cook for the time suggested on the package (or about 10–15 minutes per pound as a general rule) until the thickest part hits about 140°F.
  1. If using a glaze, uncover for the last 20–45 minutes, brush with glaze, and return to the oven, often at the same or slightly higher temperature, until nicely browned.
  1. Let the ham rest 10–20 minutes before carving so the juices redistribute.

Quick reference table (approximate)

Ham type Oven temp Approx. time Target internal temp
Fully cooked, bone-in 325°F 10–15 min per lb 140°F
Spiral- cut, fully cooked 325°F 12–15 min per lb 140°F
Fresh (uncooked) ham 325–350°F Up to 20 min per lb 160°F
[7][8][10][1][3] Always check the label on your specific ham and prioritize those instructions, using a thermometer as your final safety check.