These homemade pupusas are a classic Salvadoran recipe, stuffed with black beans and vegan cheese and topped with curtido and salsa roja. They’re vegan, gluten free, and make a great snack or entree!
Pupusas are one of my favorite foods. And it’s not just because of my proclivity for dishes with exciting names, but they are just really really good. Imagine a fluffy, almost creamy masa cake stuffed with a delicious filling and topped with a crisp fermented cabbage and a mild tomato salsa.
Because they are made with masa harina, they are accidentally gluten free. And filling possibilities include anything from cheese, vegetables, beans, or meat (or some combination of those, though usually involving cheese).
Pupusas are from El Salvador, and if you’ve never had them you are in for a really big treat! They’re quite easy and quick to make, especially if you keep the filling simple.
Before you know it you’ll be whipping up homemade pupusas in no time!
How to make the pupusa dough:
There are only 4 ingredients to make the pupusa dough. If you’ve made tortillas before, you’ll find that it’s very similar, it’s more the technique and thickness that sets pupusas apart.
Most importantly you need masa harina, which is a corn meal prepared in a unique way. First the corn kernels are treated with with a strong base to make hominy. This is then dried and ground to make a fine flour.
Masa harina (sometimes just called masa) behaves very differently from cornmeal and this is not an ingredient you can substitute. Also note that masarepa (sometimes called harina de maiz refinada precocida, or refined, precooked cornflour) is not the same thing as masa harina.
We add a bit of salt to the masa harina before adding warm water and a drizzle of oil. I like to use warm water because it helps hydrate the masa effectively and quickly, but I haven’t found the dough to be overly fussy with the temperature. The oil helps make a tender dough.
Mix everything together, then work it with your hands for a minute to make sure everything comes together and forms a smooth dough.
Masa makes a completely different dough than a wheat dough. There is no gluten to hold it together, it can easily be smushed, torn apart, and shaped to your liking. So there is no need to knead the dough to develop it, we just want to get our hands in there to make sure everything is well incorporated.
Once the dough is made, let it rest for 15 minutes covered to fully hydrate. The main thing that can happen to the dough at this point is that it dries out. So put a lid on it, cover it with a plastic wrap, or a damp kitchen towel to keep the moisture in.
You can get all the other ingredients out while it rests.
The pupusa filling:
For these pupusas I kept it simple and used plain black beans (but you can season them if you’d like), some vegan cheese, and sliced peppers. For the peppers you can use mini-sweet peppers or a hot pepper like jalapeño.
Some other ideas for fillings include leftover taco filling, store bought vegan chorizo, refried beans, mashed sweet potato, really anything that you can chop small or mash so that it’s easy to shape the pupusas. A popular simple filling is just [vegan] cheese and jalapeño. You can make it mild and leave out the jalapeño!
For these pupusas I mixed together shredded vegan mozzarella and vegan cheddar. My vegan queso fresco would make a really nice filling as well!
If you want to make them with the same filling as me, drain and rinse the beans (if there is no salt added you can skip the rinse if you’d like), shred the cheese if it’s not pre-shredded, and thinly slice the peppers.
Next, divide up the dough and shape the pupusas.
Divide the dough into 6 pieces and shape them into balls. I find this makes a good size pupusa that I can still easily shape in my small hands.
Shape one pupusa at a time and leave the rest covered to stay moist while you’re shaping. If the dough is dry it will crack more easily. To fix, you can knead in a bit more water or wet your hands and work that into each ball of dough.
Press the ball of masa between your two palms to flatten, try to make the edges a bit thinner than the center as they’ll overlap slightly when you fold them over. Once it’s a thick disk, add your fillings to the center.
Add about a tablespoon of black beans to the center of the dough (or whatever filling you are choosing to use).
Next, add a bit of vegan cheese and some sliced peppers to cover. Then fold in the edges of the dough to meet in the center and cover the filling to make a round package.
Lastly press the stuffed masa between your hands to flatten into a thick patty. If it starts to crack just smear the masa to cover. A little cracking is ok to leave!
Note that if the dough is very crumbly and cracks a lot, it may be too dry. Some cracking is normal because masa harina doesn’t have any gluten to help hold the structure together!
Once you have flattened it as much as you can and closed up any large cracks, your masa is shaped! Stick it on a parchment lined tray or plate and shape the rest of them!
You can watch the video of me shaping a pupusa for more help with that process!
Once all the pupusas are shaped, it’s time to cook them.
Cooking is simple. Heat up a fry pan, skillet, or griddle over medium heat. Add some oil to coat the pan, and fry them for a few minutes on each side until they’re golden with some dark spots.
Enjoy them with homemade curtido and salsa roja. Curtido needs to be made in advance, but is simple to make. If you need a faster solution, you can make a vinegar cabbage slaw (you can follow the recipe in my other pupusa recipe post).
The salsa roja is easy to make, and can also be made in advance and kept in the fridge until you’re ready to use it.
The curtido and salsa roja make enough for about 2-3 batches of these pupusas, so feel free to make more as you’d like! You really won’t regret it!
If you make these homemade Salvadoran pupusas, leave a comment below and rate the recipe on the recipe card. And please share your photos with me on Instagram, tag @thecuriouschickpea and #thecuriouschickpea. I love seeing your recreations!
WANT MORE DELICIOUS VEGAN RECIPES? SIGN UP FOR MY EMAIL NEWSLETTER& FOLLOW ME ON INSTAGRAM, FACEBOOK, AND PINTEREST!
I’d be remiss not to mention there’s a whole story behind my first time eating pupusas, and I’ve shared it before here. I hope these pupusas find as special of a place in your heart! Enjoy!
- 2 cups (240g) masa harina
- 3/4 tsp (3g) salt
- 1 1/2 cups (340g) warm water
- 2 tbsp (24g) oil
- Black beans, drained and rinsed (~1/2 cup)
- Shredded vegan cheese (~1/4 cup)
- Jalapeños or sweet peppers, thinly sliced (1-2 peppers)
- Oil to cook
- Make the masa dough: in a large mixing bowl mix together the masa harina, salt, warm water, and oil with a wooden spoon. Knead it by hand for about 1 minute to make a smooth ball of dough. It should be soft but not very sticky. Cover and let rest for at least 15 minutes to fully hydrate.
- Divide the dough into 6 pieces and keep covered. Take one piece of a dough at a time and flatten into a thick pancake between your hands, add about 1 tablespoon of black beans or filling to the center of the disk and then add a little vegan cheese and peppers. Fold the edges of the dough over to cover and meet in the center. Flatten it between your hands to make a thick stuffed pancake. See post for photos and video showing detail.
- Place shaped pupusas on a tray (line with parchment paper to help prevent any sticking), and once they're all shaped, heat a skillet or griddle over medium heat.
- Add some oil to the pan or griddle to lightly coat, then fry about 2-4 minutes on each side, until golden with some dark spots. Work in batches as needed until all are cooked.
- Eat hot and topped with curtido or a cabbage slaw and salsa roja.
Adapted from my jalapeño cheese and bean pupusas.
Feel free to vary the fillings to your liking! Dry fillings are easier to work with when shaping the pupusas.
As an Amazon Associate and member of other affiliate programs, I earn from qualifying purchases.
Nutrition Information:Yield: 6 Serving Size: 1
Amount Per Serving:Calories: 211 Total Fat: 7g Sodium: 327mg Carbohydrates: 34g Fiber: 4g Sugar: 2g Protein: 5g