A new class of constrained systems: average runlength constraints (ARC) are defined. These systems are defined by requiring that the sum of n consecutive runlengths be bounded above by a linear function of n. in particular, the running average runlength of every sequence in the system is bounded above by a constant. a general result is given on the capacity of ARC systems. The state splitting algorithm is then improved for variable-length graphs. This is then applied to obtain high, fixed-rate codes from the free binary source to ARC systems. As an example, a rate 1/2, (d, k) = (2,7) code is constructed that has a smaller average runlength than the industry standard (2,7) code. © 1991 IEEE.