Soto Betawi (Jakarta Beef Coconut Soup)

Soto Betawi is Jakarta's own take on the great Indonesian soto tradition, and it's a proper indulgence, tender beef simmered until soft in a broth made rich and creamy with coconut milk and sometimes a splash of evaporated milk too. Unlike the lighter, clearer sotos found elsewhere in the archipelago, this one leans into richness, warmed through with cumin, coriander and a hint of nutmeg.

Traditionally it's built on beef offal as well as beef, but this version keeps things simple and approachable with beef shin or brisket, which turns beautifully tender after a long simmer and soaks up all that spiced coconut broth. Chunks of potato go in towards the end, along with a scatter of fried shallots and a squeeze of lime to cut through the richness.

It's the sort of soup you want on a cool evening, ladled into a big bowl with rice on the side, or with the rice stirred straight through. Either way, keep the sambal and extra lime wedges close by.

Servings
5
Prep Time
20
mins
Cook Time
110
mins
Ingredients
18
Total Time
130
mins

Pantry bits

  • Large heavy-based pot
  • Blender or mortar and pestle
  • Frying pan for the spice paste
  • Ladle

Ingredients

  • 800 g beef shin or brisket, cut into large chunks
  • 1.5 litres water
  • 2 bay leaves
  • 2 stalks lemongrass, bruised
  • 4 kaffir lime leaves
  • 6 shallots, peeled
  • 4 cloves garlic, peeled
  • 3 candlenuts (or macadamias)
  • 2 tsp coriander seeds
  • 1 tsp cumin seeds
  • 2 cm turmeric, sliced
  • 1/2 tsp ground nutmeg
  • 2 tbsp vegetable oil
  • 400 ml coconut milk
  • 2 potatoes, peeled and cubed
  • Salt and white pepper, to taste
  • Fried shallots, to serve
  • Lime wedges and sliced tomato, to serve

Instructions

  1. Place the beef in a large pot with the water, bay leaves, lemongrass and kaffir lime leaves. Bring to the boil, skim any scum, then reduce to a gentle simmer and cook covered for 1.5 hours, until the beef is tender. Reserve the broth.
  2. Meanwhile, blend the shallots, garlic, candlenuts, coriander seeds, cumin seeds and turmeric into a smooth paste.
  3. Heat the oil in a separate pan and fry the spice paste with the nutmeg for 5-6 minutes until fragrant.
  4. Stir the fried spice paste into the pot of beef and broth, then add the coconut milk and potatoes.
  5. Simmer gently, uncovered, for 20-25 minutes, until the potatoes are tender and the broth has taken on a rich, creamy colour. Season with salt and white pepper.
  6. Ladle into bowls, scatter with fried shallots and sliced tomato, and serve with lime wedges and steamed rice on the side.

Never miss a recipe

Join thousands of subscribers and get our best recipes delivered to direct to your inbox!

Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.