Thai-Style Roti Canai with Condensed Milk

Flaky, chewy, buttery pan-fried flatbread in the style of Thai street-stall roti. The dough is stretched paper-thin, coiled, rested, then flattened and griddled in ghee until crisp at the edges and layered inside. Finish with a drizzle of sweetened condensed milk.

Prep
40 min
Cook
16 min
Wait
2 hr 30 min
Total
3 hr 26 min
Makes
4 roti (1 per person)
Share

Steps

Before you start
  • Plan for about 3½ hours: most of that is resting time, which relaxes the gluten so the dough stretches paper-thin without tearing.
  • Melt the ghee for the dough and for oiling if it is solid, then let it cool until warm, not hot.
  • Oil your work surface, hands and a rimmed tray generously. The dough is soft and sticky, and oil is what lets you stretch it.
  • Have all the ghee, condensed milk and a wide spatula within reach before you start stretching, because the dough dries out quickly.
  1. Mix the dough

    • In a large bowl whisk the flour, salt and sugar (3 cups/375 g flour, 1 tsp salt, 1 tbsp sugar).
    • In a small bowl or jug whisk the egg, 2 tbsp condensed milk, ¾ cup (180 ml) lukewarm water and 3 tbsp (40 g) melted ghee.
    • Pour the wet mixture into the dry and stir with your hand or a spoon until no dry flour remains and a shaggy, sticky dough forms.
    + Show details

    Ready when: No dry flour remains and the dough looks shaggy and sticky.

    Tip: If the dough feels stiff rather than tacky, add 1–2 tbsp more water. Soft dough makes flakier roti.

  2. Knead until smooth

    • Turn the dough onto a lightly oiled surface and knead for 8 to 10 minutes, pushing with the heel of your hand and folding, until the dough is soft, smooth and elastic.
    • It should stay slightly tacky but not stick to your clean hands.
    • Use a little ghee on your hands instead of flour.
    + Show details

    Ready when: A poked dent springs back slowly and the surface looks smooth and satiny.

    Tip: Don't add extra flour while kneading, or the roti will turn tough.

  3. Portion and oil the balls

    • Divide the dough into 4 equal pieces of about 150 g each.
    • Roll each into a smooth ball by tucking the edges underneath.
    • Brush a rimmed tray or shallow container generously with ghee.
    • Roll each ball in about 1 tbsp of the oiling ghee so it is thickly coated, and set the balls in the tray so they don't touch.
    • Pour a little more ghee over the tops.
    + Show details

    Ready when: Each ball is smooth and glossy with a visible film of ghee all over.

    Tip: Keep roughly 3 tbsp (40 g) of the ghee back for frying later.

  4. First rest

    • Cover the tray tightly with plastic wrap or a lid so the surface can't dry out.
    • Leave at room temperature for 2 hours.
    • This relaxes the gluten, which lets you stretch the dough very thin.
    + Show details

    Ready when: Dough balls feel very soft and slightly spread out in the ghee.

    Tip: You can instead rest the covered tray in the fridge overnight; bring to room temperature 30 minutes before stretching.

  5. Stretch paper-thin

    • Generously oil a clean work surface (about 2 ft/60 cm square) and your hands.
    • Take one ball and press it flat into a disc with your fingertips.
    • Working from the center outward, pat and push it into a large, very thin square about 12 inches (30 cm) across.
    • Then lift the edge and gently stretch or slap it out until you can nearly see through it.
    • Small holes are fine.
    + Show details

    Ready when: The dough is translucent and you can see your work surface through it.

    Tip: If it springs back and resists, cover it and let it rest 5 minutes, then try again.

  6. Fold into coils

    • Pick up one edge of the thin sheet and fold or gather it toward the center in loose pleats, forming a long rope about 2 inches (5 cm) wide.
    • Roll the rope up into a tight snail-shaped coil and tuck the end underneath.
    • Place on the tray, cover, and repeat with the other 3 balls.
    + Show details

    Ready when: Each coil is a compact, round spiral with the end tucked underneath.

    Tip: The coiled layers are what create the flaky interior, so keep the spiral tight.

  7. Second rest

    • Cover the coils and rest for 30 minutes at room temperature.
    • They will relax and puff slightly, which makes them easy to flatten without squeezing out the layers.
    + Show details

    Ready when: Coils feel soft and slightly puffy.

  8. Flatten the coils

    • Heat a griddle or 12-inch (30 cm) skillet over medium heat for 3 minutes.
    • Meanwhile, using oiled hands, gently press one coil into a disc about 7 inches (18 cm) wide and ½ inch (1 cm) thick.
    • Do not use a rolling pin.
    + Show details

    Ready when: A drop of water sizzles and evaporates within a couple of seconds.

    Tip: Pressing gently keeps the layers separate. Rolling squashes them together.

  9. Pan-fry the roti

    • Add 2 tsp ghee to the hot pan and swirl.
    • Lay in one disc and cook for 2 minutes until the underside is golden with brown spots.
    • Drizzle a little more ghee on top, flip, and cook another 2 minutes until golden.
    • Cook one roti at a time, adding ghee between each, about 12 minutes in total.
    + Show details

    Ready when: Both sides are deep golden with brown spots and the edges look crisp.

    Tip: Lower the heat to medium-low if the surface browns before the inside cooks through.

  10. Crush and serve

    • Move the hot roti to a board.
    • Hold it between your hands and push the edges toward the center a few times (a gentle clap) to fluff up and break the layers.
    • Drizzle each with 1 tbsp condensed milk and sprinkle with sugar if you like.
    • Serve at once, whole or cut into pieces.
    + Show details

    Ready when: The roti looks ruffled and flaky with visible layers.

    Tip: Do this while still hot. As the roti cools it loses its crisp, flaky texture.

Good to know

Tips
  • Use more ghee than feels reasonable when oiling the dough balls and work surface. It prevents tearing and creates the layers.
  • Weigh the dough pieces so all roti are the same size and cook at the same rate.
  • Don't worry about small holes when stretching; the folding hides them.
  • For a savory version, skip the condensed milk topping and serve with chicken curry or dal.
Make ahead

"After oiling the dough balls in step 3, cover and refrigerate for up to 24 hours. Bring to room temperature for 30 to 45 minutes before stretching. Coiled, rested roti can also be frozen on a tray, then bagged, for up to 1 month; thaw in the fridge overnight before frying."

Storage & reheating

"Best eaten immediately. Keep cooked roti wrapped at room temperature for up to 4 hours, or refrigerate in an airtight container for up to 3 days. Freeze with parchment between layers for up to 2 months. Reheat in a dry skillet over medium heat for 1 to 2 minutes per side until hot and crisp, then re-crush to revive the layers."

Substitutions
  • ghee → neutral vegetable oil or melted unsalted butter. Oil gives crisp layers without the nutty flavor; butter browns faster, so lower the heat slightly.
  • all-purpose flour → bread flour. Gives a chewier roti and stretches even thinner; add 1 to 2 tbsp extra water.
  • sweetened condensed milk → honey or maple syrup. Use the same amount for drizzling; the dough itself still needs the condensed milk.
  • large egg → 3 tbsp extra water plus 1 tbsp extra condensed milk. The roti will be a little less rich and tender but still flaky.

More flatbreads

See all →

Find more like this

Cuisine
Thai
Method
Stovetop
Quick & Easy
Make Ahead

Reviews (0)