An easy Mexican pork tamales recipe filled with tender pieces of pork simmered in a delicious red chile sauce all wrapped in a soft masa dough. Follow these simple step-by-step instructions to make your own authentic Mexican tamales right at home!

Table of Contents
Tamales are one of the most popular Mexican dishes out there. Like pozole, chiles rellenos, and chile verde, tamales are the ultimate Mexican comfort food.
I grew up eating tamales every year for Christmas, New Years and other special occasions. Recently I asked my Mom to walk me through her recipe, and I finally learned how to make tamales just like hers!
What Are Tamales?
Tamales are a Mexican dish made from a corn dough that’s filled various meats, cheeses, peppers or other savory or sweet fillings. The dough and fillings are wrapped in corn husks or banana leaves and steamed or boiled until cooked.
Tamales and their fillings vary from region to region. One of the most widely known is red pork tamales.
Mexican Pork Tamales
One of the most popular kinds of Mexican tamales are red chile pork tamales (or ‘tamales rojos’) made from tender pork shoulder that’s been simmered in a rich red chile sauce. The filling is enveloped in a light and addicting masa dough and then steamed in corn husks on the stovetop for a few hours.
The tamale making process is easy and very doable, but it’s even better and goes by much faster when you have a friend or two to help! So grab a cup of mexican hot chocolate or café de olla and let’s make tamales!

Ingredients You’ll Need
Given the deliciously intense and distinct flavor of tamales, you’d think they’d be made with a ton of special ingredients. But they’re not! All the ingredients used are very common in Mexican cooking. Here’s what you need:
- Pork filling: For the pork filling, you’ll need some boneless pork shoulder (also known as ‘pork butt’) and some salt.
- Red chile sauce: For the red chile sauce, you’ll need some dried guajillo chiles, dried ancho chiles, ground cumin, garlic powder, and salt.
- Masa dough: For the tamale dough, you’ll need some masa harina (I used Maseca), canola oil (or other neutral-tasting oil), chicken broth, baking powder and salt. Many traditional tamale recipes use lard or shortening, but my family has always made it using canola oil and it tastes great! The masa isn’t greasy and it’s still very flavorful and fluffy.
- Corn husks: You’ll need about 50 or so corn husks to spread out your masa and then fill it with the pork filling. You can find dried corn husks at most Mexican grocery stores or you can order them on online.

How to Make Tamales
- Prep the corn husks. Corn husks come dried so you’ll need to soak them in some hot water for an hour or so until they’re softened and easily foldable. Soaking them makes them easy to work with when you go to assemble the tamales.
- Make the red chile sauce. You’ll need to rehydrate the chiles in hot water to soften them up before blending them with the seasonings. This sauce isn’t very spicy so if you’d like to add some heat I recommend adding 3-5 dried arbol chiles to the mix. (This sauce mixture is very similar to my Chile Colorado.)
- Cook the pork. Remove any excess fat from the pork and then cut it into very small pieces, almost minced (see photo above). This helps the pork cook and get tender a little faster than if it were in larger pieces. Once the pork is browned, add in the blended red chile sauce and simmer until the meat is tender.
- Make the masa. Mix together the masa harina and seasonings with the oil first and really work it into the dough with your hands or a stand-mixer. I prefer using my hands so I can feel the texture of the masa while I’m mixing it. Then add in the broth and mix once more. Learn more about masa for tamales in this step-by-step post.

How to Assemble Tamales
Now that you’ve done all the work of making and preparing all the separate components of the tamales, it’s time to put it all together!
- Dry the corn husks. Once you’re ready to start assembling, remove the corn husks from the soaking water and pat them dry with paper towels. Grab a husk that’s a fairly good size and sits comfortably in the palm of your hand. Make sure the side that is the smoothest and less rigid is the one facing up.
- Spread masa on corn husks. Grab a heaping spoonful of masa and place it in the middle of the corn husk. As best you can, spread the masa onto the bottom half and a little bit of the top half using the back of your spoon (see photos above). You want to have a thin layer of masa on the corn husk, but not thin enough that it’s transparent and rips. If holding the corn husk and spreading the masa is too difficult, place it on a flat surface and spread. Spreading the masa is sort of an art that even I haven’t completely mastered yet, so just keep trying and you’ll get better as you go!
- Fill with red chile pork. Place a spoonful of filling and spread it vertically in the middle of the masa. You only need a little filling (probably less than you think) so try not to overstuff it or the filling will ooze out when you fold it.
- Fold. Fold the long edges of the corn husk together like a book, then again once more. Fold in the pointy edge so that only one side of the corn husk is open and secure the whole thing with a tie made from a thin strip of corn husk. Securing the edge is totally optional and isn’t necessary. Since the tamales are cooked standing up with the open side facing up, the filling doesn’t fall out. I personally like tying them because the presentation is nice (especially for photos), but my family never ties them so feel free to leave them untied and save some time!

How to Cook Tamales
You’ll need a steamer pot to steam and cook the tamales once they’ve been filled and folded. If you have a large stockpot with a strainer, that will work. As long as the steamer insert sits above the water, that’s all you need.
Here’s the exact steamer pot that I have. It’s the perfect size to fit the amount of tamales made in this recipe (about 45-50). I actually have two of these pots since my family always makes larger batches!
To steam, simply fill the bottom of the pot with water, insert the strainer and then stand the tamales in the pot with the open side facing up. The last 10 or so tamales will be a tight fit, but just squeeze them in as best as you can. They’ll be a-okay.

Tips for Making Tamales
- Cut the pork into small 1/2-inch pieces. This really helps to speed up the cooking process and gets the meat super tender without having to cook it for hours and hours. If you prefer to have the pork shredded instead of in pieces, cut the pork into large 4-inch chunks and braise it in the red chile sauce on the stove for 2 1/2 hours in a Dutch oven or pot until it’s tender and easily shreds.
- Make the filling and masa ahead of time. The red chile pork and masa can be made up to 3 days in advance. Store it in an airtight container in the fridge until ready to use!
- Invite friends and family over for a tamalada! Making tamales from start to finish in one day can be quite a lot of work, especially if you’re doing it alone. To help the process go by a little faster, throw a tamalada (or tamale-making party) and have friends and family help!
- Make a large batch and freeze them for later. Since my family only makes tamales for special occasions and holidays, when tend to make a huge batch. Luckily, leftovers freeze really well! Simple place them in an airtight container or zip-lock bag and freeze them for up to 6 months. To reheat, you can re-steam them for 15 minutes in the steamer pot, heat them in the oven for 10 minutes at 350°F or in the microwave for 1-2 minutes.
Storing, Freezing, and Reheating
To store: Place tamales in an airtight container and refrigerate for up to one week.
To freeze: Place cooled tamales in an airtight container or freezer-safe storage bag and freeze for up to 6 months.
To reheat: You can re-steam the tamales for 15 minutes in the steamer pot, heat them in a 350°F oven for 10 minutes, or microwave them in batches for 1-2 minutes on high.

Ingredients
For the corn husks
- 50 corn husks (about 1/2-3/4 pound)
- hot water
For the red chile sauce
- 3 ounces guajillo chiles, rinsed, stems and seeds removed
- 3 ounces ancho chiles, rinsed, stems and seeds removed
- hot water
- 1 ½ teaspoons garlic powder
- 1 ½ teaspoons kosher salt
- ¾ teaspoon ground cumin
For the pork
- 2 ½ pounds boneless pork shoulder*, excess fat removed and cut into small ½-inch pieces
- 2 tablespoons cooking oil
- 1 teaspoon kosher salt
- 1 bay leaf
For the dough
- 8 ¼ cups masa harina (half of a 4.4 lb bag Maseca)
- 1 ¾ tablespoons fine salt
- 1 tablespoon baking powder
- 1 ¾ cups canola oil (or corn, vegetable or any other neutral-tasting oil)
- 6 ½ cups chicken broth (or beef or vegetable – low sodium preferred)
Instructions
- Prep the corn husks: Add the corn husks to a large bowl or pot. Pour enough hot water over the corn husks to cover them completely. Cover the bowl with aluminum foil and let them soak for 1 hour to soften them up.
- Soak the chiles: Add the guajillo and ancho chiles to a large bowl. Pour enough hot water over the dried chiles to cover them completely. Cover the bowl with aluminum foil or a large plate and set aside to soften the chiles for 15 minutes.
- Make the chile sauce: Using a slotted spoon, transfer the chiles to a large blender. Add garlic powder, salt, ground cumin, 1 cup of the chile soaking water, and 1 cup of fresh water.
- Blend the chile sauce: Blend on high until completely smooth, about 3 minutes depending on the power of your blender.
- Cook the pork: Heat oil in a Dutch oven or large pot over medium-high heat. Add pork, season with salt and cook for 15 minutes, stirring occasionally, until pork has browned on all sides.
- Simmer the pork: Add red chile sauce, bay leaf and bring to a boil. Once boiling, reduce to simmer, cover and cook for 15 more minutes. Taste and season with more salt if necessary. The pork should be tender and cooked through. If it's still a little tough, cover and cook for another 15 minutes.
- Mix the masa harina: In a very large mixing bowl or pot, add masa harina, salt and baking powder. Combine and mix with your hands.
- Add the oil: Add canola oil and mix together, working the dough through your fingers until everything is well combined and incorporated. The dough should feel a little crumbly, almost like wet sand, and should lightly hold it's shape when pressed together.
- Add the broth: Add broth and mix for about 3-5 minutes until the dough is fairly wet and well saturated. The dough should be soft and spreadable like thick hummus. If the dough is too dry, add more broth. If it's too wet, add more masa harina.
- Finish prepping the corn husks: Drain the water from the corn husks and pat them dry. Lay them flat onto a baking sheet for easy access.
- Spread the masa onto corn husks: Grab a corn husk and identify which is the smooth side and which is the side with ridges. Place the smooth side face up into your palm or on a plate. Using a large spoon, grab a heaping spoonful of masa and place it in the middle of the corn husk. Using the back of the spoon, spread the masa in a thin layer to create rectangle shape, leaving the top 1/3 of the corn husk empty. (see post above for step-by-step photos)
- Add the filling: Using a different spoon, place about a tablespoon or so of the red chile pork into the center of the corn husk. Don't put too much filling or it will overflow when you close it.
- Fold: Fold together the long edges of the corn husk like a book, and then fold it once more. Fold the pointy edge over so that only one side of the corn husk is open and exposed, and secure the folded edge with thin strip of corn husk by tied a knot around the tamale. If you don't want to go to the trouble of tying a knot around each tamale, you don't have to.
- Prepare the steamer pot: Fill the bottom of the steamer pot with water and cover with the steamer insert. Place the tamales in the steamer with the open end facing up, making sure to lean them against the side of the pot so they don't fall down.
- Steam: Cover tightly with the lid and place steamer over medium-high heat. Cook for 3 1/2 hours, or until the masa is fully cooked. To check and see if it's cooked, carefully remove a tamale and open it up. The masa should easily separate from the corn husks and it should be fairly firm. When ready to eat, remove tamales from steamer, let sit for 3 minutes to cool, then serve.
Isabel’s Tips:
- Pork: Cutting the pork into small 1/2-inch pieces helps to speed up the cooking process and gets the meat super tender without having to cook it for hours on the stove. If you prefer to have the pork shredded instead of in pieces, cut the pork into large 4-inch chunks and braise it in the red chile sauce on the stove for 2 1/2 hours in a Dutch oven or pot until it’s tender and easily shreds.
- Make ahead: The red chile pork and masa can be made up to 3 days in advance. Store it in an airtight container in the fridge until ready to use.
Nutrition Information
Making a Large Batch
Tamales are typically made in large batches for celebrations, holidays and special occasions in Mexican culture. When my family and I make tamales, we usually double the above recipe. Here are those ingredient amounts for your convenience:
Amount for double the recipe (about 100 tamales)
For the red chile sauce
- 6 ounces dried guajillo chiles
- 6 ounces dried ancho chiles
- hot water
- 1 tablespoon garlic powder
- 1 tablespoon coarse kosher salt
- 1 1/2 teaspoons ground cumin
For the pork
- 5 pounds pork shoulder, excess fat removed and cut into very small pieces
- 3 tablespoons cooking oil
- 1 tablespoon coarse kosher salt
- 1 bay leaf
For the tamale dough
- 16 1/2 cups masa harina (a whole 4.4 lb bag Maseca)
- 3 1/2 tablespoons table salt
- 2 tablespoon baking powder
- 3 1/2 cups canola oil
- 13 cups broth
Hi, we made your recipe yesterday and they were wonderful!! I halved the ingredients, so about 2 dozen. I was worried about the water evaporating away but it was fine (I did add about 1 1/2 cups after an hour but I really didn’t need to.) We cooked them for 3 hours and decided they were done, then let them set for about 10 minutes. I thought perfect but my daughter thought they could have cooked another 1/2 hour as your recipe indicated. Anyway, Wonderful!!! Thank You!!!
Really easy and very good. I like it better than my own recipe. The masa is so much easier to make and still tender. I was worried because I always used lard.
I seen your recipes on Facebook I really like them I haven’t tried any of them yet but I sure will if I get my free cookbook
Such a great recipe. Three of us hot together to enjoy making these delicious tamales. Thanks for providing us with a good time and amazing tamales, Isabel.
Thank you, Barb!
I attempted tamales for the first time in my almost-60 years; living in Texas, we always bought tamales from a local store —they closed after 75 years!
After perusing several recipes, I chose this one. I took it in stages, creating the pork filling the first day, the masa and assembly the next. My family was blown away!
One of my sons took a dozen to his friend, a 1st generation Mexican American (his parents were in Mexico for Christmas). In hindsight, it was either very bold or very stupid to send my first attempt to a young man who has grown up eating the real things, created by family members generation after generation.
He sent my son a text – “These tamales are $%^&*g awesome! I was shocked, they remind me of my mom’s!”
And my holiday was made 🙂 Highly recommend this recipe. My technique at folding uniformly needs work, but that will come with time.
Thanks, Isabel!
Hi Nancy! Thank you so much, we are so glad you were able to enjoy these tamales with your family!
Hi there,
So I think we put too much water in the pot and it was too high a flame. The tamales are sticky and mushy after 4 hours and I’m worried they are ruined. Do I take out some water and just keep steaming them until they are done? Or have I ruined them?
Hi Sara! Sometimes the tamales can set a little bit more once they’ve cooled, so I would set a couple of them out and let them cool for about 5-10 minutes. If they are still underdone, then I would suggest continuing to steam them on low.