Coto looks like soto but the broth is thicker for a reason. It is cooked with ground roasted peanuts and the water from washing rice, which is why it is cloudy and slightly nutty, and why a 200ml ladle is about 100 calories against 70 for soto ayam broth. Not coconut milk though, so it is nowhere near soto Betawi at 135 per ladle.
The meat is the main thing. A bowl of coto campur has around 80g of beef, tripe, lung and liver, about 170 calories and 20g protein. Coto daging (meat only) is a bit leaner. Paru (lung) is the fattiest cut in the mix because it is often fried before it goes in. The 25g protein in a bowl is genuinely good for a Rp 20,000 to 30,000 street soup.
The trap is the ketupat. Nobody eats coto without buras or ketupat, and the standard is two. Each one is about 145 calories, so the real meal is 580, not 290. Order 'coto daging plus dua ketupat' and you are at 580 with 30g protein, which is still a decent lunch. Order the coto campur with three ketupat, the extra bowl and the perkedel, and you are near 900.
Bawang goreng and the tauco sambal on the table are about 30 calories a spoon combined. The jeruk nipis is free and it is what cuts the richness, so use it.