Rawon looks heavy because it is black, but the broth is water, keluak paste and beef stock, no coconut milk. A 200ml ladle is about 90 calories, most of that from beef fat that renders into the soup. The meat is the main event: 80g of diced brisket or shank at around 165 calories and 20g protein. That is a good ratio for a street soup.
The sides are where nasi rawon gets big. The plate of rice is 260. The telur asin (salted duck egg) that comes standard in Surabaya is about 120 calories, and it is fatty because it is a duck egg cured in salt. A kerupuk udang is 20 to 50 depending on size. Tempe goreng on the side is 95 a piece. A full Rp 25,000 to 35,000 nasi rawon komplit at a Surabaya warung is 670 to 750 calories.
The Rawon Setan style of late-night stalls uses bigger cuts and fattier meat, and a bowl runs around 350 rather than 290. Rawon buntut (oxtail) is fattier still, closer to 400 because oxtail has a lot of fat and gelatin attached.
Short bean sprouts (tauge pendek), sambal terasi and lime are the free part, and they are what make rawon taste like rawon. Load them on.