Hydrocarbon recovery is significantly improved in heterogeneous systems by injecting viscoelastic surfactant solutions. These solutions retard the effect of preferential flow through so called ‘thief zones’ (high permeability regions). The viscoelastic fluid passively increases flow resistance in regions of high permeability thereby partially blocking thief-zones. The low permeability volume paths in these heterogeneous reservoirs are swept more efficiently since less of the injected flooding fluid is lost. The produced water cut is significantly reduced which increases the overall effectiveness of the recovery process. The solutions we used are self-regulating, making them universally applicable without extensive knowledge of the reservoir properties.