A hard disk drive that stores data on a disk. An overshoot duration is used to write data onto the disk. The value of the overshoot duration is a function of the data rate, which can vary for different areas of the disk. For example, the data rate can be higher at an outer diameter of the disk than at an inner disk diameter. The overshoot duration can therefore be different when writing data at the outer diameter than the duration used to write data at the inner diameter. The data rate can be determined by analyzing a preamble of the data written onto the disk.