Tom do you mean a pre-spray or a detergent to put in the tank of your machine?
Pre-sprays... yes powerburst has a good reputation, craftex champion is also praised highly by some guys but it's real high pH so you need to know you're not going to screw anything up with it. To be honest there are loads of detergent presprays, most are pretty good but they're not the be all and end all of carpet cleaning.
Have you considered detergent free options? It's not all about the ECO factor, I honestly think eco carpet cleaning is a bunch or arse, the amount of energy and non-sustainable resources we use to do our jobs make the cleaning products' impact on the environment absolutely insignificant. Chemspec DFC, Solutions microsplitters and M-Power, Nemesis from restormate, prochem do microsplitter too... they're all pretty effective.
If you do al ot of EOT stuff, it may be the same as the EOT jobs I do.... they only send you in to the minging ones :

In that case with a portable I'd always be using an in-tank detergent too. Nice and hot, it will give you great results as long as it's combined with a good old pre-spray, agitation and dwell. I've used prochem crystal green and found it pretty good, also ultimate master from alltec. The reason I like the UM is that it self-neutralises so you can clean wool with it too and not have to worry about acid rinsing or browning if you risk it. Just don't exceed the recommended strength, or in a lot of cases work at lesser strength.
The thing I like about a non-detergent prespray and a detergent rinse is it seems like the detergent rinses through and extracts much better. I used that combo for quite a while and have seen some great results but not suffered any callbacks or witnessed resoiling (I've revisited enough jobs to be certain of that)