It's interesting to note that identifying a great SEO agency has always been a problem for many. Either in the past or present, the issues still seems to be troubling a number of small business owners who would wish to grow their brands.
To learn how you can separate the good from the bad check out at their pricing.
Good clean whitehat SEO requires some investments, so the cheaper the service the more likely it is to turn out bad.
Demand to see their track record.
Put them to the test and evaluate if you still want to work with them.
There isn't an easier way to do it. Since you stand to lose not only time, but also funds, the risk of engaging a poor SEO service will always be a reason to be concerned. Make sure you have conducted adequate research about the company you want to employ for your SEO needs. It's only by doing that you will safeguard both your time and money.
There are two points using which you can differentiate Good SEO from Bad SEO agencies.
The ones who guarantee you better ranking on Google at less cost are the ones who may use Black and Grey Hat techniques to bring your site up in rankings. Go for an SEO agency that offers its services for reasonable prices - not too less not too much.
Another factor you can look at is the track record of the SEO agency. If the agency has satisfied customers that have stuck through thick and thin with them then you can surely give the contract to these companies.
However, these two measures are subjective and you would have to spend quality time to think and take action based on them.