Hi olgiepolgie, and welcome to WebmasterWorld. As the Google Forum Charter
[webmasterworld.com] explains, we generally don't allow specific search terms here, so I've taken the liberty of Using "Our Town" for the placename. I did run the search, though, and I'll describe what I saw happening, as I think it might be of general interest.
It's an odd hybrid of results, illustrating where Google is often getting it wrong in local queries (among others) as it juggles multiple considerations.
First, our town taxi
is both a generic search phrase, for all the taxi companies in Our Town, and it's also a search for a particular company, Our Town Taxi, which, as it turns out, has a wretched reputation but an SEO-friendly company name. The company does not have an active website, and the ourtowntaxi domain is on a placeholder page offering it for sale. Google doesn't return the placeholder page, even when you search in quotes. Bing will return that page if you search it in quotes.
For the [our town taxi] search, both Google and Bing are returning Local results for taxi companies in the Our Town area up at the top of the serps. Bing has Our Town Taxi as #2 in the local "place" results up at the top".
I'm making some assumptions here about how Google is sorting data... As I see it, part of Google's database would have put Our Town Taxi as #1... but
there's a step(s) in Google's ranking/indexing processes that substitutes Our Town Tailor.
Our Town Tailor, I should note, has reviews are great for him as a tailor, but not great for him as a taxi company. Our Town Taxi gets awful reviews. I'm seeing Our Town Taxi reviewed in Yelp, etc, but I'm not seeing any sort of a Place Page for Our Town Taxi, even in the Our Town Local results.
Several factors possible here. It could be that someone posted a taxi review on the tailor Place Page, and that started a series of cumulative errors... kind of like a canonicalization error that grows over time.
Also... based on observations I've made in many other searches, Google is much more likely than Bing to assume a misspelling in the query, particularly if other aspects of the query make the match statistically unlikely. Google is also very likely to skew results because of those fabled quality signals.
Conceivably, correcting these intertwined problems could be as simple as Google's needing to get some data sort criteria straight (as in adjusting the order of data table priorities)... but my guess is that it would be a huge oversimplification to put it that way.
From the small amount I know about very large data base systems, I'm assuming that Google's system, in order to scale, needs to tolerate a certain degree of error. This in fact is mentioned somewhere in the phrase-based indexing patents. I'm also conjecturing that for Google to develop algorithms that allow them to look at a larger amount of data than Bing does, their Artificial Intelligence-based system forces them to stumble before they can walk.
In part, Google counts on both user behavior and feedback to make corrections. That's also built into their system, and it has been for many years. They've now gone full blast with it.
That's the short version of my answer. ;) I'm sorry we can't post your specific example.