Far too many lawyers that hold themselves out as “criminal defense attorneys” spend their entire careers without ever cross-examining a witness in court. Since the willingness and ability to do so are your strongest bargaining chips in court, even when and especially when you are just looking for a good plea bargain as opposed to a trial, any lawyer that can not produce a testimonial transcript should be avoided. If you find a lawyer or a few that can demonstrate their courtroom abilities, the next step should be to compare prices.
With regard to pricing, you will find a wide variety of prices, along with some attorneys that charge flat fees and others that bill hourly. My strong recommendation is to hire an attorney that bills hourly. The reason is that attorneys that bill hourly are required to provide detailed time sheets that prove what they are (or are not) doing to help your case. Flat fee attorneys have a lot more leeway to mislead you regarding their efforts, if they are so inclined to do so. The bottom line is that attorneys that bill hourly have a motivation to work hard and put in the required time to achieve your desired results, whereas a flat fee attorney will be more inclined to see your case as unprofitable at some point in time. The potential downside to an attorney that bills hourly is that they might be motivated to do unnecessary tasks in order to bill you more money. However, as mentioned, they are required to provide detailed time sheets demonstrating how their time was spent. Thus, the client that is billed hourly will have the option of presenting the detailed time sheets to another attorney and/or fee arbitration board at the end of the case to determine whether or not the time spent was reasonable.