Busy bus routes often suffer from buses not arriving at regular intervals but in bunches at bus stops. In this paper we study this bus bunching phenomenon and address it by a combination of data-driven headway prediction and dynamic holding strategies, which allow to modulate buses’ dwell times at stops to reduce the headway deviation. We formulate time headways as time series and compare several prediction methods by testing on data from a busy bus route in Dublin. Furthermore we review and extend an analytical model of an artificial bus route and discuss stability properties and dynamic holding strategies using both data available at the time and predicted headway data. In a numerical simulation we illustrate how the combination of two simple concepts lead to a promising strategy to reduce bus bunching.