AbstractFish kills, often caused by low levels of dissolved oxygen (DO), involve with complex interactions and dynamics in the environment. In many places the precise cause of massive fish kills remains uncertain due to a lack of continuous water quality monitoring. In this study, we tested if meteorological conditions could act as a proxy for low levels of DO by relating readily available meteorological data to fish kills of grey mullet (Mugil cephalus) using a machine learning technique, the self-organizing map (SOM). Driven by different meteorological patterns, fish kills were classified into summer and non-summer types by the SOM. Summer fish kills were associated with extended periods of lower air pressure and higher temperature, and concentrated storm events 2–3 days before the fish kills. In contrast, non-summer fish kills followed a combination of relatively low air pressure, continuous lower wind speed, and successive storm events 5 days before the fish kills. Our findings suggest that abnormal meteorological conditions can serve as warning signals for managers to avoid fish kills by taking preventative actions. While not replacing water monitoring programs, meteorological data can support fishery management to safeguard the health of the riverine ecosystems.