By Husain Ghadially

Our drivers are the most important assets in GO-JEK. We have over 1 million registered drivers and an average driver rating of 4.91 out of 5. This rating is unusually high because of a combination of engineering ingenuity and driver effectiveness. We ❤️ our drivers.

GO-JEK’s core is about drivers — we sincerely believe in improving the lives of our drivers. This trickles down from Nadiem to the entire team. Our decision-making will always enable drivers to do better. This mission to create a social impact has helped us single-handedly move unemployment numbers in Indonesia.

GO-JEK has created new jobs to address 15% of the country’s unemployed. That’s a total of about 1 million jobs created from scratch. We’re providing an opportunity for drivers to earn a stable and higher income. In debating the quality of services for our customers and unit economics for drivers, two questions consume most of our energies:

  1. How can we help drivers earn more money directly? (resulting from...)
  2. How can drivers provide better services to our customers?
Enter driver ratings and tips.

What’s all the fuss about?

The GO-JEK app has 18+ products. Think of it as a platform to harness the power of the internet. We have cabs, scooters, massage options, payments, ticket booking, food delivery and more. Our users can grab any of our products and services by the click of a button.

Transport specific driver ratings can be categorized under 7 consumer products — RIDE, CAR, BLUEBIRD, FOOD, SEND, SHOP, MART; 4 driver apps; and 3 types of drivers. The resulting number of combinations are quite tricky to handle, considering we must get it right for each one individually.

With GO-MART, we have the unique and challenging task of separating the product rating from the driver rating. If the customer does not like the product, we shouldn’t be penalising the driver. We have similar challenges with our other products as well. Driver feedback must be granular, specific, and dissectible by product, driver type, and payment mode.

Special actions are triggered by our operations technology (ops-tech) team for orders and/or drivers with poor ratings. Each product team has its own priorities, the app is available in multiple languages (a growing list as we expand to more countries), and there are various combinations of products and services. All of this combined together under one Super App, creates a particularly heady mix.


During our last app redesign, we moved away from mandatory driver ratings to optional ones.

a. Hypothesis against mandatory driver ratings

Mandatory driver ratings prevent customers from making the next order until a rating is provided.

If customers give a random rating (usually 5 star) just to get rid of the screen and move on to the next order, the accuracy and value of driver ratings is questionable.

b. Hypothesis supporting mandatory driver ratings

If the plan is for ratings to contribute to driver incentives and allocations, we must get a driver rating for every order so the driver does not lose out during allocation prioritisation.

We could choose a mid-path, a silver bullet of sorts: For established drivers, with a stable driver rating, we continue to have an optional rating. For new drivers, or ones who have received a string of poor ratings, we can use mandatory ratings.

Taxonomy — Useful simplicity

Moving away from textual customer comments to a taxonomy of feedback has obvious benefits. We still have a textbox for comments, to help refine our taxonomy. E.g. a change to a product may impact the driver’s ability to provide a great customer experience, and we need to know if there is a new taxonomy item coming in or going out as a result.

Today, we follow a 1 to 5-star based approach to driver ratings, with a taxonomy of commonly used feedback reasons. Feedback reasons may vary by product and by star rating. For example, car cleanliness — ‘Hygiene’ may not be relevant to a bike taxi.

The thumbs up / thumbs down approach is tempting, but it is hard to get a WYSIWYG screen, where the customer knows what inputs are coming if you select a thumbs down. We are researching this. Any tips, recommendations?

The highest chance of getting a driver rating is when the order completes, ala the recency effect. When an order completes, the customer may not be in a position to provide a rating instantly. We persuade customers to provide a driver rating by reminding them every 4 hours after the order is complete.

This is a configurable duration and we will tweak this as we get more usage analytics. Yes, we sort-of nag our customers with a pop-up on the home screen. We are gathering data around how effective this is, however, given typical usage is a handful of orders a day for a customer, 4 hrs is just the right balance between reminding often enough, short of making it annoying.

Timing is everything

It’s logical to collect driver ratings after an order finishes. However, we have data indicating a significant number of customers prefer to rate before the order is complete. Take GO-CAR as an example: after a ride, the customer is probably in a hurry and is unlikely to provide a rating immediately.

If we enable customers to rate just before the ride completes — when they actually have time during the ride — we increase the surface area for getting feedback.

If we take this a step further, imagine a scenario where a customer can provide information to a prospective driver, even before being allocated to one. This is particularly relevant during peak hours. For example: If the customer is willing to commit a tip to the driver upfront, it ‘tips’ the scales in the customer’s favour, i.e., higher chances of a driver accepting the order. That’s only a thought. What do you think? Makes sense? Yes? No? Please leave a comment below.

In the next post, we’ll talk about driver tips, complexities, challenges and how we are working hard to put more money into drivers’ wallets.

If you like what you read, come work with us. We’re expanding to Southeast Asia and are looking for developers. Click on for more.