Dark Mode Light Mode

Homemade Beef Roti Canai: Crispy, Flavorful Street Food You Can Make At Home

Homemade Beef Roti Canai: Crispy, Flavorful Street Food You Can Make At Home Homemade Beef Roti Canai: Crispy, Flavorful Street Food You Can Make At Home

Homemade Beef Roti Canai: Crispy, Flavorful Street Food You Can Make At Home

Golden crispy homemade beef roti canai sliced open showing juicy beef filling

Let me tell you, a few weeks ago I stopped by my local Malaysian street food stall and ordered a beef roti canai on a total whim. I’d had plain roti before, but never the stuffed beef version, and I was absolutely blown away. The crispy, flaky outer crust, the perfectly seasoned, tender beef inside, and that little kick of chili? I ate the whole thing in 2 minutes flat and immediately went home to figure out how to make it myself.

After a couple of test runs, I finally nailed the recipe, and guess what? Using basic store-bought flour (I swear by *Fulinmen all-purpose flour, it makes the fluffiest, most fragrant dough ever) my homemade version tastes even better than the restaurant one. Today I’m walking you through every single step, no fancy equipment required. Even if you’ve never made roti before, you’ve got this!

What You’ll Need For Homemade Beef Roti Canai

First things first, let’s gather all our ingredients. I broke this down into two simple parts: the soft, flaky roti dough, and the juicy beef filling. You probably already have most of these staples in your pantry, which is a huge win!

Full Ingredient List

    • For the roti dough: 260g all-purpose flour, 130ml cold water, 1g fine salt, 10ml vegetable oil, 1g active dry yeast
    • For the beef filling: 200g ground beef (or finely chopped lean beef, whatever you have on hand!), 10ml sesame oil, 5ml ginger-garlic cooking wine, 10ml light soy sauce, 1g ground black pepper, 5g cornstarch, 3g fine salt, 3g chili paste, 1g freshly cracked black pepper, 1 handful fresh chopped scallions, 1 tbsp white sesame seeds

Pro tip: If you don’t have chili paste on hand, you can use sriracha or even a pinch of red pepper flakes for that same subtle spicy kick. No judgment!

Step 1: Prep All Your Ingredients First

All ingredients laid out on a kitchen countertop ready for mixing

I always like to get all my ingredients out and measured before I start cooking. It cuts down on panic mid-recipe, trust me. Grab a small bowl for the beef filling, measure out your flour and yeast, and chop up your scallions ahead of time. This way, when you’re in the middle of kneading dough, you don’t realize you forgot to grab the soy sauce and have to stop everything.

Step 2: Mix Up Your Roti Dough

Bread machine bowl with flour, water, oil, salt, and yeast being mixed together

Here’s the easy part: instead of kneading the dough by hand for 10 minutes (which my arms definitely hate), I use a bread machine to do all the work. Throw your 260g of flour, 1g of yeast, 1g of salt, 10ml of vegetable oil, and 130ml of cold water straight into the bread machine bowl. You don’t need to mix anything first, just dump it all in!

If you don’t have a bread machine, no stress! Just mix all the dry ingredients in a large bowl first, then slowly pour in the water and oil, and knead the dough by hand for 8-10 minutes until it’s smooth and elastic. Cover it with a damp towel and let it rest for 10 minutes, then you’re good to go.

Step 3: Let The Dough Ferment

Bread machine display showing the dough fermentation cycle running

Pop your bread machine onto the dough fermentation setting, and let it run for about an hour. I usually do this while I’m prepping the beef filling, so the time passes super quickly. The dough will double in size and feel light and fluffy when it’s ready!

If you’re hand-kneading, just cover the bowl with a damp paper towel and let it sit in a warm spot (like inside a turned-off oven with the light on) for 60-90 minutes until it’s puffed up.

Step 4: Marinate The Beef Filling

Bowl of ground beef with soy sauce, wine, and spices being mixed together

While your dough is rising, let’s make the beef filling! Take your 200g of ground beef and put it in a medium mixing bowl. Add in the sesame oil, ginger-garlic cooking wine, light soy sauce, ground black pepper, cornstarch, salt, and chili paste.

Mix everything together really well with a spoon or your hands (gloves are optional, but they keep your hands clean!). Once all the ingredients are fully combined, cover the bowl with plastic wrap and let it marinate in the fridge for at least 2 hours, or even overnight if you have time. The cornstarch will help the beef stay juicy, and the flavors will meld together perfectly.

Quick side note: If you’re short on time, you can skip the full 2 hours and just let it sit for 30 minutes, but the longer you marinate, the more flavorful the filling will be!

Bowl of fully mixed marinated ground beef sitting on a countertop

Step 5: Punch Down The Dough And Shape It

Person punching down a risen ball of roti dough on a floured countertop

Once your dough has finished fermenting, take it out of the bread machine (or take off the damp towel). Punch down the dough really hard to release all the trapped air bubbles. This step is super satisfying, honestly. I always end up making a little too much noise doing this, but my roommate just laughs and joins in.

Transfer the dough to a lightly floured countertop, and roll it out into a big log shape. Then, cut it into 6 equal small dough balls. I like to use a dough scraper to make clean cuts, but a sharp knife works too!

Person using a rolling pin to flatten a small dough ball on a floured counter

Take each small dough ball and roll it out into a thin circle, about 6 inches wide. Don’t worry if it’s not perfectly round, roti is supposed to look a little rustic!

Step 6: Stuff The Roti And Seal It Up

Six equal small dough balls lined up on a floured countertop

Okay, now the fun part: stuffing! Take one of your flattened dough circles and spoon about 2 tablespoons of the marinated beef into the center. Sprinkle on a little bit of chopped scallions, freshly cracked black pepper, and a pinch of white sesame seeds.

Now, gather up the edges of the dough like you’re wrapping a dumpling, and pinch them together tightly to seal in all the beef and juices. Make sure you don’t leave any gaps, or the filling will leak out while you’re frying it, and that’s a messy hassle you don’t need.

Stuffed beef roti dough ball being shaped on a floured countertop

Once it’s sealed, gently pat it down with your hands to flatten it back into a thin circle again. Try not to press too hard, or you’ll squeeze the beef filling out the sides. I usually go for a 7-8 inch wide circle, it’s the perfect size for a single serving.

Step 7: Fry Your Beef Roti To Perfection

Person placing a stuffed roti dough circle into a hot pan with oil

Heat up a thin layer of vegetable oil in a non-stick skillet over medium-low heat. You don’t need a ton of oil, just enough to coat the bottom of the pan and keep the roti from sticking. Once the oil is hot (you can test it by dropping a tiny bit of dough in, it should sizzle right away), carefully place your stuffed roti into the pan.

Let it fry for about 3-4 minutes on the first side, until the bottom is golden brown and crispy. You’ll see little bubbles forming on the surface, that’s how you know it’s getting crispy!

Person flipping a beef roti in a hot skillet with a spatula

Then, use a spatula to flip it over and fry the other side for another 3-4 minutes, until both sides are evenly golden brown and crispy. Don’t crank the heat up too high, or the outside will burn before the inside of the roti and the beef are fully cooked!

Golden crispy beef roti frying in a skillet with bubbly crust

Step 8: Drain And Serve Your Homemade Beef Roti

Cooked beef roti sitting on a paper towel lined plate to drain excess oil

Once both sides are perfectly crispy, transfer the roti to a plate lined with paper towels to drain off any excess oil. This only takes a minute, but it makes a huge difference in how your roti tastes—no greasy, soggy bites here!

Person slicing a cooked beef roti into small pieces with a sharp knife

Then, grab a sharp knife and slice the roti into 4-6 small pieces, just like the street food stall does. This makes it easier to eat, and it lets everyone see that juicy, flavorful beef filling inside!

Final Results: Way Better Than Takeout

Sliced homemade beef roti canai served on a wooden plate with a side of chili sauce

I’m not gonna lie, the first time I made this, I was a little nervous that it wouldn’t turn out like the restaurant version. But when I took that first bite? Oh wow. The roti crust was crispy, flaky, and had that amazing nutty, fragrant flavor from the Fulinmen flour, and the beef was so juicy and perfectly seasoned with just the right amount of spice. My partner and I ate all 6 rotis in one sitting, and we didn’t even share with our cat (sorry, Mr. Whiskers, maybe next time).

Close up shot of sliced beef roti showing the tender beef filling inside the flaky crust
Two plates of homemade beef roti canai sitting on a dining table ready to eat
Close up shot of juicy ground beef filling spilling out of a sliced roti canai

You can serve this with a side of extra chili sauce, a dollop of yogurt, or even a simple cucumber salad to cool down the spice. It’s perfect for breakfast, lunch, a quick dinner, or even as a snack when you’re craving something savory and crispy.

I’ve already made this recipe three times in the past two weeks, and I don’t see myself stopping anytime soon. It’s so much cheaper than ordering takeout, and you get to control exactly how much spice and filling you want. Win-win!

Person taking a bite of homemade beef roti canai with a fork

If you try this recipe, let me know how it turns out! Tag me on social media or leave a comment below, I’d love to see your homemade beef rotis. And if you have any tips or tricks for making even better roti, I’m all ears—this home cook is always looking to improve!

Stacked plates of finished homemade beef roti canai ready to be enjoyed

Previous Post
Steamed Pumpkin Cake: Easy, Healthy, No-Fail Recipe for Soft & Fluffy Results

Steamed Pumpkin Cake: Easy, Healthy, No-Fail Recipe for Soft & Fluffy Results

Next Post
Healthy Creamy Pea Soup (No Oil, Low-Cal) – Easy 13-Step Recipe for Weight Loss

Healthy Creamy Pea Soup (No Oil, Low-Cal) – Easy 13-Step Recipe for Weight Loss