The carousel model of pulsar emission attributes the phenomenon of subpulse drifting to a set of discrete sparks located very near the stellar surface rotating around the magnetic axis . Here , we investigate the subpulse drifting behaviour of PSR B0031 - 07 in the context of the carousel model . We show that B0031 - 07 ’ s three drift modes ( A , B , and C ) can be understood in terms of a single carousel rotation rate if the number of sparks is allowed to change by an integral number , and where the different drift rates are due to ( first-order ) aliasing effects . This also results in harmonically-related values for P _ { 3 } ( the time it takes a subpulse to reappear at the same pulse phase ) , which we confirm for B0031 - 07 . A representative solution has [ n _ { A } ,n _ { B } ,n _ { C } ] = [ 15 , 14 , 13 ] sparks and a carousel rotation period of P _ { 4 } = 16.4 P _ { 1 } . We also investigate the frequency dependence of B0031 - 07 ’ s subpulse behaviour . We extend the carousel model to include the dual effects of aberration and retardation , including the time it takes the information about the surface spark configuration to travel from the surface up to the emission point . Assuming these effects dominate at B0031 - 07 ’ s emission heights , we derive conservative emission height differences of \lesssim 2000 km for mode A and \lesssim 1000 km for modes B and C as seen between 185 MHz and 610 MHz . This new method of measuring emission heights is independent of others that involve average profile components or the polarisation position angle curve , and thus provides a potentially strong test of the carousel model .