The pricing accuracy and pricing performance of local volatility models crucially depends on absence of arbitrage in the implied volatility surface: an input implied volatility surface that is not arbitrage-free invariably results in negative transition probabilities and/ or negative local volatilities, and ultimately, into mispricings. The common smoothing algorithms of the implied volatility surface cannot guarantee the absence arbitrage. Here, we propose an approach for smoothing the implied volatility smile in an arbitrage-free way. Our methodology is simple to implement, computationally cheap and builds on the well-founded theory of natural smoothing splines under suitable shape constraints. Unlike other methods, our approach also works when input data are scarce and not arbitrage-free. Thus, it can easily be integrated into standard local volatility pricers.