A -ary de Bruijn sequence of order is a cyclic sequence of length in which each -ary string of length appears exactly once as a substring. A shift rule for a de Bruijn sequence of order is a function that maps each length substring to the next length substring in the sequence. We present the first known shift rule for -ary de Bruijn sequences that runs in -amortized time per symbol using space. Our rule generalizes the authors’ recent shift rule for the binary case (A surprisingly simple de Bruijn sequence construction, Discrete Math. 339, 127–131).