I bought and tried CommTek but had less than stellar results. I probably could have put more effort into it to see if it would be more accurate but I got lazy, so it may actually work just fine.
I had great success with Adobe Audition however. I usually recorded a fire channel for a few days using ScannerRecorder and then played the .wav files with Audition. Between using the scope to visually find the tone-out sequences ant then using the freq finder to find the actual tones it was pretty easy after a few times.
Pretty soon I could "see" the wave patterns and tell if it was one I already had decoded. For instance, on 154.430 in my area there are 8 departments, using about 12 sets of tones on a regular basis. After 3 or 4 days I had collected about 4 hours of recording time, and I could even tell what dispatch center was sending out tones by the unique wave forms displayed on the scope view. Things like delay time between tones, amplitude of he wave form and various spikes in the visual representation allowed me to skip thru repeated tone sets, looking for unfamiliar ones to spend time decoding.
I found that Audition was usually accurate within about 2 Hz. below 1000 Hz. and about 4 above 2000 Hz. I used the Motorola Standard Tones chart to figure out the most likely actual tones. For example, if Audition showed 1081 / 702 I can guess that the exact tones were probably 1082.0 and 701.0, the nearest normally used tones. I have also found that using the tone results provided by Audition will work even if they are off a couple Hz., there is tolerances that the scanners and receivers allow.