Yelp, what the zip is up with your algorithm?

I love Yelp and I think their model of being a directory for the people is one of the better ones out there.  However, the other day when I was doing a local search to see how web design 60657 appeared I noticed the how inaccurate the zip code location search results are:

If you search for a business by [category] and [zip code]
Then all of the businesses in that category should show up by searched zip as a priority.

For example if I search for “Web Design” in Chicago “60657”
I would assume all of the 60657 Web Design agency’s would show up first cause i asked for a specific zip code.
So, why would the order of the search results show a 60614 before a 60657

The [coffee] in [60657] search is even worse. Now I understand that the businesses are not far away from each other, I just don’t understand why I would get 60613 if I asked for 60657 and if yelp wants to share a 60613 that isn’t even a sponsored result, I would at least guess it would or should come after all the coffee shops in 60657.

Even hot dogs =)

Compare to google “web design 60657” all of google’s are 60657 proper.

So what’s the deal Yelp? I love what you guys do and my businesses greatly benefit from your services but your search engine results just don’t make any sense.