We may earn a commission when you click on the affiliate links in this post.
This Restaurant-Style Mexican Rice is the perfect side dish for any Mexican meal. The rice has the rich flavor and slightly dry texture just like the rice served in most Mexican restaurants. It is a family favorite and must-have any time we are making Mexican food.

5 Star Reviews ⭐️⭐️⭐️⭐️⭐️
“This is EXACTLY the rice I have been spending YEARS trying to figure out. Everything was absolutely perfect. Flavor, texture, color, all completely spot on! THANK YOU THANK YOU THANK YOU!!! You really just upped my taco game!” – Elizabeth
“I am a Puerto Rican woman married to a hard core Mexican man. I’ve tried just about every recipe available for this rice and it never quite worked. I made this today and IT’S PERFECT!! This is the way my MIL makes it. It is as authentic as it can get! Thank you, thank you, thank you. This is the recipe I will make my family from now on.” – Patty
The Secret to Mexican Restaurant-Style Rice
If you’ve ever had that perfectly fluffy, slightly dry, and flavorful Mexican Rice at a restaurant and wondered how to make it at home, I’ve got you covered! This recipe comes straight from a dear family friend from Mexico. She’s one of those incredible cooks who just knows how much of everything to add without measuring. After a bit of trial and error, I finally nailed down the perfect balance of flavors and textures.
The secret to getting that perfect texture at home? Toasting the rice in oil before cooking it. Trust me, it makes all the difference! Now, anytime we make our Birria Tacos, Homemade Enchiladas, or Carne Asada Burritos, this authentic Mexican rice is a must-have on the side. It’s become a family favorite, and I can’t wait for you to try it too!
🩷 Emily
Key Ingredients

- Long Grain White Rice – The best rice choice for achieving that dry flavored rice.
- Vegetable Oil – Helps toast the rice to a golden brown for better flavor and texture. This is the most important part of getting Mexican Rice perfect. Avoid using olive oil, it can taste bitter when cooked at this high of temperature.
- Chicken Broth – You can also use beef broth or vegetable broth for a vegetarian option. Chicken bullion with the same amount of water can also be used.
- Tomato Sauce – Gives the rice that delicious tomato flavor. Tomato bouillon (caldo de tomate) can also be used. See the recipe notes for adaptation.
- Fresh Cilantro – Adds a pop of color and freshness. Stir in at the end so it doesn’t wilt.
(full recipe with ingredient amounts in recipe card below)
How to Make Restaurant-Style Mexican Rice

- Heat vegetable oil in a large saucepan over medium heat. Add the uncooked rice and stir frequently until it turns a light golden color. This step is essential for dry, fluffy, restaurant quality rice.

- Once the rice is toasted, stir in the garlic, salt, and cumin. Heat briefly until the garlic becomes fragrant. This allows the spice to bloom in the oil and evenly coat the rice.

- Carefully add the tomato sauce and chicken broth to the pan. Bring the mixture to a full boil. The liquid should fully cover the rice at this point.

- Reduce the heat to low and cover the pan with a tight-fitting lid. Let the rice simmer until all the liquid is absorbed and the rice is tender. Avoid lifting the lid or stirring while it cooks. This will release steam and affect the texture.

- Remove the pan from the heat, but keep it covered. Allow the rice to rest 5-10 minutes. The resting time allows the rice to finish cooking evenly.

- Remove the lid and gently fluff the rice with a fork to separate the grains. Stir in the chopped cilantro just before serving to add fresh flavor and color.

Common Mistakes and Quick Solutions
If your rice turns out mushy, sticky, or clumpy, don’t get discouraged! A lot of these common mistakes have simple solutions and can be solved in just a matter of minutes. Here are a few of the most common mistakes when making Mexican rice:
| 1. SKIPPING THE TOASTING STEP: I can’t emphasize this enough. Not toasting the rice before cooking results in sticky, unevenly cooked rice. Toasting the rice in a little bit of oil before cooking seals the starch in the rice. If skipped, rice will be sticky and clumpy. | ||
| Solution: Heat the oil in a large frying pan. Add the rice and stir constantly until the it’s a light, golden brown. This step coats the rice grains in oil keeping them separate and avoiding clumping. The hot oil also gives the rice a nuttier, richer texture and flavor. | ||
| 2. USING THE WRONG SAUCEPAN: Thin pans heat unevenly and cause the rice to burn on the bottom before it finishes cooking. | ||
| Solution: Use a sturdy, heavy-bottom saucepan to heat the rice evenly and to keep the rice absorbing the liquid at the right pace. | ||
| 3. LIFTING THE LID WHILE COOKING: Lifting the lid releases the steam built up in the pan which is essential for cooking the rice evenly. | ||
| Solution: Resist the urge to check on the rice until the cooking time is up. Peeking too early interferes with the steaming process and can result in dry, undercooked rice. | ||
| 4. WET, CLUMPY RICE: Rice sticks together in large clumps and is soggy. | ||
| Solution: Uncover the rice and let it rest a few minutes before fluffing. When fluffing, use a fork. Don’t stir the rice with a spoon. | ||
| 5. CRUNCHY RICE: Uncooked or unevenly cooked rice. | ||
| Solution: Heat 2-3 tablespoons of broth and add it to the rice. Cover the pan and steam for 5 more minutes. | ||
| 6. NOT LETTING THE RICE REST: Skipping the resting step can result in uneven texture. | ||
| Solution: Once the rice is done cooking, remove it from heat and let it sit, still covered, for 5-10 minutes. This allows the steam to redistribute through the rice, giving it a fluffier texture. After few minutes you can fluff the rice with a fork and get it ready to serve. |

Frequently Asked Questions
Rinsing rice removes excess starch and can help prevent clumping. For restaurant-style Mexican rice, rinsing is optional because toasting the rice seals in the starches and gives the rice a fluffy texture and nutty flavor with or without rinsing.
Yes, adding vegetables like peas, carrots, corn, or bell peppers can enhance the flavor and nutrition of your Mexican rice. Add these vegetables when you add the liquid to the rice so they can cook along with the rice.
According to Mahatma rice, there are two distinct differences.
1. Seasonings: Spanish rice is seasoned with saffron which gives it a bright yellow color, as well as a sweeter flavor. Mexican rice is seasoned with cumin and tomato based ingredients giving it a more reddish orange color, and a spicier flavor.
2. Texture: The texture of Spanish rice is more moist and clumps together. Mexican rice is more dry and fluffy.
Yes, Mexican rice can be made in an Instant Pot. For the best restaurant-style texture the rice still must be toasted before simmering. We have a great adaptation for Instant Pot Mexican Rice, perfect for when you’re short on time.
Yes! This recipe contains no gluten, I am celiac and this rice is a staple of mine.
Restaurants toast the rice in oil before cooking, use the correct amount of liquid, simmer without stirring, and let the rice rest before fluffing with a fork. Following this recipe exactly will achieve that same restaurant quality rice.
Pair It With a Mexican-Inspired Entree
I hope this Mexican Rice recipe becomes a staple in your home like it has in mine. It’s easy to make, full of flavor, and the perfect side dish for all your favorite Mexican meals. Give it a try and let me know in the comments how it turns out! 🇲🇽
Mexican Rice Recipe

Video
Ingredients
- 3 tablespoons vegetable oil
- 1 cup long grain rice, uncooked
- 1 teaspoon minced garlic
- 1/2 teaspoon kosher salt
- 1/2 teaspoon ground cumin
- 1/2 cup tomato sauce
- 14 ounces chicken broth, (see recipe notes)
- 3 tablespoons fresh cilantro, finely chopped
Instructions
- Heat oil in a large, heavy-bottomed saucepan over medium heat. Add the rice and stir constantly for 5-7 minutes, until the grains turn light golden and smell nutty. Do not rush this step. Toasting the rice is key to that restaurant-style texture.

- Add the garlic, salt, and cumin and stir for 30 seconds, just until fragrant.

- Carefully pour in the tomato sauce and chicken broth. Increase heat to medium-high and bring to a full boil.

- Once boiling, reduce heat to low, cover with a tight-fitting lid, and simmer for 20-25 minutes. Do not lift the lid or stir while the rice cooks.

- Remove from heat and let the rice rest for 5 minutes, still covered. Remove the lid and fluff the rice gently with a fork.

- Gently fold in the chopped cilantro. Serve immediately.

Notes
- This recipe uses tomato sauce + broth instead of tomato bouillon (caldo de tomate). To substitute with tomato bouillon, use 1 ½ teaspoons bouillon and reduce the salt to ¼ teaspoon and replace tomato sauce with ½ cup broth.
- Long-grain rice works best for that dry, restaurant-style texture. A short or medium grain will be softer with a stickier texture.
- If rice is still a little crunchy, add 2-3 tablespoons of HOT broth over the rice, cover, and steam for 5 more minutes.
- If rice is wet or clumpy, uncover and let it rest a few extra minutes before fluffing.
Nutrition
Nutrition information is automatically calculated, so should only be used as an approximation.
Love this recipe?
We want to hear from you! Please leave a review.




Delicious.
How big is a serving? Great recipe!! Live it!
1 serving is about 1/3 cup.
Perfect – I grilled some marinated chicken, added cheese and avocado and made a crazy good rice bowl.
Easy, simple and delicious! This is a great recipe, thanks.
I love this recipe, have used it multiple times. So easy and works every time, and the ability to increase the amounts is awesome. Thanks!
Love this recipe.
Am going to read further to see how to get more recipes such as refried beans and plantains.
Thanks
I stumbled across this recipe last year and made it. Since then, this is by far my husband’s most requested recipe. It’s definitely a keeper! Thanks so much!
My first time making Mexican rice I used my instant pot and another recipe. It wasn’t very good. I thought I’d try stove top and picked your recipe. It was perfect! I made as a side dish with tamales. The only thing I changed was I used the strained juices from my salsa chicken thighs mixed with a little tomato sauce and left 1/2 of a jalapeño on top while cooking. It came out delicious! Thank you!!
Word of caution, if you make the 3x batch all at the same time, the amount of oil is way too much. The rice is swimming in it and hardly toasts. The 9 Tbsps of oil get too hot and the garlic turns black as soon as it is added. Try making amaller batches if you need a huge amount of rice for 18+ people.
Can this be converted for an instant pot?
Absolutely the best!!! I make it all the time. Instead of tomato sauce, I use enchilada sauce. I also add a drained can of rot-tel, black olives and a can of drained black beans! It’s so good adding extras! I triple the batch and Mmmmmmmmm
it’s just about ready to serve!!!
I have made it 40-50 times already!! Most definitely a family favorite!!!
So glad to hear that you love it and keep coming back to make it! I’ll have to try your variations.
My favorite side dish for Mexican food. Highly recommend.
Best recipe for authentic restaurant style rice. I have served it on many occasions and everyone loves it.
Thank you!
Oh my lord. I have been searching for YEARS for a recipe that tastes like the rice served at my favorite restaurant in the city where I used to live. I can’t visit that restaurant very often now because it’s so far away. This is by far the closest in taste to the Mexican rice they serve there. And it is really easy to prepare! I rinsed the rice before toasting it and the end result is perfect with no mushiness. This is definitely going to be a staple for me!
Can I substitute vegetable broth for the chicken broth?
Sure!
I sub veggie broth and it’s great!
I followed this recipe exactly and it was perfect. By themselves, the ingredients are so basic but combined they are magic. I will never buy boxed Spanish rice again. As an added bonus, it was very easy to make
Have made this rice side a few times. First, it is simple to make. Second, it is delicious!
This is so easy to make and it’s my husband’s absolute favorite!!
This recipe didn’t work for me! I followed it closely and it turned out mushy (overcooked?). Also, maybe my chicken broth is more flavorful than some (I used a Kirkland Signature box)- but the recipe also tastes overly chickeny.
I am so sorry this didn’t work out for you. It sounds like you may have used too much of the chicken broth.
Caroline,
I feel your pain; this rice looks easy on paper, but it’s not. I hate mushy rice; maybe okay for sushi, but, first of all I think your tasting “chickeny” is actually salty; suggest you buy unsalted broth, or even better stock, which is flavored with bones; this way, you control the salt. Also, suggest you wash the rice; get rid of the starch coating; you can do this over a sieve, but you have to agitate the rice with you hands; do it until the water below looks clear, then let it dry about 30 minutes.
Secondly, I decided to be generous with the oil the rice is fried in; thinking it would help keep the grains separate; forget the recipe; double or triple it. Third, I started this in a cast iron dutch oven(cast iron), and for whatever reason; not a fan of tomato sauce; buzzed cherry tomatoes and tomato paste; poured into a measuring cup to control the ratio of liquid.
Finally, after sauteing the rice, adding the liquid, I tasted, then brought to a boil, turned off, put the dutch oven in a 350 degree oven; I like the oven because heat comes from all different directions; more even cooking.
Did 17 minutes, took of the lid; tasted; it was under-cooked. rehydrated with broth, covered, 5 minutes on stove; perfecto!
What am i doing wrong? Help. I made this years ago and loved it, but the last 2 times it’s mushy and crunchy? Not cooking long enough to a golden color or cooking too long? After 25 minutes, it’s still very wet and won’t fluff.
It sounds like you might need to rinse your rice before using! Rinsing the rice can help remove some of the starches that make your rice clumpy and not cooked through. Hope this helps!
Are you frying it in the oil long enough?
Are you cooking it at high enough temperature? When there is still liquid it should be an incredibly slow boil but should bubble just a tiny bit. Did you somehow use too much liquid? Otherwise I can’t imagine, even if you didn’t brown it long enough.
Hillary,
feel your pain; this rice looks easy on paper, but it’s not. I hate mushy rice; maybe okay for sushi, Also, suggest you wash the rice; get rid of the starch coating; you can do this over a sieve, but you have to agitate the rice with you hands; do it until the water below looks clear, then let it dry about 30 minutes.
Secondly, I decided to be generous with the oil the rice is fried in; thinking it would help keep the grains separate; forget the recipe; double or triple it. Third, I started this in a cast iron dutch oven(cast iron), and for whatever reason; not a fan of tomato sauce; buzzed cherry tomatoes and tomato paste; poured into a measuring cup to control the ratio of liquid.
Finally, after sauteing the rice, adding the liquid, I tasted, then brought to a boil, turned off, put the dutch oven in a 350 degree oven; I like the oven because heat comes from all different directions; more even cooking.
Did 17 minutes, took of the lid; tasted; it was under-cooked. rehydrated with broth, covered, 5 minutes on stove; perfecto!
Hilary,
I feel your pain; this rice looks easy on paper, but it’s not! I hate mushy rice; maybe okay for sushi, but not Mexican rice. First, I suggest you wash the rice; get rid of the starch coating; you can do this over a sieve, but you have to agitate the rice with you hands; do it until the water below looks clear, then let it dry about 30 minutes.
Secondly, I decided to be generous with the oil the rice is fried in; thinking it would help keep the grains separate; forget the recipe; double or triple it. Third, I started this in a cast iron dutch oven(cast iron), and for whatever reason; not a fan of tomato sauce; buzzed cherry tomatoes and tomato paste; poured into a measuring cup to control the ratio of liquid.
Finally, after sauteing the rice, adding the liquid, I tasted, then brought to a boil, turned off, put the dutch oven in a 350 degree oven; I like the oven because heat comes from all different directions; more even cooking.
Did 17 minutes, took of the lid; tasted; it was under-cooked. rehydrated with broth, covered, 5 minutes on stove; perfecto!