Hall Sensor to Find Speed

If you measure the width of a single pulse (I assume this is what you mean with measuring peaks), it will be subject to calibration as the slope (rise/fall time) of the opposing edges is likely to be somewhat unpredictable. The PulseIn() function will cancel out such errors when you calculate the time difference between two sequential pulses and so is more accurate and appropriate for RPM/frequency calculations.