Homemade Tamales Recipe

Tamales are a project, not a quick weeknight recipe, but they’re a rewarding one — and they freeze beautifully, so one long cooking session sets you up for weeks of meals. Corn husks are filled with a light, whipped masa dough and a savory pork filling, folded closed, and steamed until the masa turns tender and pulls cleanly away from the husk.

This recipe makes about 20 tamales, which is a normal batch size since tamale-making is traditionally a group effort. Set aside a couple of hours, mostly for the filling and steaming, which need minimal hands-on attention once assembly is done.

Recipe at a GlanceJump to Instructions
  • Prep1 hr
  • Cook1 hr 30 min
  • Total2 hr 30 min
  • ServesAbout 20 tamales
  • CourseMain Course
  • CuisineMexican

Written by · Updated 10 September 2026

Why This Recipe Works

The texture of a tamale is decided almost entirely by how much air you beat into the fat before the masa harina goes in. Whipping lard or shortening until it is pale and fluffy traps thousands of tiny air pockets. When the tamales hit the steam, those pockets expand and the baking powder adds a little more lift, which is what turns a dense paste into something light and cake-like. Under-whipped fat cannot do this, and no amount of extra steaming will fix it later.

The float test is a density measurement dressed up as a kitchen trick. Drop a small ball of masa into cold water: if enough air has been incorporated, the dough is less dense than water and floats. If it sinks, keep beating. It is the single most reliable indicator that the masa is ready, and it takes ten seconds to check.

The corn husk is doing real work too. It acts as a steam jacket, holding the masa in shape while letting moisture in gradually, so the dough hydrates and sets without the outside turning gluey. The masa pulling cleanly away from the husk is the standard doneness test precisely because it only happens once the starches inside have fully gelatinized.

Ingredients

Dried corn husks and masa harina are sold at most Latin American grocery stores and in the international aisle of many supermarkets. Soak the husks well before assembling.

  • 1 package dried corn husks (about 30-40 husks), soaked in hot water for 1 hour
  • For the filling: 2 lbs pork shoulder, cut into chunks
  • 1 onion, quartered
  • 3 garlic cloves
  • 2 dried guajillo chilies, stemmed and seeded
  • 1 dried ancho chili, stemmed and seeded
  • 1 tsp cumin
  • 1 tsp dried oregano
  • Salt, to taste
  • For the masa: 4 cups masa harina
  • 1 cup lard or vegetable shortening
  • 2 1/2 to 3 cups warm pork broth (reserved from cooking the pork)
  • 1 tbsp baking powder
  • 1 1/2 tsp salt

Step-by-Step Instructions

  1. Make the filling: place the pork, onion, and garlic in a large pot, cover with water, and simmer for 1 to 1.5 hours until the pork is very tender. Reserve the broth. Shred the pork with two forks.
  2. Meanwhile, toast the guajillo and ancho chilies in a dry pan for 30 seconds per side, then soak in hot water for 15 minutes until softened. Blend the softened chilies with a cup of the pork broth, cumin, and oregano until smooth.
  3. Strain the chili sauce through a fine sieve into a pan, simmer for 5 minutes, then stir in the shredded pork and season with salt. Set aside to cool slightly.
  4. Make the masa: beat the lard or shortening in a stand mixer (or by hand) until light and fluffy, about 3-4 minutes.
  5. In a separate bowl, whisk the masa harina, baking powder, and salt together. Add this to the whipped lard in three additions, alternating with the warm pork broth, beating well after each addition until you have a smooth, spreadable dough about the texture of soft peanut butter. A small ball of the dough should float when dropped in a glass of water — that’s the test for whether enough air has been beaten in.
  6. Drain the soaked corn husks and pat dry. Take a husk, spread about 2-3 tablespoons of masa in a thin, even layer over the wider two-thirds of the husk, leaving a border.
  7. Spoon 1-2 tablespoons of the pork filling down the center of the masa. Fold one long side of the husk over the filling, then the other side, so the masa encloses the filling, then fold up the empty tapered end.
  8. Stand the folded tamales upright, open end up, in a steamer basket set over simmering water, packing them fairly snugly so they support each other. Cover with a damp cloth and the lid.
  9. Steam for 60-75 minutes, checking the water level periodically and topping up with hot water as needed. Tamales are done when the masa pulls cleanly away from the husk without sticking.
  10. Let the tamales rest for 10 minutes before unwrapping and serving, with extra salsa or hot sauce on the side.
Food safety note: Cook pork to an internal temperature of 145°F (63°C) with a 3-minute rest, or 160°F (71°C) for ground/shredded preparations, measured with a food thermometer. Refrigerate leftovers within 2 hours. Source: FoodSafety.gov.

What I Learned Testing This Recipe

My first batch was dense and slightly gummy, and I spent a while blaming the steaming time before I understood the problem was three steps earlier. I had beaten the lard for maybe a minute because it looked smooth. Smooth is not the target; pale and visibly aerated is, and with a stand mixer that takes closer to four minutes. The float test would have caught it immediately, and now I never skip it.

I also let the pot run dry once, about fifty minutes into a seventy-minute steam. The bottom layer of tamales scorched and the rest stopped cooking. I now set a timer for every twenty minutes purely to check the water level and top it up with boiling water, never cold, so the pot does not lose its steam.

Overfilling is the other easy mistake. It is tempting to be generous with the filling, but the masa needs to be able to close fully around it. Where I overfilled, the filling leaked into the steamer and the tamale never sealed. One to two tablespoons is genuinely enough, spread down the centre with a border of masa on all sides.

Tips for Success

  • Whip the lard until genuinely fluffy and pale — this is what makes the difference between a dense, gummy tamale and a light one.
  • The floating-dough test is the most reliable way to check if the masa is ready; don’t skip it if this is your first batch.
  • Pack the tamales upright and snug in the steamer, but not so tight they can’t expand slightly as they cook.
  • Keep an eye on the water level while steaming — running dry is the most common way to ruin a batch.

Variations

  • Chicken tamales: substitute shredded, cooked chicken thighs for the pork, using the same chili sauce.
  • Vegetarian tamales: use black beans and roasted vegetables or cheese and roasted poblano strips in place of the meat filling.
  • Sweet tamales: replace the savory filling with a mixture of masa, sugar, cinnamon, and raisins for a dessert version.
  • Green tamales: use a tomatillo-based salsa verde in place of the red chili sauce for the filling.

Storage and Make-Ahead

Cooked tamales keep in the refrigerator, wrapped, for up to 5 days. They freeze exceptionally well for up to 3 months — freeze them still wrapped in their husks, and reheat by steaming from frozen for about 20-25 minutes, or microwave individually wrapped in a damp paper towel.

Frequently Asked Questions

Why is my tamale masa dense instead of light and fluffy?

This almost always comes down to under-whipping the lard or shortening before adding the masa harina. Beat it until genuinely pale and fluffy, about 3-4 minutes with a stand mixer, and test the dough with the float-in-water trick before assembling.

Can I make tamales without a steamer basket?

Yes — you can improvise one with a large pot, a few balls of crumpled foil in the bottom to elevate a heatproof plate or colander, and a tight-fitting lid, as long as the tamales stay above the simmering water.

How long do homemade tamales last, and can I freeze them?

Refrigerated tamales keep about 5 days. They freeze very well for up to 3 months — wrap and freeze them in their husks, then steam directly from frozen, adding about 5-10 extra minutes to the steaming time.

Leave a Comment