OLA Cabs is an online private taxi service. It is currently operational in over 80 cities in India. OLA was founded in December 2010 by Bhavish Aggarwal and Ankit Bhati. OLA has over 40000 cars registered and operating and it also claims to clock an average of 150000 bookings per day and controls close to 70% market share in India. It was recently valued at USD 3.5 Billion. You may read more here.

I would like to share an incident that I encountered recently using OLA Cabs.

On 10th May, 2015 I booked an OLA sedan cab from Nahar Amrit Shakti, Chandivali to Century Bazar, Prabhadevi at 11:37 PM using the OLA android mobile App. I was given an ETA of 11:49 PM for cab arrival at the pick-up point. The cab arrived few minutes early. I boarded the cab at approximately 11:49 PM and the journey commenced. The cab dropped me at 12:22 AM outside my home in Network Co-Op Housing Society, Prabhadevi.


Total Fare calculated by the OLA app displayed on the driver mobile was Rs. 468. I had Rs. 223 in my OLA wallet which automatically got deducted and the remainder of Rs. 245 was to be settled in cash. I had only Rs. 230 in cash with me at that time. I gave the driver Rs. 230 in cash and asked him if I could pay him the rest by adding Rs. 15 in my OLA wallet. He asked me to add money in the OLA wallet and call the call centre and inform them about the same and ask them to transfer the balance amount to him. At 12:22 AM OLA sent me the invoice CRN81917087 to my email. The invoice contained the breakup summary of the total bill raised. The Total Wait time displayed in the invoice baffled me. It said the Total Wait Time was 32 minutes for my trip that lasted exactly 32 minutes. The funny part is the invoice mentions that my trip commenced at 11:49 PM and the time stamp at which the invoice was generated as 12:22 AM i.e. 32 minutes from the beginning of the trip to the end of the trip. Therefore, I can conclude that the OLA wait time and distance calculation system in place is highly unreliable and inconsistent.


OLA has credited Rs. 44/- the wait time charge of the disputed transaction to my OLA money account and on my request has deducted Rs. 14/- from my OLA money account and credited it to the driver concerned. OLA support claims that the extra wait time charge on my bill was due to a temporary technical glitch without elaborating further on the cause and promised to fix it so that such experience never happens in future.


However, I feel OLA should give a detailed explanation with regards to the cause of this technical glitch in their system and how they would ensure that such experience never happens in future.

After doing some research on the internet, I came across this article on You may read it here .This article was published on May 5, 2015. In this article, the author talks about OLA replacing Wait Time charges with Ride Time Charges for Prime in Mumbai, besides, other changes OLA in their billing structure for other cities. Whereas, they had kept Wait Time Charge intact and not introduced Ride Time Charges to Mini and Sedan. Now, I had booked a Sedan so technically Ride Time Charges were not applicable for my ride. I was to be charged for only wait time beyond 10 minutes. While, my trip was in progress the OLA measuring device was calculating my ride time instead of my wait time. I did not know of it as these calculations were being made by a software that was running in the background. The template of the invoice, if you would notice would read out the charges as Wait Time which is correct however, the value reflected on the invoice which has been calculated by the software in the background is Ride Time.

To carry out smooth operations of a USD 3.5 Billion Online Taxi Aggregator, there is an automated process. There are different databases interacting with one another. The cab white swift dezire MH-03BC-2059 in which I was travelling was probably stored as a PRIME instead of a SEDAN in the database which stored readings from the measuring device. Therefore, the measuring device was recording my Ride Time all along. The number of the vehicle could be the primary key and only variable that was being used to connect device database with the database that calculates the Total Fare. In the Fare Calculation database the cab MH-03BC-2059 was probably stored correctly as SEDAN. It did the calculations correctly as applicable for a SEDAN multiply the value provided by the measuring device after deducting 10 from it by INR 2. After doing the fare calculation, the system generated the invoice and a copy was sent to my email address. I have sent OLA guys a copy of the blog so that they can read it and fix the glitch in their system, in case they haven’t already!!   😐

The fact is, OLA has complicated its billing process so much by adopting variable pricing calculation methods for different classes of cars and different cities that the entire process is prone to have so many glitches. It looks like a data entry error in one of the databases for the given vehicle. Since, OLA has no preventive measures in place to verify if the data stored in all databases concurred with each other and are correct, this billing error was bound to happen.

The cab would have done at least 10-15 trips that day. Due to this glitch, all the bills generated for this cab would have been incorrect. A rough estimate of average trip time could be 30 minutes and wait time was 10 minutes. OLA could have accumulated close to INR 40 per trip in excess from that cab alone i.e. approximately INR 400-600. Probably, it was just me who raised an issue. They refunded Rs. 44/-. OLA earned close to INR 350-500 in 1 day from just 1 cab not on merit but due to a flaw in their system. We don’t know how long this glitch had been there on their system, how many cabs were affected and in turn how many customers were charged extra. The number of customers who received a reversal of extra charge and how much money OLA pocket through this.

Mind you, this is just one possible glitch in their system that we are talking about. There would be many, I am sure. Exactly, how many? Only, OLA knows. OLA is not open to the idea of scrutiny of their buggy billing system. They are not willing to share information on how many people have received a refund and how much refund have they been paid. Even though, OLA management has full knowledge of the possibilities of many bugs in their system and how their system lacks the intelligence to prevent these bugs from causing billing errors, they have decided to pursue a very intelligent strategy to mint money using these bugs to their advantage. They refund only the extra charge on the bill to those customers who raise a claim. In a way, they are following the insurance company model, process claims of  only those customers who raise a claim after verification of course, and hold on to the remainder which adds to their profit and cash reserves. However, they have failed their customers in the process because they have no right making merry over the money that has been made through errors in their system. Also, The refund is credited to the OLA money account. Now, to redeem the refund, the customer would have to travel again with OLA. The refund received was only the extra charge which would be approximately INR 40-50 and the customer would spend at least INR 100 (base charges of OLA MINI). Therefore, an additional INR 50-60 is generated in revenue by OLA. This is probably the dirtiest trick a Taxi Service can use to make money, however, it’s a win-win for OLA.

Interestingly, OLA does not to display the meter reading of distance travelled, wait time and ride time on real-time while the ride is in progress. The customer is denied an opportunity to raise an alarm even before the invoice is generated. The device is measuring the parameters real time, then why not display it while the trip is in progress. Is it with malicious intent, OLA does not display the meter readings real time? Questions, which OLA would never answer!!

The Kaali-Peeli’s and Autos operating  in Mumbai have a more transparent process in place. They display the  Fare, distance travelled and Wait time to the customer real-time. There is no rocket science involved in being able to display the readings real-time!

This incident has created serious doubt with regards to the reliability and trustworthiness of OLA’s billing practice. Through this blog, I wish to make people aware of the possibilities of glitches in the billing system of the online taxi service. Demand more transparency in the billing system and ensure everyone (reported or unreported) who has been overcharged by OLA is refunded the extra charge. OLA has no moral right to accumulate any revenue through billing errors due to fault in their system.


Further, I would like to highlight a few things mentioned on the OLA website which I feel is truly amusing. On the homepage of, they advertise themselves by claiming that all cars have been audited for safety and customers should be confident and assured of what they are being charged for. However, under Terms and Conditions OLA makes no representation or warranty that the services would be uninterrupted, timely, secure or error-free.


OLA should refrain from advertising themselves for safety and reliable payment system if they cannot guarantee customers the same and compensate for it in case of failure. Moreover, according to the Terms and Conditions of OLA the customer must pay the taxi fare as displayed in the meter and makes no exception even if the fare being displayed is incorrect.


OLA must make public,

  • The mechanism by which it calculates the distance travelled and wait time during a trip from pickup point to drop-point.
  • List the devices that are being used to track and how frequently these devices undergo maintenance.
  • How accurate are the distance and wait time calculation and how much error is permissible in the reading from the devices and the actual.
  • OLA should incorporate a feature that would allow the customers to keep a tab over the distance being covered and wait time on real time during the course of the trip.
  • Another feature that suggests all possible routes between pick up point and drop point with traffic situation on the routes must also be incorporated.
  • OLA should have a pro-active system in place that verifies the bill before charging the customer.

In addition, an impartial and independent inquiry should be made to find how frequently did the OLA software encountered billing errors. How many customers have been refunded the extra charge? The number of billing errors that go unreported. The number of unreported billing errors that OLA has pro-actively settled by crediting the extra charge back to the customer. The amount of revenue OLA has accumulated through unreported billing errors. Identify customers who have not reported billing errors and are yet to receive a refund.

As customers are we not entitled to a minimum service guarantee of a certain quality standard from the service provider? Shouldn’t the service provider be made accountable for the services they provide and fined appropriately if they fail on their part?

Recently, OLA had come under criticism when an Engineer like me stumbled upon its unsecured Mobile App. and discovered that the API calls could be replayed to top up its wallet. OLA has fixed the glitch and issued a categorical statement in this regard. Questions have already been raised on responsible disclosure practices, especially in case of companies such as OLA that do not run a bug bounty program.

The government, courts, regulatory authorities, consumer forums and consumer rights protection N.G.O.’s should take suo moto cognizance of lapses in the present billing system of OLA and other taxi services. Pressure must be created on OLA and others to make their billing process more transparent.

For God Sake, OLA open up your system!  

I have raised a petition regarding this issue on This is the link . If you agree with my sentiments and feel that Taxi Services in India need to be more transparent and accountable then please take a few more minutes and sign it.  

*OLA CABS is yet to confirm or deny if the glitch was indeed the same as I have described it in this blog.