We present a method to include colour-suppressed effects in the Mueller dipole picture. The model consistently includes saturation effects both in the evolution of dipoles and in the interactions of dipoles with a target in a frame-independent way. When implemented in a Monte Carlo simulation together with our previous model of energy--momentum conservation and a simple dipole description of initial state protons and virtual photons, the model is able to reproduce to a satisfactory degree both the gamma*-p cross sections as measured at HERA as well as the total p-p cross section all the way from ISR energies to the Tevatron and beyond.