New York mayor Bill de Blasio is in hot water today over his proposed regulation of Uber and other taxi apps. The main bone of contention is that he wants New York City to pre-approve every update to the app. (This despite giving a speech only nine days ago where he bemoaned “bureaucratic roadblocks” in the technology industry.) De Blasio also has some more reasonable requests, like wanting to be able to treat Uber as a single entity for the purposes of regulation — right now, Uber operates as a number of legally separate companies in New York, with names like Weiter, Hinter, Unter, and Schmecken.

But it’s one of de Blasio’s more mundane-sounding proposals — that Uber be more transparent about how much a given trip will cost, with rates that are “prominently posted” inside the app — that may pose the biggest problem. Because, as it turns out, Uber’s pricing structure is an opaque, highly variable mess.

This was brought home to me last week, when I was on vacation in Istanbul. One of the standard tourist rites in Istanbul is getting stuck in traffic, and that certainly happened to me one evening when Uber estimated that it would take about 20 minutes to drive the 4.4 miles to a restaurant. In the end, thanks to an unexpected music festival, it took 58 minutes. (I love the detail in Uber receipts.) Having learned our lesson, for the return journey we asked the Uber driver to take the long way around and avoid the traffic. It worked: the 7.8 mile trip back to the hotel took only 27 minutes.

But then I noticed something weird. The hour-long trip out cost us 46 lira, or $17.47, while the half-hour trip back cost 48 lira, or $18.23. In Istanbul, it seems, Uber charges much more for distance travelled than it does for time taken.

So, like the geek I am, I started putting a spreadsheet together from the fare data on Uber’s website.

Uber fares are not simple things. Indeed, they have no fewer than six constituent parts: the city you’re in; the type of car you’re in; the base fare; the amount per minute; the amount per mile; and any surge multiplier that might be in effect. And it turns out that the way those parts combine to form the total fare is far from consistent, from city to city.

In Istanbul, for instance, the marginal cost of driving one mile in an Uber XL (about $1.56, at present exchange rates) is about 11.5 times greater than the $0.13 cost of sitting in traffic for one minute. Call that the “minutes per mile” ratio. (For the basic-level Uber trip, the ratio is 7.2 minutes per mile, but there wasn’t much availability of those.) In most cities, drivers tend to have to drive for about 6 minutes to get the same extra money as driving a mile, but there are some crazy outliers.

Consider Uber Black in Moscow. The time charge is $0.40 per minute, the same as an uberX in New York. But the Moscow car will cost you only $0.33 per mile, compared to $2.15 per mile for the New York car.

Meanwhile, at the other end of the spectrum, an Uber driver in Lagos needs to drive a passenger for 16 minutes to get the same amount of money he’d get by driving the same passenger a single extra mile.

Here’s a chart showing a few of Uber’s cities. The cities at the top of the list are the ones where drivers’ time doesn’t seem to matter, compared to miles driven (Lagos, Bangalore, Amsterdam); at the bottom, the number of miles doesn’t seem to matter, compared to the amount of time the journey takes (Moscow, Mexico City, Guangzhou, Detroit). It’s hard to see anything that the cities at the top of the list have in common, compared to the cities at the bottom of the list.

Finally, there’s a city that isn’t on the chart at all. Berlin has a base fare of zero, no minimum fare, no cancellation fee, and no charge at all for time: the only thing that gets charged is a rate of about $0.64 per mile. Uber seems to be literally giving its Berlin drivers’ time away for nothing: if you were to sit in traffic for an hour and only go one mile, you would pay less than a dollar.

The chart also shows the absolute amount of money that a driver makes per minute, in terms of dollars per hour. The highest hourly rates I found were for Uber Black in New York and San Francisco, which both charge $0.65 per minute, which works out at $39 per hour. The lowest hourly rate, aside from Berlin’s zero, was Bangalore, which charges 8 Indian rupees per kilometer, or about $0.94 per hour.

In terms of dollars per mile, the range was also huge: $0.20 in Bangalore, $0.26 in Moscow, $0.39 in Beijing — all the way up to $4.14 in Tokyo.

All of these fares are, presumably, optimized to maximize some kind of combination of growth and income for Uber. Uber is a two-sided market: it needs to encourage as many drivers as possible to sign up for its service, while also encouraging as many passengers as possible to use it on any given day.

But either Uber has no idea what the best fare structure is for doing that, or else it has realized that the optimum fare structure can and should vary wildly from city to city. Not just in terms of how much to charge per fare — you’d expect prices in expensive cities to be much more than prices in cheap cities — but also in terms of the relative weight between charging per minute and charging per mile.

Fare-setting is an incredibly important and difficult thing for Uber to optimize, given the number of dependent and independent variables it has to juggle, including the sensitivity of surge pricing to demand, and the effect of pricing changes on the types of trip that are taken. (My intuition would be that reducing fares tends to decrease the average distance traveled.)

So what’s Uber playing at, here? Why is there such a huge difference in emphasis between minutes and miles, depending on what city you’re in?

Uber wouldn’t talk to me, for this article. But one possibility might be the relative ease of financing, for drivers. Hours, to a person, are like miles to a car: they’re how you measure usage. An Uber trip is a combination package: a car and a driver. If it takes a lot of labor to earn a car — if the cost of cars is high, relative to prevailing wages — then that might explain situations like the one I’ve found in Istanbul, where it takes more than 11 minutes in traffic to rack up the same fare as a single mile traveled. And I daresay that cars are indeed expensive things, in Istanbul. But look at the other end of the spectrum: 2.8 minutes per mile in Mexico City, 0.8 minutes per mile in Moscow. Those aren’t cities where new cars are particularly cheap. And these things aren’t a function of how heavy traffic is, either: I can assure you that Istanbul is just as congested as Moscow.

Another possibility would be that Uber rates are anchored by local taxi fares: Uber sets its rates to be slightly higher or slightly lower than whatever taxis charge, and so its fares are likely to work in a similar way to that city’s taxi metering. But that doesn’t seem to be the case either: Beijing and Guangzhou, for instance, have almost identical taxi-metering systems, but Uber is about 9 minutes per mile in Beijing, compared to around 5 minutes per mile in Guangzhou.

There probably isn’t one simple explanation for these differences. Prevailing custom surely plays a part, as do things like liquidity — the proportion of any given hour that a driver is likely to be on the clock. But I do expect that while humans are ultimately in charge, a lot of the detailed pricing decisions are made by an algorithm — and that algorithm, it seems, can vary quite wildly in its outputs.

Way back in 1999, Jim Surowiecki proposed that New York taxi fares be deregulated. I thought that was a terrible idea, since you’d never know, when hailing a cab, how much it was going to cost you. But now, with Uber, we’ve actually come quite close to Surowiecki’s utopia.

Cabs have effectively become deregulated, and the supply of cars for hire has certainly risen enormously as a result. What’s more, the prices have indeed become highly variable, to the point at which entire companies like SherpaShare have sprung up to help drivers navigate their idiosyncracies. (For instance, some people in LA drive all the way to San Francisco at the weekend to work as Uber drivers there, since Uber income in SF is significantly greater than it is in LA.)

Which is something to remember, as Uber consolidates its position as a global brand. The way you order and pay for an Uber is pretty much the same whatever city you’re in, anywhere in the world. But the amount that you pay, and the breakdown of the various different components, might well be quite surprising.

One of the ways that Uber makes its money is through information asymmetry: it has enormous amounts of data, but it shares that information very sparingly, and generally keeps both passengers and drivers rather confused about how much money any given ride is likely to cost. As Ryder Pearce, the co-founder of SherpaShare, says, “Uber changes rates every once in a while, and drivers don’t keep up with the rates. Most couldn’t tell you what their current rate per minute or per mile is.” And if the drivers don’t know what’s going on in terms of fares, the passengers certainly don’t.

So maybe the point of all this fare variation actually has nothing to do with real differences between cities. Perhaps Uber wants to keep both passengers and drivers in the dark. So that it can remain squarely in the driver’s seat itself.