If you have a craving for a lively and satisfying street food classic, you’re going to love this Singapore Malaysian French Toast (Roti John) Recipe. This dish is a warm, egg-soaked baguette filled with savory ground meat, fragrant spices, and a crispy golden crust that quickly became one of my all-time favorites. Combining the richness of eggs with the punch of curry and the comforting texture of toasted bread, Roti John is a true celebration of Southeast Asian flavors. Whether you’re serving it for breakfast, lunch, or a delicious snack, this recipe brings both tradition and excitement to your kitchen table.

Ingredients You’ll Need
The beauty of this Singapore Malaysian French Toast (Roti John) Recipe lies in its simple yet essential ingredients. Each component plays a crucial role in giving the dish its iconic taste, texture, and vibrant appearance.
- 1/2 lb ground beef or chicken: Provides the hearty, protein-rich filling, adaptable to your preference.
- 1 small onion, finely chopped: Adds sweetness and depth to the meat mixture.
- 2 cloves garlic, minced: For a fragrant, aromatic base that wakes up the savory notes.
- 1 small green chili, finely chopped (optional): Gives a gentle, exciting kick for those who love spice.
- 1/2 teaspoon curry powder: Infuses the dish with warm, exotic Southeast Asian flavors.
- 1/4 teaspoon salt: Enhances all the ingredients naturally.
- 1/4 teaspoon black pepper: Adds a subtle spicy undertone to balance the flavors.
- 4 large eggs: The star of the show that soaks the bread, creating that irresistible custardy texture.
- 2 tablespoons milk or water: Lightens the egg mixture for a tender coating.
- 1 tablespoon soy sauce: Brings umami richness and slight saltiness.
- 2 soft baguettes or sandwich rolls, halved lengthwise: The perfect vehicle for holding all the delicious filling.
- 2 tablespoons oil or butter for frying: Ensures a golden, crisp outside with melt-in-your-mouth softness inside.
- Mayonnaise, sweet chili sauce, sliced cucumber, shredded lettuce, ketchup (optional): These toppings brighten and balance the savory flavors beautifully.
How to Make Singapore Malaysian French Toast (Roti John) Recipe
Step 1: Cook the Meat Mixture
Start by heating a skillet over medium heat and cooking your choice of ground beef or chicken along with finely chopped onion, garlic, and optional green chili. Season everything with curry powder, salt, and black pepper. Keep stirring and sauté until the meat is fully cooked and all the juices have evaporated, about 6 to 8 minutes. This step builds the rich, spiced foundation that makes Roti John so addictive. Once done, set the mixture aside to cool slightly.
Step 2: Prepare the Egg Mixture
In a large bowl, whisk together the eggs, milk or water, and soy sauce until smooth and well combined. The soy sauce brings a surprising depth of flavor that sets this French toast apart from all others. Once the meat mixture is cooled, mix it into the egg blend, ensuring every bit of savory goodness is incorporated evenly. This combination will soak into the bread and create that signature custard-like texture when cooked.
Step 3: Soak the Bread
Take your halved baguette or sandwich rolls and gently lay them cut-side down into the egg and meat mixture. Press lightly so the bread absorbs as much flavor and moisture as possible but don’t let it get soggy — about a minute is perfect. This soaking is crucial for achieving the moist, tender interior paired with a crispy crust after frying.
Step 4: Fry the Toast
Heat oil or butter in a large non-stick skillet or griddle over medium heat. Carefully place the soaked bread halves cut-side down into the hot pan. Cook for 2 to 3 minutes until golden brown and the egg is set, then flip and toast the other side for an additional 1 to 2 minutes. This cooking technique delivers a stunning balance of textures: crispy, golden outside and soft, flavorful inside.
Step 5: Slice and Serve
Remove the cooked Singapore Malaysian French Toast from the pan and slice it into convenient portions. Drizzle with creamy mayonnaise and sweet chili sauce, then add fresh cucumber slices and shredded lettuce either on the side or tucked inside the toast for extra crunch, freshness, and contrast. If you like, a dab of ketchup adds a familiar, sweet touch.
How to Serve Singapore Malaysian French Toast (Roti John) Recipe

Garnishes
The vibrant toppings take this dish from delicious to unforgettable. Mayonnaise’s creamy tang couples wonderfully with the sweet chili sauce’s spicy-sweet notes. Fresh cucumber and shredded lettuce give an irresistible crunch and cool balance to the warm, savory toast. Don’t shy away from a little ketchup if you want an extra layer of yummy sweetness.
Side Dishes
Roti John pairs beautifully with light, refreshing sides that complement its bold flavors. Try a crisp Asian-style salad, pickled vegetables, or even a simple fruit platter to add a burst of freshness. For an indulgent meal, pair it with hot, comforting bowls of soup or bowls of spiced dhal to really complete the Southeast Asian experience.
Creative Ways to Present
Presentation is part of the fun! Serve your Roti John sliced into finger-sized pieces on a vibrant platter with dipping sauces arranged neatly on the side. Wrap smaller portions in parchment paper for a casual street food vibe, or stack the sandwich halves high with lettuce and cucumber to create irresistible layers of color and texture. Add sprigs of fresh cilantro or chopped spring onions as a final flourish for a professional look with zero fuss.
Make Ahead and Storage
Storing Leftovers
If you have leftovers, place the Roti John slices in an airtight container and refrigerate. They keep well for up to 2 days, making them perfect for a quick snack or lunch the next day. Just keep the garnishes separate until ready to serve to preserve their freshness.
Freezing
This sandwich freezes beautifully. Wrap each portion tightly in plastic wrap and place them in a freezer-safe container or bag. They will last up to one month in the freezer, allowing you to enjoy this flavorful treat whenever hunger strikes.
Reheating
Reheat frozen or refrigerated Roti John in a toaster oven or skillet over medium heat to retain that crispy exterior and warm, tender inside. Avoid microwaving if you want to keep the delightful crunch—just a few minutes on each side should do the trick.
FAQs
Can I use other types of meat for Singapore Malaysian French Toast (Roti John) Recipe?
Absolutely! While ground beef or chicken are traditional, you can substitute with ground lamb, turkey, or even canned tuna for a different but equally delicious version. Vegetarian versions with finely chopped mushrooms or plant-based meat substitutes also work wonderfully.
Is the green chili necessary?
The green chili is optional and adds a gentle heat that highlights the curry powder’s flavor. If you prefer milder dishes, simply omit it or reduce the amount based on your spice tolerance.
What kind of bread works best?
Soft baguettes or sandwich rolls with a slightly crusty exterior and tender crumb are ideal. They soak up the egg mixture just right and hold the filling well without becoming too soggy.
Can I make this recipe vegan?
You can adapt the recipe by using plant-based meat alternatives, vegan eggs, and dairy-free milk. Just keep in mind the texture might differ slightly, but the core flavors can still shine with the right seasoning.
How can I add more flavor to the meat mixture?
For an extra punch, try adding a splash of oyster sauce or a pinch of smoked paprika. Fresh herbs like chopped cilantro or parsley added after cooking can also brighten the dish.
Final Thoughts
This Singapore Malaysian French Toast (Roti John) Recipe is more than just a sandwich; it’s a comforting, flavorful celebration of street food culture that you can easily bring into your home kitchen. The combination of spiced meat, custardy eggs, and crispy bread creates a symphony of textures and tastes that’s utterly irresistible. Don’t hesitate to try this recipe—once you do, I promise it will become a beloved favorite just like it has for me and countless others.
Print
Singapore Malaysian French Toast (Roti John) Recipe
- Prep Time: 15 minutes
- Cook Time: 15 minutes
- Total Time: 30 minutes
- Yield: 4 servings
- Category: Main Course
- Method: Stovetop
- Cuisine: Singaporean, Malaysian
- Diet: Halal
Description
Singapore Malaysian French Toast, also known as Roti John, is a delicious Southeast Asian street food favorite. This savory sandwich features a flavorful spiced ground meat and egg mixture soaked into soft baguette halves and pan-fried until golden and crispy. Served with mayonnaise, sweet chili sauce, fresh cucumber, and shredded lettuce, it makes for a satisfying and hearty main course perfect for breakfast, lunch, or dinner.
Ingredients
Main Ingredients
- 1/2 lb ground beef or chicken
- 1 small onion, finely chopped
- 2 cloves garlic, minced
- 1 small green chili, finely chopped (optional)
- 1/2 teaspoon curry powder
- 1/4 teaspoon salt
- 1/4 teaspoon black pepper
- 4 large eggs
- 2 tablespoons milk or water
- 1 tablespoon soy sauce
- 2 soft baguettes or sandwich rolls, halved lengthwise
- 2 tablespoons oil or butter for frying
Topping and Serving
- Mayonnaise
- Sweet chili sauce
- Sliced cucumber
- Shredded lettuce
- Ketchup (optional)
Instructions
- Cook the Meat Mixture: In a skillet over medium heat, sauté ground meat with chopped onion, minced garlic, green chili (if using), curry powder, salt, and black pepper. Cook for 6–8 minutes until the meat is fully cooked and the moisture has evaporated. Remove from heat and let it cool slightly.
- Prepare the Egg Mixture: In a large bowl, whisk together eggs, milk or water, and soy sauce until fully combined. Add the cooled meat mixture and stir well to incorporate.
- Soak the Baguette: Lay the baguette halves cut-side down into the egg and meat mixture, pressing slightly to ensure the filling sticks to the bread. Let the baguette soak for about 1 minute to absorb the flavors.
- Pan-Fry the Sandwich: Heat oil or butter in a large non-stick skillet or griddle over medium heat. Carefully place the soaked baguette halves cut-side down into the pan. Cook for 2–3 minutes until the bread is golden and the egg mixture is set on the bottom. Flip and cook the other side for an additional 1–2 minutes until toasted and crisp.
- Serve: Remove the toasts from the pan and slice into portions if desired. Drizzle with mayonnaise and sweet chili sauce. Serve warm with freshly sliced cucumber and shredded lettuce either on the side or tucked inside the sandwich. Optionally add ketchup for extra flavor.
Notes
- Ground beef or chicken can be substituted with tuna for a different protein option.
- For a vegetarian version, you can replace the meat with a mix of sautéed vegetables.
- Adjust the amount of green chili to increase or decrease the spiciness according to your preference.
- Best served warm and crispy right out of the pan for optimal texture and flavor.

