The paper investigates compound flooding from waves, sea surge and river flow in northern Jakarta, Indonesia, which is a global hotspot of flooding, by combining process-based coastal and river models. The coastal hydrodynamic modelling of Jakarta Bay in Indonesia shows that coastal storms can lead to a substantial increase in sea water level due to wind and wave setup in the nearshore areas, including Muara Angke river inlet. The compound flood hazard from a range of flood scenarios was simulated and analysed. The results reveal that low-lying areas around the river inlet are prone to flooding even during regular, low-intensity storm events, while rarer storms caused extensive floods. Floods were not caused by direct overwashing of sea defences but by overspill of the banks of the river inlet due to high sea water level caused by wind set up, wave setup, and sea surge obstructing the drainage of the river and elevating its water level during storms. We also found that the sea level rise combined with rapid land subsidence will inundate the existing coastal flood defences during storms in future. The majority of the city will be below mean sea level by 2100. The overflow of existing coastal defences will lead to extensive flooding in northern, western, and eastern Jakarta unless the defences are upgraded to keep up with future sea level rise.