White steam, with beef and lemongrass in it
Split a stalk of lemongrass into the pot where the beef is simmering. Up to that point, it is still a clear meat broth. But when the coconut milk and milk go in at the end, the steam turns round and white all at once. Not curry, not stew: the beef stock and spices wrapped in a milky white. Soto betawi is a slightly luxurious beef soup that comes out with white rice at eateries in Jakarta.
Soto betawi is a dish tied to the food culture of the Betawi people who live around Jakarta, Indonesia's capital. Soto means a soup with meat or vegetables, and Betawi refers to Jakarta's native culture. Among Indonesian sotos, soto ayam is a yellow soup of chicken and turmeric. Soto betawi differs in using beef and offal and making a thick white soup from coconut milk, milk and aromatic spices.

What people worry about in a home kitchen is whether to include offal and how to handle the milk and coconut milk. Locally, some places mix in not only beef but also tripe, lung, intestine and tendon. But if you go hunting for offal on your first try, you will stall at shopping. This article uses beef shank or chuck and keeps the aroma and the texture of the white soup.
It is written Soto Betawi in Indonesian. Some places lean on milk, others on coconut milk, and some make a clearer soup, so even at home the richness varies.
Jakarta's soto is not only white
The Indonesian Ministry of Tourism presents soto betawi as a representative dish of Jakarta, combining beef or offal, coconut milk, milk, aromatic spices, tomato, spring onion and emping. At local eateries, beef is submerged in the white soup and served with fried potatoes, tomato, fried shallots, lime, sambal and sweet soy sauce.

| Dish compared | Color of the soup | Main ingredients | What to keep at home |
|---|---|---|---|
| Soto Betawi | White and rich | Beef, milk, coconut milk | The milky soup, fried potatoes, tomato, emping |
| Soto Ayam | Yellow and clear | Chicken, turmeric | The aroma of lemongrass and turmeric |
| Rawon | Black | Beef, keluak | The black soup and beef stock |
| Rendang | Braise with little liquid | Beef, coconut, spices | The reduced, concentrated aroma |
Even with the same beef, rendang (in Japanese) is a dish where the liquid is cooked off so the aroma clings to the meat. Soto betawi is the opposite: you sip the soup. The beef is tender enough to fall apart, and the soup is rich but drinkable. To aim for that, do not boil hard to reduce; make the beef stock over low heat and add the dairy last.
Ingredients: enough for a white bowl to be the main dish
This makes 4 servings, enough to be a main dish with white rice. Beef shank gives a richer stock and chuck gives a softer finish. Beef belly alone tends to be heavy with fat, so for a first batch shank or chuck is recommended.

This dish contains beef, dairy, coconut and possibly nuts. If you substitute cashews for candlenuts, do not use them for anyone with a nut allergy. Commercial fried shallots, sambal and kecap manis may contain wheat or soy depending on the product.
If you use tripe, lung or intestine, buy it already prepped separately from the beef, and add it after blanching it thoroughly. For a first home attempt, it fails less if you learn the heat for the white soup with beef alone first.
Shopping: look only at the ingredients that change the local taste
Beef, potatoes, tomatoes and milk are easy to buy anywhere, so they need no special sourcing. What is worth seeking out at Asian groceries or online is the coconut milk that forms the base of the white soup, the kecap manis that adds sweetness at the table, and the cumin seeds that shape the outline of the aromatic paste. Sambal can be homemade, but if you haven't yet made the sambal substitute recipe, store-bought is easier.
Coconut milk decides the whiteness and roundness of soto betawi. Leftover coconut milk can go into nasi uduk or arem-arem (in Japanese).
Kecap manis, just 1 tsp dropped into the soup, adds a sweetness like dark brown sugar. It also works in sate ayam and nasi goreng (in Japanese), so it suits people who will keep cooking Indonesian food.
Use only a little cumin seed. Ground works too, but lightly crushing the seeds before frying puts an earthy aroma between the beef and coconut milk and keeps the white soup from getting too sweet.
Nutrition at a glance
| Per serving (approx.) | Value |
|---|---|
| Energy | about 610 kcal |
| Protein | about 32 g |
| Fat | about 39 g |
| Carbohydrate | about 33 g |
| Fiber | about 3 g |
| Salt equivalent | about 3.2 g |
Adding a bowl of white rice raises the carbohydrates and calories. If the fat bothers you, avoid beef belly and focus on shank. Cutting back too far on milk and coconut milk loses the white roundness of soto betawi, so adjust first with the fat of the meat and the amount of fried potato.
Method: keep it from splitting and make the beef tender
Failures with soto betawi gather into three: tough beef, a raw-tasting aromatic paste, and a white soup that splits. Blanch the beef to remove its off smell, simmer the main cook over low heat, and add the dairy last without boiling hard.
The most important thing for a milky soup is not to boil it hard. Small bubbles at the edge of the pot, steam rising, and the whole thing moving smoothly when stirred with a spatula: stop at that state. If it keeps boiling, a large ring of oil floats to the surface and the texture turns grainy.
Branch points for getting closer to the original in a home kitchen

| Ingredient in doubt | Closer to the original | Practical option at home | Direction to avoid |
|---|---|---|---|
| Beef | Shank, chuck and offal mixed | Start with shank or chuck only | Making it with fatty beef belly alone |
| Milk | A white soup with milk | Add whole milk at the end | Boiling low-fat milk hard |
| Coconut | Rich santan | Canned coconut milk | Diluting with a coconut beverage |
| Candlenuts | Kemiri | A small amount of cashews | Using a lot of sesame paste |
| Daun salam | Indonesian salam leaf | A little bay leaf | Adding several bay leaves and making it Western |
| Emping | Melinjo crackers | Prawn crackers, thin rice crackers | Substituting thick potato chips |
The substitutes to be most careful about are milk and coconut milk. You can make it with only one, but milk alone is light, and coconut milk alone is sweet and heavy. At home, it is practical to start with half and half and adjust toward your taste next time.
Emping is a thin cracker made from melinjo nuts, with a slight bitterness. It is hard to find in some places, so if you have none, make up the crunch with thin rice crackers or prawn crackers. Shallow-frying the potatoes also reinforces the texture on days when there is no emping.
What goes wrong: tough, thin, splitting
| Problem | Main cause | Fix |
|---|---|---|
| Tough beef | Not simmered long enough, or the heat was too high and the liquid cooked off | Add 100 ml water and extend over low heat in 10-minute steps |
| Thin soup | The main simmer after blanching was too short | Return the beef and add 10 minutes over low heat before adding the dairy |
| Soup splits | Milk and coconut milk were boiled hard | Turn off the heat and stir slowly; next time add them last over low heat |
| Tastes like curry | Too much cumin or coriander | Next time return to 1/3 tsp cumin, centered on nutmeg and white pepper |
| Too heavy | Too much beef belly and coconut milk | Focus on shank and increase the milk slightly |
| Weak aroma | Bumbu under-fried, lemongrass not crushed | Fry the aromatic oil 3 more minutes over medium-low heat and return it to the soup |
When the flavor is vague, squeeze in a little lime before adding more salt. The white soup has a round mouthfeel from fat and dairy, so sourness suddenly gives it an outline. Rather than mixing sambal into the pot, add it in the bowl, which also lets each family member adjust the heat.
Storage and the next day

When storing, keep the soup and beef together, and separate the potatoes, tomato, fried shallots and emping. Putting everything together makes the potatoes fall apart, the emping go limp, and the tomato water dilute the flavor. Plan on 2 days refrigerated and 3 weeks frozen for the soup and beef.
Reheat in a small pot over medium-low heat. Refrigerated soup forms a white film as the fat solidifies, but it returns when warmed slowly. In a 600 W microwave, heat one bowl for 2 minutes, stir, and add 30 seconds. Boiling hard makes it split easily, so stop at small bubbles at the edge of the pot.
The next day, pouring it over rice as soto rice is easy. If it is too strong, add 2 tbsp water or milk and squeeze in a little lime. To extend it into an Indonesian spread, rather than the sweet-spicy mie goreng, it is lighter to pair it with gado-gado, to which you can add vegetables, or nasi uduk, the fragrant rice.
FAQ
Can I make it without milk?
Yes. In that case add 400 ml coconut milk and 100 ml water, and finish it as a slightly heavier soup. However, the "white yet light" mouthfeel typical of soto betawi comes more easily with milk. If you are avoiding dairy, use only coconut milk and add a little more lime and tomato to cut the heaviness.
Is it not authentic without offal?
Beef alone is perfectly enjoyable. Many places locally include offal, but for the first home attempt it matters more to keep the combination of beef, white soup, fried potatoes, tomato, emping and lime. Next time, start by adding a small amount of prepped tripe or beef tendon.
If the coconut milk splits, do I have to throw it away?
No need. Turn off the heat, stir slowly with a spatula, and add 2 tbsp milk a little at a time, and the appearance returns somewhat. It may not return to completely smooth, but it is edible. Next time, do not boil after adding the dairy; stop at small bubbles at the edge of the pot.
Do the potatoes have to be fried?
Shallow-frying holds them together best. Boiled potatoes alone fall apart easily in the soup and give a weak texture. To reduce the oil, microwave 2 cm potato cubes at 600 W for 3 minutes, toss with 2 tsp oil and pan-fry over medium heat for 4 minutes.
What Indonesian dishes go with it?
On the same table, rather than comparing it side by side with soto ayam, making them on separate days shows the difference. For a side, gado-gado; for the staple, nasi uduk; and for a grilled dish, sate ayam connect easily.
Sources
- Ministry of Tourism, Republic of Indonesia, "Soto Betawi: Eksplorasi Nikmat Menu Legendaris di Jakarta", accessed 29 May 2026, https://www.indonesia.travel/gb/en/travel-ideas/gastronomy/soto-betawii/
- Kompas.com, "Resep Soto Betawi Susu untuk 6 Porsi, Tetap Campur dengan Santan", accessed 29 May 2026, https://www.kompas.com/food/read/2023/07/22/171243075/resep-soto-betawi-susu-untuk-6-porsi-tetap-campur-dengan-santan
- Taste of Nusa, "Soto Betawi (Jakarta Beef Soup)", accessed 29 May 2026, https://tasteofnusa.com/soto-betawi-jakarta-beef-soup/
- So Yummy Recipes, "Soto Betawi: Indonesian Beef Stew From Jakarta Region", accessed 29 May 2026, https://soyummyrecipes.com/soto-betawi-beef-soup/
- Butter Joy Kitchen, "Authentic Soto Betawi (Beef Coconut Soup)", accessed 29 May 2026, https://butterjoykitchen.com/jakarta-beef-soup-a-k-a-soto-betawi/











