I have performed an FFT of a wav file, plotted a graph of this, and have used peak utils to get the peaks and printed these out one after the other.
How do I go from here to getting the songs BPMs (beats per minute)?
Do I need to perform an IFFT? As I am assuming I need to get back to a time context. Or is there another way to get back to a time context?
I'm not after any code, I just want a push in the right direction of the next step.
Measure the peak to peak distance in seconds and divide 60 by that number. For instance 0.5 seconds peak to peak = 60/0.5 = 120 bpm. This will work to some extent on regular dance music but on other types will be not so good
Sorry I completely misunderstood your question.  The above is how to do it on a wave form like you'd see in audacity.
With an FFT as it is in frequency domain.   Look for peaks in the lower frequency range.  If the music is in the range of 60 to 180 bpm then this corresponds to frequencies of 1 to 3 Hz.  So look for peaks in this frequency range
To convert the frequency of the peak to bpm multiply by 60.  So 2 Hz * 60 = 120 bpm
How to get the BPM once FFT and peak detection has been performed